所以。我想这是一个基本问题:如果我用一些 .net 混淆器“加密”代码——那么这段代码不会在另一台机器上运行的可能性有多大(……没有安装任何 ob* 软件的机器……) ?
更新:
感谢到目前为止的回复...在我看来,exe/dll 仍然可以被反汇编,您需要额外的保护来解决这个问题吗?此外,dotfuscator 在目录中生成了一些奇怪的 xml 文件,其中包含经过混淆的 exe...现在我明白了。这个 xml 文件称为“Map”,它存储我的类的名称 - 我想知道如果我重命名/删除它会发生什么,我想:没什么。
最佳答案
Dotfuscator 正在更改您的 CIL,使其更难被人类遵循,但对机器来说仍然“合法”。代码有可能不再工作,但这取决于 Dotfuscator 是否真正搞乱了您的代码(我确信这不应该发生),而不是没有在目标机器上安装任何东西。
(例如,我想知道 Dotfuscator 如何处理使用反射来调用在编译版本中更改名称的方法...)
参见 this article有关其工作原理的更多信息。
关于c# - 点混淆器(.NET 混淆器)是否会在未安装混淆器的机器上引起问题?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5246794/