Obfuscator's "阻止Microsoft IL反汇编器打开我的程序集"选择

本文关键字:quot 我的 程序集 选择 汇编器 Microsoft 阻止 Obfuscator IL 反汇编 | 更新日期: 2023-09-27 18:02:44

我一直在尝试使用SmartAssembly混淆器对WPF Prism应用程序应用代码保护,但如果应用程序在混淆时拒绝正常工作

唯一有效的选项是:阻止Microsoft IL Disassembler打开我的程序集

Red-Gates帮助将其描述为:SmartAssembly可以为您的程序集添加一个属性,该属性可以阻止Microsoft的公共中间语言(IL)反汇编器(ildasm.exe)打开您的程序集

我想知道这种保护有多严重,如果代码没有真正混淆,它是否值得应用。或者,换句话说,这是什么微软的公共中间语言(IL)反汇编程序(ildasm.exe)?它是每个已知的。net逆向工程工具的主要部分,还是只是众多此类工具中的一个?

Obfuscator's "阻止Microsoft IL反汇编器打开我的程序集"选择

ildasm.exe是。net框架附带的IL反汇编器。它是每个人都有的工具,如果他们有。net。它不是一个组件,所以其他反汇编器不能基于它或其他任何东西。

所讨论的属性是SuppressIldasmAttribute。我不知道其他反汇编程序(如Reflector或ILSpy)是否尊重这个属性,但我对此表示怀疑。粗略的谷歌搜索表明情况并非如此,SuppressIldasmAttribute只影响ildasm.exe本身。

因此,

不能真正保护程序集,也不能作为混淆工具使用。但是如果你是在混淆,我看不出你为什么不应用这个属性,因为它至少阻止了最简单的(最常见的)反汇编方法,我认为它没有任何害处。