当前位置:  开发笔记 > 程序员 > 正文

你从混淆程序中获得的exe速度是否有所不同?

如何解决《你从混淆程序中获得的exe速度是否有所不同?》经验,为你挑选了2个好方法。

有很多针对.Net的混淆程序,我试过一个,我的exe在混淆时似乎要慢得多.所有的混淆程序都有相同的效果,还是我选择了一个不好的程序?我希望有些人比其他人好,如果你知道一个快速让我知道.



1> Joe Kuemerle..:

免责声明:我的雇主是PreEmptive Solutions,Dotfuscator .NET混淆器的创建者.

它可能取决于您使用的混淆器以及您在其中启用的选项.我将从Dotfuscator的经验谈谈.

如果使用重命名和删除,可能会有混淆程序集的加载时间和内存占用量改进,部分原因是所有/大多数方法,字段等都重命名为更小的名称(例如"ThisVeryLongMethodName(SomeVeryLongParameterName)"变为"a( a)"这样你就可以获得装配尺寸和装载时间的一些好处.除了删除之外你还可以删除从不调用的方法等,并再次减小二进制文件的大小.

字符串加密可以在很小程度上对运行时性能产生负面影响,因为字符串必须在运行时转换回人类可读的文本.

如果您使用任何其他系统/技术(如Microsoft SLP的安全虚拟机技术)来呈现不可读的方法,这也会因安全虚拟机而导致运行时性能下降.

不产生托管代码组件的输出,而是依靠本地代码加载到"预处理"它们的输出也可以承担一个运行时的性能损失(尤其是在加载时)其它混淆工具.



2> Bob King..:

混淆不应该改变代码的运行时性能.如果它是那么你有一个糟糕的混淆器,它做的不仅仅是混淆.所有混淆都应该让你的IL难以阅读.

推荐阅读
手机用户2402852387
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有