什么是/ dev/arandom?

Ali*_*xel 16 php linux random session

手册页说:

注意:从PHP 5.4.0开始,session.entropy_file默认为/dev/urandom或者/dev/arandom如果可用.在PHP 5.3.0中,该指令默认为空.

那么,/dev/arandom它与它有什么不同/dev/[u]random

Chr*_*son 8

这里开始.arandom在返回所请求的数据量之前,似乎将保证存在足够的熵.它似乎也仅限于OpenBSD实现. urandom无论是否有足够的熵,都会返回所请求的数据量 - 如果没有足够的话,这显然会引入漏洞.

  • @ChrisThompson这个答案实际上是不正确的.在*BSD系统上实现的`arandom`使用`arc4random`(目前基于ChaCha20流密码)来生成随机字节流.就像`urandom`一样,它会_always_有足够的数据,没有等待.它具有比传统的"urandom"更高的熵,并且在OpenBSD 5.1中,arandom`取代了"urandom".如果人们阅读你的答案并避免"随机"而害怕它被阻止,我会讨厌它.它永远不会阻挡!:) (4认同)
  • 来自https://calomel.org/entropy_random_number_generators.html:"`/ dev/random`具有非常好的熵,但速度很慢.`/ dev/urandom`具有较差的熵和良好的速度.`/ dev/arandom` on a OpenBSD盒子都有". (3认同)