Crypt :: OpenSSL :: RSA的文档似乎对于如何实现随机性很模糊。例如,是否必须调用
Crypt::OpenSSL::RSA->import_random_seed();
在每次调用之前
Crypt::OpenSSL::RSA->generate_key
或者甚至可以调用import_random_seed,即使有多次后续调用generate_key也是如此?
那么Crypt::OpenSSL::Random::random_seed($good_entropy)
呢?如果有/dev/random
,则表示没有必要,但如果是Windows会怎样?
我正在寻找有使用经验的人的建议。
答案 0 :(得分:1)
Crypt :: OpenSSL :: RSA附带了一些信息in one of the test files。
在没有/ dev / random的平台上,我们需要手动播种。在 现实生活中,以下会发臭,但出于测试目的,它 即使实际上并不存在,也足以与任何旧事物一起播种 随机。我们至少会模仿来自Crypt :: OpenSSL :: Random的种子, 这是我们在现实生活中必须要做的事情,因为这是私人的 OpenSSL随机库使用的数据显然不会跨越 穿过perl XS模块。
所以你必须使用那些东西并在Windows设备上添加更多随机随机性。