为了防止程序发布后被一些“坏人”破解,开发者通常会对自己的代码进行混淆。这篇博客将介绍一款使用很广,并且混淆效果也不错的工具。
新建一个C# 控制台程序,HelloWorldApp
using System;namespace HelloWorldApp{ class Program { static void Main(string[] args) { Console.WriteLine(HelloWorld()); } public static string HelloWorld() { return "Hello World!"; } }}
目前有很多.NET的反编译工具,例如,.下面使用ILSpy对HelloWorldApp.exe进行反编译。
OK.很轻松就把代码进行了反编译。下面介绍如何使用ConfuserEx来对HelloWorldApp进行代码混淆。
将需要混淆的DLLs或者Exe拖拽到Drag input modules区域。
注意:这里需要额外说明一下,当前HelloWorldApp.exe程序是没有签名的。如果我们对DLLs或者Exe签过名,这里需要额外的将签名文件添加进来。请看下面的截图。
选择对HelloWorldApp.exe签名的那个Key文件路径,输入key对应的密码。
选择Global Setting或者单个选择exe或者dll,点击右侧“+”。
最后一步,点击Protect,
现在再使用ILSpy对代码进行反编译,结果如下,
现在使用ILSpy对其反编译,看不到源代码了。同时我也测试了JustDecompile,也是无法看到源代码的。
感谢您的阅读。