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:WindowsMicrosoft.NETFrameworkv4.0.30319ilasm.exe

    ILDASM_v4.0.30319

    C:Program FilesMicrosoft SDKsWindowsv8.0AinNETFX 4.0 Toolsildasm.exe

    Dotfuscator代码混淆工具的使用
原文地址:https://www.cnblogs.com/waw/p/8093317.html