如何加密可执行的文件并使该加密文件可执行,而无需使用额外的文件进行解密



如何使用 C# 加密可执行的文件并使该加密文件仍然可以执行,而无需使用额外的文件进行解密?
意味着解密方法在文件内部。
我怎样才能用 C# 语言写出这样的东西?

感谢阿达万斯

加密数据存储在客户端计算机上并使其自动解密意味着您还必须在该计算机上存储解密密钥。这意味着您无法有效地保护数据并将其提供给用户。这种加密仅用于减慢用户篡改数据的速度,因为恢复解密密钥和算法需要时间。

如果要加密可执行文件本身的代码,以防止用户篡改它,这是一个非常非常复杂的主题。这只是坚持和时间的问题。你不会在一个StackOverflow帖子中得到这样的问题的答案。您必须研究 PE 和 .NET 文件格式、有关可执行加载程序的操作系统内部以及 mscor*。

如果您需要存储一些数据

  • 选择一些加密算法并将您的数据加密到文件中(请参阅此问题)
  • 将加密文件作为嵌入式资源添加到 C# 项目中
  • 在运行时访问此文件(请参阅此问题)并解密它(已在第一点中讨论过)

最新更新