这个手册页说:
注意 :从PHP 5.4.0开始session.entropy_file默认为
/dev/urandom
或/dev/arandom
如果可用)。 在PHP 5.3.0中,这个指令默认是空的。
那么,什么是/dev/arandom
,它与/dev/[u]random
什么不同呢?
从这里 。 看起来,在返回所请求的数据量之前, arandom
将保证有足够的熵存在。 它似乎也仅限于OpenBSD的实现。 无论是否有足够的熵, urandom
都会返回所请求的数据量 – 如果不够的话,显然会引入一个漏洞。
本页做了一个合理的工作来解释设备是什么:
根据需要,熵池数据重新生成ARC4生成器,然后生成高质量的伪随机输出数据。
有关底层技术的更多信息可从维基百科获得 。