程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> .NET網頁編程 >> C# >> C#入門知識 >> 小試.NET代碼保護軟件(代碼混淆、加密),小試.net

小試.NET代碼保護軟件(代碼混淆、加密),小試.net

編輯:C#入門知識

小試.NET代碼保護軟件(代碼混淆、加密),小試.net


有著微軟人性化的開發工具VISUAL STUDIO和MSDN詳盡的幫助,.NET 的開發效率的確高。

但是由於.NET同JAVA一樣都采用中間語言、虛擬機/SDK等諸多特質,而且高等語言的類庫編碼規范,MSIL微軟中間語言可讀性很高,所以代碼很容易就能被反編譯,或許這是一種“另類的開源”。

到目前為止.NET開發的桌面軟件或者說共享軟件真的很少,大多都是一些管理系統、ERP、等一些數據庫軟件,這些軟件一般結構復雜,采用了架構或者平台等一些機制,而且一個功能都可以寫N多個類,即使被反編譯了別人也要花很多時間去研究,而對小型的桌面軟件來說反編譯簡直是太恐怖了,所以別人寧願用VB6去寫一個共享軟件也不會用.NET。

在這個情況下出現了一些代碼保護工具,我小小的研究了一下。
1.   Dotfuscator Community Edition    //VS2005自帶試用版,混淆器
只使用VS2005自帶的試用版,基本就是把程序類、方法、變量等名稱混淆了,個別混淆得不好的還是可以看得懂代碼方法內容,而且很多程序不能混淆,我一個程序“資源”裡面有連接字符就不能混淆。
2.   XeonCode                         //反編譯器、混淆器、打包脫離.NET發行包運行
XeonCode Fox可以反編譯exe、dll查看代碼,
XeonCode Studio可以混淆並發布文件,混淆的效果比Dotfuscator好,可以加入花代碼,也可以打包成native代碼,這樣根本反編譯不了了。
XeonCode Postbuild可以混淆加密、優化,打包文件,打包文件可以給.NET發行包打一個小包,(可以選擇打成一個文件還是多個文件)可以脫離.NET發行包運行程序!(這個功能比較酷)
3.   MaxtoCode                        //加密、混淆
這個東西是國人的產品,好像是武漢的,據說很強可以加密代碼,反編譯後看見代碼裡面的程序都是空,也可以混淆代碼。(給他們發了試用郵件,沒發給我試用版,我沒使用。)

以上的代碼保護軟件均要收費的,想要保護代碼、保護知識產權的朋友可以購買正式版,國外的比較貴,國內的好一點,實在沒錢可以自己考慮自己做個簡單名稱的混淆、加密,或者增加代碼的復雜程度也可以起到一定的保護。


net軟件加密,加密鎖哪種比較好,混淆代碼可以實現?

普通的代碼混淆器只是把私有字段和變量轉換成隨機碼,如果是小程序,還可以猜一猜,如果是比較大的程序,猜起來可就不會那容易了。高級一點的是混淆成不可閱讀的字符,這樣的混淆後的代碼干脆就比機器碼還難懂,基本上是翻譯不出來了。
但這些代碼混淆器都有一定的風險,即混淆後的代碼實然無法正常調用了。
推薦:.NET Reactor
 

問一個net軟件加密的問題,加密鎖哪一種好,可以實現混淆代碼?

自我認為,加密鎖的好壞注意從兩個方面看,第一肯定就是加密強度,加密安全性。第二是加密鎖的易用性。加密安全性即使非常高使用起來很麻煩的加密產品肯定也不能算是個好產品。
現在的加密鎖都可以實現代碼混淆 加密的。
 

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved