我知道这是一个奇怪的请求,但我需要混淆原始c#源代码。
虽然这是一个坏主意,但是c#代码将通过CSharpCodeProvider在客户端编译。是否有现成的c#类可以混淆源代码?或者,有第三方库可以实现这一点吗?
我考虑使用Roslyn和手动变量重命名,但我找不到任何关于如何执行的信息。有人知道如何使用Roslyn重命名变量(并加载解决方案)吗?
我尝试过手动语法分析器,但效果不佳。
目前为止我做了以下事情:
删除了所有注释。
删除所有换行符和空格。
将来自所有不同项目的所有文件放入一个文件夹中,并使用随机的25个字符的字母数字名称。
在代码行中间添加随机注释。这不会阻止任何人,但让我头疼的阅读 public /*SJKDSJKDJ398sLAjljKKxklw*/int /*SDSDSJCJKIORIO*/ privateServerKey = /*SDKSDKSDFKJSFKJ*/ ...