Agile.net 使用专利技术将 MSIL 代码转换为虚拟操作码,只有安全的虚拟机才能理解。虚拟机直接处理虚拟操作码,模拟原始代码行为而不将代码转换回其原始形式。破坏保护成为NP完全问题,从而使Agile.net成为唯一保证您的代码不会被破坏的混淆器!
.NET Core 程序集的本机代码生成
将 .net 核心程序集的 MSIL 代码转换为本机代码,完全剥离 MSIL 代码,从而提供本机代码级保护。
下一代混淆器
混淆代码的各个方面,包括类和方法名称、托管资源、用户字符串、方法实现、系统和库调用。Agile.net 比任何其他混淆器保护更多的应用程序,因为它知道可以安全更改的内容以及需要保留的内容。然而,它使您可以完全控制混淆过程。
适用于所有 .NET 技术
加入我们快速增长的客户群,其中包括每天使用 Agile.net 的数千名客户,以保护他们在 .NET Core 3.1、.NET 2.0 及更高版本、WinRT、WP7、WP8、Compact Framework 2.0 及更高版本、ASP 上运行的软件。NET、Silverlight 2.0 及更高版本 (XAML)、WPF (BAML)、XNA、ClickOnce 等。
Secureteam Agile.net 使我们产品交付的重要合作伙伴,在提供专业知识、对质量的承诺和出色的支持方面,这将使我们能够保护我们的知识产权,从而直接影响我们的收入。Secureteam 对软件保护市场有着深入的了解,这使我们能够提供可靠的保护方案,确保没有人篡改我们的代码
利用我们先进的 .NET 混淆功能
Agile.NET,适用于 .NET 应用程序的强大代码保护、混淆和许可解决方案
.net 混淆器屏幕快照
.NET 平台的高级混淆功能
Agile.NET 混淆器超越了传统的混淆方法。除了重命名您的元数据实体外,它还支持高级混淆方法,这些方法将加强您的整体保护方案并完全阻止逆向工程。
实体重命名
Agile.NET 混淆器重命名所有元数据结构,这包括命名空间、类名、方法签名和字段以及程序集的方法实现和字符串值。重命名方案包括'不可读字符'方案,该方法将类、方法和字段名称转换为不可打印的 unicode 字符。反编译后,结果是极其难以理解的源代码。由于使用了不可打印的字符,因此无法编译反编译后生成的源代码。
控制流混淆
Agile.NET 混淆器提供流混淆控制,控制流混淆通过将现有代码流模式转换为语义等效的结构来隐藏程序的控制流信息,但与最初编写的代码不同。控制流混淆算法将原始实现转换为意大利面条代码,从而使推断程序逻辑变得极其困难。Agile.NET .NET 混淆器确保混淆程序集的应用程序代码流保持完整。
交叉汇编混淆
交叉汇编混淆允许重命名外部引用,从而显着增加混淆构造的数量。给定一组相互连接的程序集,Agile.NET 将统一重命名从其他程序集引用的类、方法和字段。例如,如果程序集 A 中声明的类 A 被程序集 B 引用,而 Agile.NET 将类 A 重命名为 A1,它也会将 B 的外部引用从 A 重命名为 A1。
增量混淆
增量混淆允许开发人员在发布混淆后的程序集后对原始源进行更改,然后向用户提供反映对原始应用程序更改的补丁,同时保留原始版本中使用的名称映射。为了实现这一点,必须保存映射文件并在以后使用,以确保在进行更改和重新发布混淆程序集时保留重命名。
应用程序代码流保持不变
如果混淆程序被反编译,混淆器必须保持软件的功能完整,同时使原始源代码无法识别。Agile.NET 混淆器确保混淆后的程序集将以与原始程序集相同的方式运行。
配置混淆过程
在混淆的程序集中使用反射 API 时,混淆会引入问题。一旦应用程序被混淆,通过使用反射 API 执行的方法调用很可能会失败,这是因为该方法已被混淆器重命名,但调用站点仍按其原始名称引用该方法。为了缓解这些问题,Agile.NET 混淆器完全支持 Microsoft 的声明性混淆属性。这些属性直接在源代码中声明,允许用户定义不应重命名的类和方法名称。
字符串加密
普通攻击者通常会在部署的程序集中搜索包含“GetLicense”或“Invalid License”等关键字的字符串。通过定位此类字符串,黑客试图绕过嵌入在他们所攻击的产品中的许可证保护。Agile.NET 混淆器提供了字符串加密选项。
x64 平台支持
支持 32 位和 64 位应用程序
.NET Core 和 .NET Framework 支持
支持 .NET Core、.NET Framework 和 .NET Compact Framework。
混合模式程序集支持
Agile.NET 可以混淆混合模式程序集。
调试
混淆的副作用之一是难以调试混淆代码。用户生成和报告的异常通常包括混淆的方法和类名称,这使得几乎不可能追溯源代码中的堆栈跟踪。Agile.NET 混淆器生成一个标记清晰的映射文件,其中包含对混淆实体及其原始名称的详细描述,此信息对于用户解释来自混淆程序集的调试器输出至关重要。
MSBuild 和 NAnt 构建集成
Agile.NET 与 MSBuild 和 NAnt 集成,从而促进其作为整个复杂构建场景范围的一部分的使用。