编译好的私钥

use*_*650 1 security cryptography compilation

从可以从可执行文件中推导出密钥的意义上来说,使用加密私钥分发已编译的程序(比如 C,绝对不是 Java)是否安全?如果多个可执行文件的不同之处仅在于在源中使用了不同的私钥,该怎么办?

我记得之前读到过,防病毒软件可以识别二进制可执行文件中的可疑模式,并且从汇编中似乎可以推断出密钥。

Rob*_*ier 5

每当您创建一个向自己的用户隐藏数据的方案时,请问自己这个问题:该方案是否可以用于防止未经授权的软件复制(即可以阻止“盗版”吗?)如果答案是肯定的,请问自己这个问题:是否存在未经授权的软件副本?如果两个问题的答案都是肯定的,那么你的计划几乎肯定行不通。

你不能既向某人提供数据又向他们隐藏数据。如果在用户计算机上运行的程序可以访问该机密,那么用户也可以访问该机密。你可以混淆它,但如果他们可以运行调试器,他们总是可以在你的程序解密后从你的程序中取出密钥。

最后的教训是,您可以授权用户(因为他们将密码存储在大脑中)。您不能授权程序或通用设备(并且您几乎不能授权专用设备,除非证明用户拥有它)。