node.js 的加密安全数字生成器

信息安全 随机的 节点.js
2021-08-17 20:27:37

我正在为 node.js 寻找一个加密安全的数字生成器。据我所知。Math.random()不符合这些要求。是否有任何 nodejs lib 可以生成加密安全数字?

2个回答

你是对的,那Math.random()是不安全的。如果您想要Node.js 中的CSPRNGcrypto.randomBytes() ,这就是您要找的。

有一些可用的库,但我需要确定它们是否真的是随机的。

当然,任何考虑产生随机数字的算术方法的人都处于犯罪状态。

基本上,没有库可以生成任何“真正的随机”。最近一些处理器包括对硬件 RNG 的支持,它允许(希望)生成“真正的随机”。

话虽如此,CSPRNG 无法满足的应用程序非常少。事实上,CSPRNG 提供了我想不出的高质量随机性。