我正在寻找任何可用于 Silverlight 代码混淆的免费工具的建议。混淆器专业版支持 Silverlight,但混淆器社区版不支持。
来自 Google Code 的 Obfuscar 需要手动指定不应混淆的每个项目,因此必须手动列出 XAML 中引用的每个控件和属性。没有选项可以不混淆任何公共类型和成员的名称。即使我手动指定每个公共类和成员,我也不知道是否还有其他 Silverlight 问题潜伏。
我没有兴趣开始另一个关于代码混淆的智慧或缺乏的讨论。
我正在寻找任何可用于 Silverlight 代码混淆的免费工具的建议。混淆器专业版支持 Silverlight,但混淆器社区版不支持。
来自 Google Code 的 Obfuscar 需要手动指定不应混淆的每个项目,因此必须手动列出 XAML 中引用的每个控件和属性。没有选项可以不混淆任何公共类型和成员的名称。即使我手动指定每个公共类和成员,我也不知道是否还有其他 Silverlight 问题潜伏。
我没有兴趣开始另一个关于代码混淆的智慧或缺乏的讨论。
.NET Reactor 是浪费钱。几乎所有版本的程序都有自动解包工具,作者不回复电子邮件。在我对许多混淆器的评估和测试过程中,我提出了以下列表:
CodeFort - 非常有前途。在撰写本文时缺少一些功能,但作者已经在研究它们并且对电子邮件非常敏感。与其他人相比也便宜。
CLISecure - 良好的支持和产品,但非常非常昂贵
SmartAssembly - 受保护的程序崩溃了也可以使用反混淆器,但它们不时更改小东西以阻止它们,所以它是一个不错的选择。
9Rays - 几乎没有混淆任何东西。(我检查了设置)太浪费钱了。
DeapSea - 比 CodeFort 更昂贵,功能更少。
CryptoObfuscator - 中档定价和功能丰富。但我不确定保护有多强。根据一些帖子,在某一时刻很容易破解。不确定是否仍然如此。
我很高兴地告诉您,您不再需要手动从 Silverlight 程序集的混淆中排除类型和成员。事实上,您根本不必排除任何东西。
CodeFort 是第一个引入 XAML 和 BAML 重命名的混淆器。这意味着对 XAML 和 BAML 代码中的类型和成员的引用将与其余的混淆同步更新 - 通过这样做,不需要像今天所有其他混淆器那样使大部分代码不受保护。
如果您想亲自看看,请从我们的网站下载 CodeFort 免费版:http: //codefort.org/download
希望这可以帮助,
基督教
codefort.org
到目前为止,我还没有看到一个好的免费的 Silverlight 混淆器。这是对一些便宜的混淆器的不错评论: http ://www.olsonsoft.com/blogs/stefanolson/post/Selecting-an-obfuscator-for-Silverlight.aspx 。作者选择了 .NET Reactor 作为最喜欢的混淆器。
PreEmptive Solutions 处于对最新 Dotfuscator 版本进行 beta 测试的最后阶段,该版本将保护扩展到 Silverlight 程序集之外,也扩展到 XAML 资源。(这种支持已经在生产中用于 WPF/BAML)。这有三个好处;您的更多程序集受到保护,您的 XAML 受到保护,并且您可以节省时间,因为配置现在更加简单(不再有排除项)。
如果您有兴趣成为测试版候选人,请给我发电子邮件 (sebastian@preemptive.com),我会让我们的支持团队向您发送凭据。请记住,这是测试版——不收取任何费用——您将获得我们的支持——但您不能将此版本用于任何生产工作。
唯一的软件要求是 .NET 1.1 或更高版本以及 Silverlight 2 或更高版本。(是的 - 在 Windows Mobile 7、Windows Azure 中进行测试...)
其他一些需要考虑的事情:
• 分析(功能和使用跟踪)也可以在编译后注入
• 分析还支持Expression Blend Silverlight 分析框架(允许设计时Web 分析和编译后检测合二为一)。
• Dotfuscator 使用 XAP 文件而不是程序集,并自动对其重新签名,从而使您的构建更加简单。
• Dotfuscator 还是一个高效的“修剪器”,可以一路缩减 Silverlight 应用程序……</p>
有关我们“通用 Silverlight 支持”的更多信息,请参阅我们的 TechEd 公告,网址为http://www.preemptive.com/news-events/press-releases/307
随 Visual Studio 2010 提供的 Dotfuscator Community Edition 版本将支持 Silverlight 2 和 Silverlight 3 程序集的混淆。
http://code.google.com/p/babelobfuscator/现在免费又酷的一个 :)