C#码混淆效率的检验

C#码混淆效率的检验,c#,obfuscation,reverse-engineering,decompiling,reflector,C#,Obfuscation,Reverse Engineering,Decompiling,Reflector,我正在评估几个模糊器,以保护WPF应用程序中的代码。 为了检查给定组件上每个模糊器所做工作的结果,我使用了Red Gate的.Net Reflector。在每次模糊处理之后,我用.NET Reflector打开组件,看看它是什么样子 足够了吗?是否可以将.NET Reflector的结果视为模糊处理质量的指标,或者我应该尝试其他工具?(这不是任何可能的工具,但从实用常识的角度来看)。反射器的结果应该足以说明任何不经意的反编译尝试的结果。某些混淆器会混淆代码,使程序集甚至无法在Reflector中

我正在评估几个模糊器,以保护WPF应用程序中的代码。
为了检查给定组件上每个模糊器所做工作的结果,我使用了Red Gate的.Net Reflector。在每次模糊处理之后,我用.NET Reflector打开组件,看看它是什么样子


足够了吗?是否可以将.NET Reflector的结果视为模糊处理质量的指标,或者我应该尝试其他工具?(这不是任何可能的工具,但从实用常识的角度来看)。

反射器的结果应该足以说明任何不经意的反编译尝试的结果。某些混淆器会混淆代码,使程序集甚至无法在Reflector中打开


任何想尝试更深层次的方法的人都不会轻易被比其他方法更高级的模糊处理所吓倒。

最好是Reflector和ILSpy完全拒绝反编译生成的程序集。我知道有一些模糊处理程序能够做到这一点。

我的观点是:“足够了吗”取决于你的目标应用程序。混淆从来都不是100%安全的代码,它总是让潜在的攻击者很难破解代码,但这完全取决于“潜在的攻击者”在破解你的应用程序时会付出多大的努力。另外,.NET Reflector是一个查看器,就像您所说的,因此,如果它是安全的或不安全的,可以通过查看来扣除您的费用,例如:

如果字符串是加密的

如果参数是加密的

如果类名称和字段(如(PWD_USER)被加密 ...


问候。

您还可以再试一次。我曾经有过这样一个案例,ILSpy能够反编译Reflector没有的代码。@Rem-我想说,可以在.NET Reflector中查看的代码是一个很好的起点。当然,这只会减慢下定决心的人完成的速度,当然不会阻止任何人查看代码。你可以在这里发布你的发现,这里有一些关于混淆器的问题……你可以用这个问题:@Daniel Hilgarth:就一个?我一天吃几次!见最后3篇文章@