程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> .NET網頁編程 >> C# >> C#基礎知識 >> 推薦一個C#代碼混淆器 .NET Reactor

推薦一個C#代碼混淆器 .NET Reactor

編輯:C#基礎知識
C#的代碼辛苦寫出來之後,一個反射工具,就可以完全顯露出來。

當然,在做項目時,這個功能還不錯。因為我就曾在一個項目上使用C#,沒有進行任何混淆。結果在項目二年多之後,需要做一些調整,自己保存的源代碼丟失了。當時也嚇了一跳,可是想到反射工具,趕快拿出來用一下。雖然在反射出來會出現一些錯誤,但畢竟大部分代碼也都弄出來了。

這是在項目上,還有好處的,可是,試想一個產品,被別人給反射了,會是怎麼樣的一個情況,不說他去照搬功能,就是注冊、加密那部分都會被輕易拿到。這可不是什麼一個好主意。

於是,必須要使用代碼混淆器。

C#的代碼混淆器有很多了,比如Dotfuscator、xeoncode、foxit等等。

這些混淆器大多是需要注意的,使用效果各不相同。普通的代碼混淆器只是把私有字段和變量轉換成隨機碼,如果是小程序,還可以猜一猜,如果是比較大的程序,猜起來可就不會那容易了。高級一點的是混淆成不可閱讀的字符,這樣的混淆後的代碼干脆就比機器碼還難懂,基本上是翻譯不出來了。

但這些代碼混淆器都有一定的風險,即混淆後的代碼實然無法正常調用了。

而我一直用.NET Reactor,這個非常小巧,免安裝,而且不需要注冊。他只是將代碼換成隨機碼,但是混淆後的代碼都能正常使用。

但是有一點需要注意:凡是需要序列化成二進制的代碼,是不能用混淆器的。混淆後的代碼將不能正常序列化!

共享一下這個混淆器:

http://files.cnblogs.com/ghost79/DotNETReactor.rar
  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved