Dotfuscator代码混淆工具的使用

关于Dotfuscator,VS自带了一个社区版的源代码保护工具,不过它只有基本的混淆命名的功能。专业版功能很多,可以混淆流程,密字符串,加入水印,程序签名等。

工具/原料

 
  • Dotfuscator Professional Edition 4.9

方法/步骤

 
  1.  

    登录之后的界面

    Dotfuscator代码混淆工具的使用
  2.  

    INPUT 选项里选择你需要混淆加密的 DLL、EXE文件

    Dotfuscator代码混淆工具的使用
  3.  

    把 Disable String Encryption 设为 NO,即启用字符串加密;检查 Disable Control flow、Dsiable Renaming 也为 NO,即保证控制流和混淆功能打开,其他默认

    Dotfuscator代码混淆工具的使用
  4.  

    Rename 选项勾选“use enhanced overload induction”(使用增强模式),注意:不要勾选下方的“ Do not suppress on serializable types”,即序列化类型的变量不加密,否则编译后可能异常; “Renaming Scheme” 选择“Unprintable”(不可打印字符,即乱码),也可以选择其他如小写字母、大写字符、数字的方式

    Dotfuscator代码混淆工具的使用
  5.  

    String Encryption 选项 include里勾选需要字符串加密的工程文件EXE、DLL等,点击Build,之后就可以啦:

    Dotfuscator代码混淆工具的使用
  6.  

    在混淆的时候报错了,错误描述大致如下:

    Could not find a compatible version of ildasm to run on assembly C:\xxx.dll This assembly was originally built with .NET Framework v4.0.30319

    要混淆不同的.Net Framework版本需要在Settings,Project Properties,添加配置如下。

    其中ILASM和ILDASM后面必需要加上对应版本的版本号,然后文件引用对应的版本文件即可。

    ILASM_v4.0.30319

    C:\Windows\Microsoft.NET\Framework\v4.0.30319\ilasm.exe

    ILDASM_v4.0.30319

    C:\Program Files\Microsoft SDKs\Windows\v8.0A\bin\NETFX 4.0 Tools\ildasm.exe

    Dotfuscator代码混淆工具的使用
上一篇:Jsoup解析获取品花社图片


下一篇:bzoj 1012: [JSOI2008]最大数maxnumber (线段树)