硬件随机数生成器 硬件随机数生成器英語hardware random number generator或真随机数生成器True Random Number Generator縮寫TRNG是一种通过物理过程而不是计算机程序来生成随机数的设备这样的设备通常是基于一些能生成低等级统计学随机的噪声信号的微观现象如热力学噪声光电效应和量子现象这些物理过程在理论上是完全不可预测的并且已经得到了实验的证实硬件随机数生成器通常由换能器放大器和模拟数字转换器组成其中换能器用来将物理过程中的某些效果转换为电信号放大器及其电路用来将随机扰动的振幅放大到宏观级别而模拟数字转换器则用来将输出变成数字通常是二进制的零和一通过重复采样这些随机的信号一系列的随机数得以生成 随机数据生成器也可以建立在随机的宏观过程基础上比如基于掷硬币骰子轮盘和彩票摇奖机这些现象中的不可预测性可由动力系统和混沌理论证明虽然在经典力学中宏观过程都是决定论的但一个设计良好的此类设备是无法在现实生活中被预测的因为它的每次使用都依赖于敏感的初始条件 虽然骰子传统上被用作赌博的工具或角色扮演游戏中的随机元素但早在年维多利亚时代科学家弗朗西斯高尔顿就描述了一种用骰子来产生科学研究用的随机数的方法 硬件随机数生成器通常每秒只能产生很有限的随机比特这意味着它是相对较慢的为了提高数据产生效率它们都常被用来生成伪随机数生成器的种子并以此生成伪随机的输出序列