最近,公司完成了一个开发项目,但由于软件里边有服务器信息和一些算法,所以想把这些核心代码用dll封装,然后对dll进行混淆处理,之前用过的是Reactor、Dotfuscator ,无意中,一哥们推荐ILProtector,而且是免费的,所以就试试,非常简单的操作。
ILProtector由vgrsoft.com开发和维护,专注于保护.Net代码,而且更新也比较及时,ILProtector初版本为免费版本,后期新版本为付费版本,但是,免费版本也是可以继续使用的。详情 请点这里
ILProtector的主要特点:
-
软件代码保护
-
字符串加密
-
完整性检查
-
支持 .NET Framework 2.0, 3.0, 3.5, 4, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8
-
支持Windows x32/x64桌面应用程序
首先,去官网下载 ILProtector 工具(官网下载),简要安装后,进入ILProtector 主界面。
拖拽 或者 点击(红框中按钮),选择要混淆的DLL或EXE, 选择一个输出路径:
如果你要嵌入保护DLL到你的软件,点击“属性”图标,进入设置界面:
如上图 勾选 Embed protect DLLs into assemblies,并勾选你的所有DLL,点击“save"。
然后点击”Process“,如下图所示即可:
输出目录中,会多出两个文件:
同时拷贝到你的软件目录下即可。
为了验证混淆加壳的效果,使用了.NET Reflector 来做反编译处理,处理效果如下,基本看不到什么关键信息了:
据说,ILProtector 还可以通过VS 命令行来执行编译时,直接混淆加密,但是我确实没有玩过。
最后,重要的事情说三遍:
好用,好用,好用
下载地址:ILProtector最新下载