我在使用 RSA_generate_key
时遇到问题。该方法在两个不同的 C 源中生成相同的公钥。因此,这两个源是应用程序的客户端和服务器,在 localhost
上编译并运行(目前)。如何在每次调用 RSA_generate_key 时生成不同的 key 对?
最佳答案
来自 RSA_generatey key 手册:
The pseudo-random number generator must be seeded prior to calling RSA_generate_key().
您需要使用启动种子调用 RAND_add,如果在 Linux 中,如果您可以等待足够的熵,则可以从/dev/random 读取种子,或者如果您需要快速响应,则可以从/dev/urandom 读取种子。
您可以在这里了解更多信息: http://research.swtch.com/openssl
关于c - 如何使用 RSA_generate_key 始终生成不同的公钥,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12089536/