gpt4 book ai didi

php - "cryptographically secure"是什么意思?

转载 作者:行者123 更新时间:2023-12-04 14:59:43 26 4
gpt4 key购买 nike

在 PHP.net 中 mt_rand()uniqid() 被解释为“不生成加密安全值”,并鼓励使用 random_int() random_bytes()openssl_random_pseudo_bytes() 代替。

什么是“加密安全”?

最佳答案

计算机通常不能很好地计算真正的随机数。这意味着计算机计算的伪随机数可能是可预测的。

如果这个随机数被用作加密 key 的基础,那么 key 和 protected 消息可能会受到损害。

加密安全的伪随机数生成器 (CSPRNG) 是一种任何第三方都极难预测生成的数字可能是什么的数字生成器。这意味着从这些随机数派生的加密 key 极难确定,从而使使用这些 key 保护的消息安全。

来自

https://en.wikipedia.org/wiki/Cryptographically_secure_pseudorandom_number_generator

理想情况下,CSPRNG 中随机数的生成使用从高质量来源(通常是操作系统的随机 API)获得的熵。然而,在几个这样的表面上独立的过程中发现了意想不到的相关性。从信息论的角度来看,随机性的数量,即可以产生的熵,等于系统提供的熵。但有时,在实际情况下,需要的随机数比可用的熵要多。此外,从正在运行的系统中提取随机性的过程在实际实践中也很慢。在这种情况下,有时可以使用 CSPRNG。 CSPRNG 可以将可用熵“拉伸(stretch)”到更多位。

关于php - "cryptographically secure"是什么意思?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47882737/

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