当前位置:  开发笔记 > 编程语言 > 正文

商业混淆器如何实现崩溃.net Reflector和ILDASM?

如何解决《商业混淆器如何实现崩溃.netReflector和ILDASM?》经验,为你挑选了1个好方法。

一些商业混淆器声称他们可以崩溃ILDASM(以及其他类似工具,如Reflector)

关于他们如何实现这一点的任何想法

正如在这里的众多主题中所述,有足够动力/时间/技能的人总能找到一种方法来阅读你的代码(即如果它是可运行的,它是可以反编译的),但在我看来,大多数随意的代码阅读器都不会打扰我的反编译如果Reflector无法为它们执行代码.

这个级别的保护我的知识产权(即,除了那些可能会找到解决方法的人之外,任何人都可以找到解决方法)对我来说肯定是足够的.



1> Jon Skeet..:

有些可能会引入CLR能够运行但ILDASM等无法处理的无效IL.在我看来这是一个坏事 - CLR可能会在未来抱怨它.

其他的可能会创建有效的IL,由于在某种程度上意外,它恰好碰到了ILDASM和Reflector.作为一个愚蠢的例子,假设一个标识符包含一个不可打印的字符.根据我的记忆,这是有效的,因为CLR将标识符视为不透明的blob,但尝试显示它们的东西可能会失败.这可能只是一个临时的帮助 - 虽然ILDASM经常不更新,但Reflector经常更新,我希望开发人员在发现它们时能解决这类问题.

有助于防止高级反编译而不是反汇编的第三种方法是创建IL,它在C#/ VB中没有明显的模拟,但是完全有效.实际上,迭代器块有时已经这样做了(看近文章的底部).

我希望任何合法的,保证可以运行的东西可以在现在或至少某个时间被拆卸(urgh).现在崩溃反射器(或者更确切地说,当编写营销模糊时)并不是未来崩溃的良好迹象.

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