好吧,我猜这完全是主观的,但我正在考虑随机数生成器的熵源.大多数发电机都按当前时间播种,对吗?好吧,我很好奇其他资源可以用来生成完全有效的,随机的(宽松的定义)数字.
使用多个来源(例如时间+当前硬盘寻找时间[我们在这里是非常奇妙的])一起创建一个比单个来源更"随机"的数字?来源数量的逻辑限制是什么?真的够多少钱?选择时间只是因为方便吗?
如果不允许这种事情,请原谅我,但我对这些消息来源背后的理论感到好奇.
关于硬件随机数生成器的维基百科文章列出了几个使用物理属性的随机数的有趣来源.
我最喜爱的:
由连接到PC的盖革计数器检测到的核衰变辐射源.
光子穿过半透明镜子.检测互斥事件(反射 - 传输)并分别与"0"或"1"位值相关联.
来自电阻器的热噪声,被放大以提供随机电压源.
雪崩二极管产生的雪崩噪声.(多么酷啊?)
由连接到PC的无线电接收器检测到的大气噪声
维基百科文章的问题部分也描述了许多这些源/传感器的脆弱性.随着传感器老化/退化,传感器几乎总是产生递减的随机数.应通过统计测试不断检查这些物理来源,统计测试可以分析生成的数据,确保仪器不会无声地破坏.
SGI曾经在各种"水珠相"中使用熔岩灯的照片作为熵的来源,最终演变成一个名为LavaRnd的开源随机数发生器.
我使用Random.ORG,他们提供来自大气噪声的免费随机数据,我用它来定期重新播种Mersene-Twister RNG.它几乎是随机的,没有硬件依赖.