Phi*_*all 2 security aes rijndael encryption-symmetric
我的软件使用的是AES Rijndael.
我使用SHA-256哈希从具有任意长度的字符串生成密钥,然后将其作为私钥和公钥传递,因为在这种情况下我不需要区分这两者.
如何保护我的密钥不被可执行文件侵入?
我知道不要使用文字,而是在运行时使用一些预定的步骤生成密钥,但是所有相同的密钥在发送到AES初始化函数之前仍然在内存中,因此可以非常容易地检索.
AES显然非常安全,但是如果有人打破了可执行文件,那对我有什么好处?
解决这个问题时有一些常见的做法吗?
这是不可能做到的.这是例如PC上的DRM方案的基本问题:它们需要将密钥存储在内存中,因此可以将其提取出来.你可以在它不使用的时候掩盖它,但那就是它.如果你的应用程序很受欢迎并且分发,那么有人会破解你的美味方案.这就是为什么一些公司使用加密狗或TPM芯片进行高价值应用的原因.