gpt4 book ai didi

javascript - 有没有比 crypto.randomBytes 更好的方法来生成性能方面的唯一 ID?

转载 作者:行者123 更新时间:2023-11-29 16:01:33 31 4
gpt4 key购买 nike

Node.js 文档强烈反对使用 crypto.randomBytes()。然而,正如我在 StackOverflow 的回答中读到的那样,在所有随机字符串生成方法(例如使用时间戳等)中,实现最高熵的最佳方法是 crypto.randomBytes()

我想使用这个 uuid 策略在我的 node.js 系统中生成验证 key 。在性能方面还有其他更好的方法吗?

最佳答案

如果你想使用 CSPRNG,不是真的。

建议使用 uuid,但它只是调用 crypto.randomBytes(16) 并将其转换为十六进制字符串。 randomBytes 阻塞并不是真正的问题,因为它也提供异步 api(第二个参数是回调)。当生成如此少量的数据时,使用同步 API 可能会更快。

文档 do still mention熵的缺乏可能导致比平常更长的 block 。不过,它应该只是在启动后才出现问题,即使在这种情况下,也可以通过使用异步 API 来避免阻塞。

The crypto.randomBytes() method will not complete until there is sufficient entropy available. This should normally never take longer than a few milliseconds. The only time when generating the random bytes may conceivably block for a longer period of time is right after boot, when the whole system is still low on entropy.

关于javascript - 有没有比 crypto.randomBytes 更好的方法来生成性能方面的唯一 ID?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52626915/

31 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com