-4

有没有一种方法可以混淆 c# 代码(Visual Studio 解决方案),这样如果某个人甚至得到项目都无法理解它?注意:我不是在这里谈论混淆程序集/可执行文件..

4

4 回答 4

5

我还没有看到任何商业化的东西,但是您可能可以编写自己的应用程序来执行此操作。我实际上知道有人曾经为一些正在部署的 ASPX 页面这样做。

您必须采取类似的步骤:

  1. 将所有局部变量重命名为非常相似的名称 B_ __ 0、B _0 等。
  2. 重命名所有内部和私有方法/类及其所有引用。
  3. 编码所有字符串。
  4. 插入不做任何事情的随机代码/调用。

考虑一下你为什么想要这个......这意味着:

  • 您永远无法查看自己的代码。您将在某处拥有原件 - 为什么不使用密码保护它呢?
  • 你会搞砸你正在运行的任何源代码控制。
  • 每次保存/发布时,您都会有一些疯狂的“处理我的整个解决方案”?

简而言之,这可能不是一个好主意,这就是为什么您可能找不到商业解决方案的原因。

于 2013-05-17T08:33:37.927 回答
4

关紧门窗。

在开发过程中断开您的计算机与 Internet 的连接。

完成后混淆您的程序集。

将它们保存为磁盘。

烧掉你的电脑。

继续用头撞墙,直到你知道为什么要这样做。

在那里,你是安全的,没有人会拥有相同的确切来源。不过,我希望您的应用程序没有错误。

于 2013-05-17T08:40:50.733 回答
0

一个更明智的选择可能是使用BitLockerTrueCrypt之类的东西来加密你的硬盘驱动器 。

于 2013-05-17T09:23:50.353 回答
0
  1. 混淆dll
  2. 使用 ILSpy 之类的反编译器并反编译 dll

这样你就可以得到混淆的 C# 代码。

于 2020-01-27T17:38:59.513 回答