第40篇 ConfuserEx混淆代码,防止反编译
要想自己的dll或程序禁止被反编译成功,可以使用ConfuserEx混淆代码
1.正常反编译
1.1 创建一个demo控制台
新建Test类,写个fun
1.2 正常编译看的效果
目前有很多.NET的反编译工具,例如ILSpy,JustDecompile,dnSpy.下面使用dnSpy对ConsoleApp进行反编译。
2.混淆编译dll流程
使用ConfuserEx工具编译dll,可以通过https://github.com/yck1509/ConfuserEx/releases获取编译程序
2.1 获取ConfuserEx工具,启动程序
启动程序如下
将需要混淆的DLLs或者Exe拖拽到Drag input modules区域。
注意:这里需要额外说明一下,当前ConsoleApp.exe程序是没有签名的。如果我们对DLLs或者Exe签过名,这里需要额外的将签名文件添加进来。请看下面的截图
选择对ConsoleApp.exe签名的那个Key文件路径,输入key对应的密码。
选择Global Setting或者单个选择exe或者dll,点击右侧“+”。
最后一步,点击Protect!
混淆dll或exe成功后会有一个Confused文件夹,里面就是混淆后的dll
反编译结果如下:
反编译后是看不到,对应的类Test和方法Fun(),说明dll已经混淆成功了