记一次Eazfuscator.NET 2023.2加密使用学习尝试

  • 记一次Eazfuscator.NET 2023.2加密使用学习尝试已关闭评论
  • 265 次浏览
  • A+
所属分类:.NET技术
摘要

Eazfuscator.NET 是用于.NET平台的工业级混淆器。 Eazfuscator.NET 提供的混淆保护了软件中根深蒂固的知识产权,提高了商业盈利能力,并保持了竞争优势。


很多人看到这个Eazfuscator.NET还不知是什么东东。。。

首先介绍下

什么是 Eazfuscator.NET?

Eazfuscator.NET 是用于.NET平台的工业级混淆器

Eazfuscator.NET 提供的混淆保护了软件中根深蒂固的知识产权,提高了商业盈利能力,并保持了竞争优势。

为什么好?

Eazfuscator.NET 很简单,就像 1-2-3 一样:

  1. 它可以保护您的代码,而不会破坏它 - 即使在最复杂的情况下 - 我们已经处理了它。 你可以把 Eazfuscator.NET 看作是一个很好的合作伙伴,他会帮你很多忙,但仍然不会因为他的任何问题而打扰你。 如果你有一些非常特殊的保护要求,注意 我们的代码虚拟化功能
  2. 它真的很容易使用:一旦用 Eazfuscator.NET 保护你的Visual Studio项目,然后忘记它。 每次在发布配置中生成项目时,程序集都会自动进行模糊处理 - 您可以将代码发布到荒野中。
  3. 需要更改一些设置?是否确定?然后,做你喜欢的事情:编辑你的代码。Eazfuscator.NET 完全可配置使用 .NET 模糊处理属性 — 与使用外观陌生且不稳定的配置文件和 UI 向导相反。 您需要了解的所有信息都在我们完整的产品文档中。

混淆是什么样的?

记一次Eazfuscator.NET 2023.2加密使用学习尝试

下面开始正文,来体验下Eazfuscator.NET最新版的强大功能

1、新创建winform.Eazfuscator.NET项目

记一次Eazfuscator.NET 2023.2加密使用学习尝试

 框架我们选择.net framework 当然选择.netcore也可以的啦,最新版Eazfuscator.NET 2023.2 版本已经初步适配.net8

2023年4月30日更新

    • 初步支持.NET 8.0
    • 支持JetBrains Rider 2023.1
    • 现在可以在类型/方法级别上控制代码控制流混淆
    • 添加了一个配置设置,可以降低混淆过程的优先级
    • Eazfuscator.NET现在在ARM64机器上原生运行,无需触发x86模拟(适用于Windows 11+ ARM64、.NET Framework 4.8.1+)
    • 更改的系统要求:Windows 8.1+,Windows Server 2012 R2+
    • 改进了对.NET 7.0的支持
    • 改进了程序集合并
    • 改进了程序集嵌入
    • 改进了NuGet集成
    • 改进了元数据删除
    • 改进了对各种序列化方案的支持
    • 改进了文档
    • 修复了可能导致"无法检索到XXX的自定义属性容器"错误的问题
    • 修复了在混淆Unity项目时可能导致"找不到方法"错误的问题
    • 修复了在运行混淆应用程序时可能导致"给定的程序集名称或代码库无效"错误的问题
    • 修复了在混淆过程中可能导致"路径中有非法字符"错误的问题
    • 修复了引用"GitVersion.MsBuild"包的项目在混淆过程中可能导致"依赖关系推断失败"错误的问题
    • 修复了在编译过程中可能导致"标识符不符合CLS规范"的SGEN错误的问题
    • 修复了在混淆时使用代码内联指令处理属性访问器时可能导致"属性具有属于另一个类型的相关方法"错误的问题
    • 修复了在特定情况下合并程序集时可能导致"给定的键在字典中不存在"错误的问题

 2、打开项目工程文件夹,找到csproj VS项目文件.

记一次Eazfuscator.NET 2023.2加密使用学习尝试

 3、打开加密软件,并将此工程文件拖进去

记一次Eazfuscator.NET 2023.2加密使用学习尝试记一次Eazfuscator.NET 2023.2加密使用学习尝试

现在我们查看它到底对创建的工程文件修改了什么

记一次Eazfuscator.NET 2023.2加密使用学习尝试

 可以看到它为我们的工程文件添加了新的MSBuild属性,构建过程完成后执行加密操作。

  <PropertyGroup>     <PostBuildEvent>if /I "$(ConfigurationName)" == "Release" Eazfuscator.NET.exe "$(TargetPath)" --msbuild-project-path "$(ProjectPath)" --msbuild-project-configuration "$(ConfigurationName)" --msbuild-project-platform "$(PlatformName)" --msbuild-solution-path "$(SolutionPath)" -n --newline-flush -v 2023.2</PostBuildEvent>   </PropertyGroup>

现在我们将项目切换到Release(发布)模式,编译我们的项目

记一次Eazfuscator.NET 2023.2加密使用学习尝试

 

点生成查看输出窗口发现它已经将发布的程序集加密了,是不是简单方便鸭?

记一次Eazfuscator.NET 2023.2加密使用学习尝试

 

 现在我们使用反编译工具查看一下代码加密的前后对比

记一次Eazfuscator.NET 2023.2加密使用学习尝试

加密后可以看到所有关键的字符串及其方法都进行了混淆加密,这种混淆的代码难以让人读懂,有效保护了软件的知识产权。

记一次Eazfuscator.NET 2023.2加密使用学习尝试

 

以上就是我的一次代码加密小记录,适合新人小白,不熟悉Eazfuscator.NET加密的同学参考,简单通俗易懂。