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