一、為什么要加密Dotnet源代碼
Dotnet是一種建立在虛擬機(jī)上執(zhí)行的語言,它直接生成 MSIL 的中間語言,再由DotNet編譯器 JIT 解釋映象為本機(jī)代碼并交付CPU執(zhí)行。它和Java是一種機(jī)制的語言。這種語言的優(yōu)點(diǎn)就是您不需要去考慮您的程序在那里運(yùn)行,您只需要把功能做出來,虛擬機(jī)會(huì)在任何地方實(shí)現(xiàn)您的功能。這是一個(gè)很好的趨勢(shì)和想法,但虛擬機(jī)的中間語言由于帶了大量的“元數(shù)據(jù)”信息,所以也極容易被反編譯。
源代碼被反編譯后,有許多可怕之處。如:源代碼泄漏,被競(jìng)爭對(duì)手拿去和你競(jìng)爭;還有知識(shí)產(chǎn)權(quán)的問題等等。
二、Dotnet源代碼的加密工具有哪些
Dotnet源代碼保護(hù)方案和加密工具有很多,第三方保護(hù)工具較好的廠商有:
1. Aiasted.SOFT
a) 產(chǎn)品 :MaxtoCode ,種類 :加密、混淆
2. PerEmptive Solutions
a) 產(chǎn)品 :Dotfuscator Community ,種類 :混淆
3. Remotesoft
a) 產(chǎn)品 :Remotesoft Protect ,種類 :加密
b) 產(chǎn)品 :Remotesoft Dotfuscator ,種類 :混淆
4. XenoCode
a) 產(chǎn)品 :XenoCode ,種類:混淆
這里我介紹的是MaxtoCode,因?yàn)樗悄壳皹I(yè)界人為最好的Dotnet加密工具。
三、MaxtoCode下載
如果你還沒有MaxtoCode,那請(qǐng)先下載,版本MaxtoCode企業(yè)版3.03。
四、用MaxtoCode加密Dotnet源代碼的使用方法
1、打開MaxtoCode
2、選擇保存目錄,把所有選項(xiàng)都勾選上,然后點(diǎn)擊“添加”,選擇需要加密的dll
3、點(diǎn)擊“執(zhí)行加密”
4、這時(shí)會(huì)看到保存目錄上生成了兩個(gè)文件:加密后的dll、MRuntime2.dll。把這兩個(gè)文件拷貝到程序bin目錄下覆蓋編譯之前的文件,立即可以使用了。注意:MRuntime2.dll是不用引用到項(xiàng)目里的,拷貝到bin下即可。
五、檢查加密結(jié)果
1、看看加密前的字符串
2、用反編譯工具reflector進(jìn)行反編譯加密后的代碼,還沒有reflector?點(diǎn)擊下載。
可以看到,反編譯后看不出原來的代碼了。