Answers:
/dev/random
没有标准化。POSIX不提供任何生成加密安全的随机数据的方式,也不具有任何熵的概念。
Linux内核的熵计算与熵的信息理论模型相对应,该模型与实际使用无关。唯一与此相关的情况是在从未有时间累积熵的新设备上(这包括实时分发;已安装的系统将它们的熵从一次引导保存到下一次引导)。除了这种情况之外,总是存在足够的熵,因为熵不会耗尽。由于Linux /dev/random
在认为没有足够的熵时会阻塞,因此请使用/dev/urandom
,它永远不会阻塞。使用/dev/urandom
对于包括生成加密密钥在内的所有事物都是有好处的(除了上面提到的以外,在新创建的设备上)。
综上所述:
/dev/urandom
。许多(但不是全部)Unix系统具有/dev/urandom
和/dev/random
。请参阅Wikipedia页面以获取更详细的讨论。