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

前言

系列目录

C#使用Xamarin开发可移植移动应用目录html

源码地址:https://github.com/l2999019/DemoAppgit

能够Star一下,随意 - -github

说点什么..

今天讲讲如何混淆咱们的C#代码,来达到反编译的目的工具

今天的学习内容?

使用Dotfuscator来混淆C#代码,防止反编译.post

 

 

 

正文

 

嗯,既然是客户端应用,天然而然就须要一些防止源码泄漏的手段.经过C#编写的APP,彻底是能够直接解压APK,而后获得里面的DLL而后进行反编译的..学习

以下图:ui

嗯..这样就会形成代码泄漏..spa

下面就介绍一下,如何使用VS自带的Dotfuscator来进行混淆代码.

1.安装Dotfuscator

打开VS2017的安装工具,以下,点击修改按钮.debug

选择单个组件,以下:3d

在代码工具中找到Dotfuscator并添加.(注意:这里咱们安装的是社区版,功能有限,若是须要更深度的混淆,请购买专业版..)

这样,咱们的安装就完成了.

 

2.将Dotfuscator与Xamarin项目集成(重点)

   2.1下载Dotfuscator-Xamarin MSBuild目标文件

     这个文件是用来生成的,直接下载就行,地址:下载

    而后复制到项目路径下.

   

  2.2保护咱们的安卓项目.

     首先,咱们要先卸载安卓项目,如图:

    

 

   而后编辑csproj文件.如图:

 

 

 咱们在PropertyGroup标签里,添加Dotfuscator的相关配置.

<DotfuscatorXamarinCliPath>(这里是你dotfuscator的安装位置)C:\VS2017\Common7\IDE\Extensions\PreEmptiveSolutions\DotfuscatorCE\dotfuscator.exe</DotfuscatorXamarinCliPath>
<DotfuscatorXamarinConfigFileName>DotfuscatorConfig.xml</DotfuscatorXamarinConfigFileName>
<DotfuscatorXamarinGenerateNewConfigFile>true</DotfuscatorXamarinGenerateNewConfigFile>

 第一个是你的Dotfuscator的安装位置,自行选择

 

 

  而后在咱们文件的最下面,导入刚刚下载的生成文件.以下图:

 

设置生成选项,咱们找到以下代码:

这里面的配置就是用来设置生成选项的,你能够任意选择是debug仍是Relase.

这里,咱们固然设置Relase,只有发布的时候才保护嘛 ..调试的时候保护有啥用 - - .

咱们在这个标签下,添加代码以下:

<DotfuscatorXamarinEnabled>true</DotfuscatorXamarinEnabled>

 

 

2.2生成项目,并设置混淆内容.

修改完成后,咱们将项目从新加载进去.

而后存档发布.

若是一切正常的话,会弹出以下界面:

 

由于我这里用的是免费的社区版,因此功能有限,

咱们直接点击生成,完成后关闭这个界面.(很重要,不关闭..就一直卡在生成那里..)

这样,咱们就完成了整个C#代码的混淆工做.

 

 

3.反编译混淆后的Dll

如图所示,由于社区版的功能较少,因此只能混淆一些变量名..其实混淆的程度有限.

 

 

专业版提供了更多的选择..嗯..他能够直接混淆整个控制流程 以下效果:

 

 

 

写在最后

今天的内容就这些了.其实这个混淆方案对于其余的C#项目也是适用的.嗯..你们能够随意试试.

相关文章
相关标签/搜索