使用Dotfuscator混淆保护应用程序 - zLulus/My_Note GitHub Wiki

Dotfuscator简介

Dotfuscator的适用范围是.net应用,包括桌面程序,Xamarin等
Dotfuscator Community 中包含的 .NET 模糊处理和其他应用程序保护功能的示例有:
重命名 标识符,增加对已编译程序集实施反向工程的难度。
防篡改 :检测已遭篡改的应用程序的执行,并终止或响应已遭篡改的会话。
防调试 :检测向正在运行的应用程序附加的调试器,并终止或响应已遭调试的会话。
防取得 root 权限的设备 :检测应用程序是否在取得 root 权限的 Android 设备上运行,并终止或响应这些设备上的会话。
应用程序到期行为 :对生命周期结束日期进行编码,并终止已到期的应用程序会话。

官方资料

Dotfuscator官方资料

安装Dotfuscator

在VS 2019 Installer里面,在右侧.net桌面中可以找到PreEmptive Protection - Dotfuscator,安装
打开VS 2019,在菜单栏Tool中找到PreEmptive Protection - Dotfuscator Community
完成注册流程
1
2

混淆

Getting Started
Xamarin相关
按照官方步骤操作即可,简述如下
1.项目添加PreEmptive.Dotfuscator.Xamarin.targets文件 保证Dotfuscator-Xamarin集成已包含在项目中 2.卸载项目,编辑.csproj文件 创建/找到没有条件属性 设置Dotfuscator具体配置的文件

<DotfuscatorXamarinConfigFileName>DotfuscatorConfig.xml</DotfuscatorXamarinConfigFileName>

设置Dotfuscator CLI的路径,即dotfuscator.exe路径 VS2019是C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\Common7\IDE\Extensions\PreEmptiveSolutions\DotfuscatorCE\dotfuscator.exe

<DotfuscatorXamarinCliPath>Dotfuscator CLI Path</DotfuscatorXamarinCliPath>

设置自动生成配置文件

<DotfuscatorXamarinGenerateNewConfigFile>true</DotfuscatorXamarinGenerateNewConfigFile>

仅在Release模式下启动Dotfuscator

<DotfuscatorXamarinEnabled Condition="'$(Configuration)' == 'Release'">true</DotfuscatorXamarinEnabled>

3.在使用Dotfuscator软件生成&编辑DotfuscatorConfig.xml
具体设置:
Dotfuscator 使用图解教程
4.在项目根目录添加DotfuscatorConfig.xml的引用
5.正常发布apk即可

反编译查看

反编译apk包

相关资料

C#使用Xamarin开发可移植移动应用进阶篇(9.混淆代码,防止反编译)