伪随机数生成器
维基百科,自由的 encyclopedia
伪随机数生成器(pseudo random number generator,PRNG),又被称为确定性随机比特生成器(deterministic random bit generator,DRBG),[1]是一个生成数字序列的算法,其特性近似于随机数序列。伪随机数生成器生成的序列并不是真随机,因此它的每一个数完全由一个初始值决定,这个初始值被称为随机种子(英语:Random seed)(seed种子有时使用接近于真随机的硬件随机数生成器生成)。尽管接近于真随机的序列可以通过硬件随机数生成器生成,但伪随机数生成器因为其生成速度和可再现的优势,在实践中显得尤为重要。[2]
![]() |
PRNG是仿真(例如蒙特卡洛方法)、电子游戏(例如过程生成)以及密码学等应用的核心。加密程序不能从以前的输出中预测输出,而要采用更复杂的、不具有简单PRNGs线性特性的算法。
PRNG的核心是良好的统计特性,通常需要严格的数学分析来证明PRNG生成的序列的准确性足够接近真随机以满足预期用途。