【问题标题】:Are all .Net Obfuscators equal in speed terms?所有 .Net 混淆器在速度方面都相同吗?
【发布时间】:2009-07-01 06:08:37
【问题描述】:

我目前使用 VS 附带的免费混淆工具,它可以满足我的需求,但我的程序在混淆后似乎变慢了,其他混淆器是否更好?

谢谢

【问题讨论】:

    标签: .net obfuscation


    【解决方案1】:

    似乎慢了?对其进行基准测试。在尝试解决之前证明你确实有问题。

    我怀疑所有混淆器都具有相同的性能特征,但我也怀疑任何人都可以在不尝试的情况下真正预测任何特定的混淆器会对现实世界的应用程序产生什么影响。编写一个好的基准,您将能够获得做出真正明智决定所需的证据。

    【讨论】:

      【解决方案2】:

      我认为经过混淆的程序不太可能变慢。您确实意识到混淆器仅重命名方法、变量、删除调试信息等,字节码几乎保持不变。没有逻辑上的理由让它变慢,混淆器很笨,不能重写你的部分代码,它们当然不是一个被吸引来提供特性的库。

      【讨论】:

      • 同样好的答案,但我只能打勾,谢谢澄清。
      • 这不是一个同样好的答案。有精心制作的混淆器可以进行各种重写。
      • @FD 有些人最多可能会洗牌或交换字节码,但整体方法定义保持不变。如果一个混淆器让代码以一半的速度运行,没人会使用它,问题仍然是我怎么知道我的程序没有被破坏。
      • @mP。实际上,很多混淆器会显着降低代码速度。慢速字符串加密会降低文本操作的速度。额外的代码流转换会扼杀优化器,因此也会扼杀速度。我为每个混淆器执行了基准测试,其中只有两个或三个在速度方面提供了足够的结果。
      猜你喜欢
      • 2012-08-22
      • 1970-01-01
      • 1970-01-01
      • 2011-03-22
      • 2010-09-09
      • 2018-12-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多