[Tool]使用ConfuserEx混淆代码

时间:2021-03-21 19:52:42

为了防止程序发布后被一些“坏人”破解,开发者通常会对自己的代码进行混淆。这篇博客将介绍一款使用很广,并且混淆效果也不错的工具ConfuserEx

新建一个C# 控制台程序,HelloWorldApp

using System;

namespace HelloWorldApp
{
class Program
{
static void Main(string[] args)
{
Console.WriteLine(HelloWorld());
} public static string HelloWorld()
{
return "Hello World!";
}
}
}

目前有很多.NET的反编译工具,例如ILSpyJustDecompile.下面使用ILSpy对HelloWorldApp.exe进行反编译。

[Tool]使用ConfuserEx混淆代码

OK.很轻松就把代码进行了反编译。下面介绍如何使用ConfuserEx来对HelloWorldApp进行代码混淆。

[Tool]使用ConfuserEx混淆代码

将需要混淆的DLLs或者Exe拖拽到Drag input modules区域。

[Tool]使用ConfuserEx混淆代码

注意:这里需要额外说明一下,当前HelloWorldApp.exe程序是没有签名的。如果我们对DLLs或者Exe签过名,这里需要额外的将签名文件添加进来。请看下面的截图。

[Tool]使用ConfuserEx混淆代码

[Tool]使用ConfuserEx混淆代码

选择对HelloWorldApp.exe签名的那个Key文件路径,输入key对应的密码。

[Tool]使用ConfuserEx混淆代码

选择Global Setting或者单个选择exe或者dll,点击右侧“+”。

[Tool]使用ConfuserEx混淆代码

[Tool]使用ConfuserEx混淆代码

[Tool]使用ConfuserEx混淆代码

最后一步,点击Protect,

[Tool]使用ConfuserEx混淆代码

现在再使用ILSpy对代码进行反编译,结果如下,

[Tool]使用ConfuserEx混淆代码

现在使用ILSpy对其反编译,看不到源代码了。同时我也测试了JustDecompile,也是无法看到源代码的。

感谢您的阅读。