我正在为 node.js 寻找一个加密安全的数字生成器。据我所知。Math.random()
不符合这些要求。是否有任何 nodejs lib 可以生成加密安全数字?
node.js 的加密安全数字生成器
信息安全
随机的
节点.js
2021-08-17 20:27:37
2个回答
你是对的,那Math.random()
是不安全的。如果您想要Node.js 中的CSPRNGcrypto.randomBytes()
,这就是您要找的。
有一些可用的库,但我需要确定它们是否真的是随机的。
当然,任何考虑产生随机数字的算术方法的人都处于犯罪状态。
基本上,没有库可以生成任何“真正的随机”。最近一些处理器包括对硬件 RNG 的支持,它允许(希望)生成“真正的随机”。
话虽如此,CSPRNG 无法满足的应用程序非常少。事实上,CSPRNG 提供了我想不出的高质量随机性。