【问题标题】:Assembly obfuscation and protected members汇编混淆和受保护的成员
【发布时间】:2023-03-05 02:26:01
【问题描述】:

我们有一个核心程序集,我们希望对其进行混淆处理并提供给第三方开发人员。我看过的大多数混淆工具都提到它会混淆反编译器和反射器的内部结构,但公共方法和属性的名称保持原样(这是有道理的)。但是“受保护”成员呢?

假设我有一个基类,其中包含一些很酷的辅助方法和属性,我想让第 3 方开发人员可以利用它,以便他们可以简单地从我的基类继承并拥有一些管道已经为他们准备好了。显然,如果它被混淆器弄乱了,这将无济于事。所以我的问题是,这些混淆器工具可以做什么?你能指定它也不是乱码受保护的方法吗?或者,您可以配置哪些是乱码,哪些不是?我没有在 .NET 中使用混淆器的经验,所以我正在努力学习所有细节,谢谢

【问题讨论】:

    标签: c# .net obfuscation


    【解决方案1】:

    我已经使用了几个 .net 的混淆器,它们都没有混淆公共类中受保护的成员名称,这是有道理的,因为它可能会破坏您的应用程序。混淆的整个想法是让您的应用程序行为和公共 API 与混淆之前相同。

    此外,大多数混淆器允许您从混淆中排除某些非公共类/成员(例如使用自定义属性) - 有时当您使用反射、用于依赖注入的 IoC 容器等时可能需要这样做。

    【讨论】:

      猜你喜欢
      • 2012-03-27
      • 2016-07-28
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-06-12
      • 2014-06-09
      相关资源
      最近更新 更多