我很好奇人们如何编写自己的混淆器。
简单地执行以下操作有多难:
- 使用 GUID 类型名称重命名所有公共方法。
我从哪里开始?我将如何阅读 .net dll 程序集,将公共方法拉出并重命名它们?
我很好奇人们如何编写自己的混淆器。
简单地执行以下操作有多难:
我从哪里开始?我将如何阅读 .net dll 程序集,将公共方法拉出并重命名它们?
您可以检查使用Cecil编写开源混淆器的这两个项目:
如果您从源代码开始,则进行文本替换然后通过编译器运行代码非常简单。如果您从已编译的程序集开始,那么您需要使用 System.Reflection 命名空间中的内容来加载程序集并使用 System.CodeDom 来生成可编译的代码单元。