rem*_*rem 5 .net c# obfuscation reverse-engineering
我一直在尝试使用SmartAssembly混淆器将代码保护应用到WPF Prism应用程序,但是应用程序在被混淆时拒绝正常工作.
唯一适用于它的选项是:阻止Microsoft IL反汇编程序打开我的程序集.
Red-Gates帮助将其描述为:SmartAssembly可以向程序集添加属性,以防止Microsoft的通用中间语言(IL)反汇编程序(ildasm.exe)打开程序集.
我想知道这种保护有多严重,如果代码没有真正混淆,是否值得应用.或者,换句话说,微软的通用中间语言(IL)反汇编程序(ildasm.exe)是什么?它是每个已知的.NET逆向工程工具的主要部分还是仅仅是众多此类工具中的一个?
ildasm.exe是.Net Framework附带的IL反汇编程序.如果他们拥有.Net,这是每个人都拥有的工具.它不是一个组件,所以其他反汇编程序不是基于它或任何东西.
有问题的属性是SuppressIldasmAttribute.我不知道其他反汇编程序如Reflector或ILSpy是否尊重这个属性,但我对此表示怀疑.粗略的谷歌搜索表明情况并非如此,而且SuppressIldasmAttribute只会影响ildasm.exe本身.
因此,它并不真正保护您的程序集,并没有太多用作混淆工具.但是如果你无论如何都是混淆,我看不出你为什么不应用这个属性的任何理由,因为它至少阻止了最简单(最常用)的反汇编方法,我认为它不会造成任何伤害.