偏见的定义是什么:



如果这是alternate tie-breaking rules for rounding中说明的那种偏见,我认为这并不重要(因为这种偏见实际上是不可见的)。

除了mt_rand()之外,claimedrand()快四倍,只需在前面添加三个字符!

假设mt_rand可用,使用它的缺点是什么?

最佳答案

mt_rand使用Mersenne Twister算法,它比rand通常使用的LCG更好。例如,LCG的周期仅为232,而mt_rand的周期为219937-1。此外,当将LCG绘制到多维空间中时,所有由LCG生成的值都将为lie on lines or planes。而且,不仅在实践上可行,而且相对容易地确定LCG的参数。 LCG的唯一优势是可能稍快一些,但是在使用php进行编码时,规模是完全不相关的。

但是,mt_rand还是,也不适合用于加密目的(生成 token ,密码或加密 key )。

如果需要加密随机性,请在php 7中使用 random_int 。在较早的php版本上,请在符合POSIX的操作系统上从/dev/urandom/dev/random中读取。

09-10 10:18