在源代码中混淆加密密码和黑客攻击的难度

时间:2016-05-23 20:58:41

标签: c# encryption passwords obfuscation

我正在开发基于C#语言的手机游戏。游戏的保存文件将通过存储在源代码中的简单密码进行加密。如果玩家能够轻松查看和编辑此文件,那么游戏就太容易了。

游戏本身不在线,所以如果他设法破解它,它不会打扰或造成其他人的不公平,所以我没有那么多关心安全性,我选择将密码直接存储在代码中减轻我的麻烦。

但是我觉得有些反编译器有人可以直接看到声明的密码吗?我想问一些简单的方法来使源代码中的密码难以破解。例如,目前我从public static readonly变量中读取密码。我想知道哪一个给黑客带来了困难,或者根本没有?

  • 更改为private static readonly变量。
  • 更改为班级的private变量。 (我猜测存储静态变量的堆更容易破解?)
  • 更改为保存文件读取方法的局部变量。
  • 将字符串拆分为多个部分并将其放在不同的源文件中。在代码读取保存文件时,它通过按顺序连接它们来重新组合所有部分。
  • 我创建了一个看起来像密码的长看似随机的字符串,但实际上我只会从中选择一些字符来构造真正的密码。
  • 有2个密码。第一个是使用另一个密码作为加密密钥加密的。解密密码以获取真实密码。这两个密码都将直接存储在源代码中。

我想我必须知道C#反编译器是如何工作的,但我不知道它。如果您有更好的想法,实现起来并不那么难,请随意添加。

0 个答案:

没有答案