c# – eazfuscator公共成员没有混淆

我正在尝试使用eazfuscator.net混淆.net项目.问题是,当我使用.NET Reflector对其进行反编译时,您可以看到很多代码.所有私人成员都是混淆的,但公众成员提供了有关该计划的大量信息.

是否有可能混淆我图书馆的公众成员?我知道这不是由程序完成的,因为公共成员通常是从其他程序集访问的.但是,是否有可能对整个解决方案进行模糊处理,以便从工具中重命名来自其他程序集的访问?

我已经尝试过使用ObfuscationAttribute

[assembly: Obfuscation(Feature = "Apply to type * when public: renaming",Exclude = false)]

但它确实没有任何区别.

那么有可能用eazfuscator或其他工具做类似的事情吗?

解决方法

通常,混淆器不会混淆公共/受保护的成员.

他们这样做是有原因的,假设你在一个程序集中有一个公共成员(比如一个dll).通常会创建程序集来共享代码,如果混淆器改变了成员和类名,该怎么办?当另一个组件依赖它时,它将如何工作?

如果你想混淆一个课程,为什么它首先是公开的?如果不打算在装配体外部使用,则可以始终将其设置为内部.

Obfucsators善于处理内部类型/成员.它不仅会混淆类的成员,还会更进一步重命名类本身.

您可以考虑使用Phoenix protector.我希望它也可以配置为混淆公共成员.

更新:

一种选择是将所有依赖程序集合并到单个巨型程序集(exe),然后使用obfuscate public members选项对合并程序集进行模糊处理.通过这种方式,您可以同时对公共成员进行模糊处理,而不会破坏任何内容.

相关文章

在要实现单例模式的类当中添加如下代码:实例化的时候:frmC...
1、如果制作圆角窗体,窗体先继承DOTNETBAR的:public parti...
根据网上资料,自己很粗略的实现了一个winform搜索提示,但是...
近期在做DSOFramer这个控件,打算自己弄一个自定义控件来封装...
今天玩了一把WMI,查询了一下电脑的硬件信息,感觉很多代码都...
最近在研究WinWordControl这个控件,因为上级要求在系统里,...