随机数生成器 | python 技术论坛-江南app体育官方入口
真随机数生成器 ( trng )
真随机数生成器 ( trng )的突出特点就是她的输出不可复制的。例如,如果我们抛 100 次硬币并将这 100 次结果记作一个 100 位长的序列:地球上几乎没有人可以产生与这 100 位相同的序列。真随机数生成器都是基于物理过程,主要的例子包括抛硬币、掷骰子、半导体声音、数字电路中的时钟抖动和放射性衰变。密码学中通常使用 trng 生成会话密钥,然后在 alice 和 bob 之间进行分发或用于其他用途。
###(通用的)伪随机数生成器 ( prng )
伪随机数生成器从一个初始种子开始通过各种计算得到序列。通常,伪随机数序列是递归执行以下计算得到的:
s_0 = seed\\ s_{i 1} = f(s_i), i = 0, 1, ...
其中,a,b,m 都是整型常量。注意:prng 并不是真正意义上的随机,因为它们可以计算出来,因此可以称为是计算确定的。
对 prng 的一个一般要求就是:它必须拥有良好的统计特性,意味着它的输出近乎与真随机数序列相同。
本作品采用《cc 协议》,转载必须注明作者和本文链接
hacking