Geek
首次借助结晶过程生成真随机数
随机性并非随处可见。对计算机来说,要产生真正的随机性实际上是极具挑战性的工作,因为算法会引入可被检测到的微妙模式,这意味着由它们生成的数字是伪随机的,且最终可被提前预知。
这并不是说机器毫无用处。我们还可以把算法与与真正的随机过程结合起来——科学家做了这样的事,以前所未有的方式利用化学中的先天不可预测性:晶体生长。
结晶实际上不是化学反应,而是一种物理变化。研究人员说,结晶过程提供的随机化可能性或许是无限的。
“在化学系统中,每次进行反应时,结合特定试剂的能量等效方法几乎具有无限种,导致不确定性和熵很高,且实际反应的确切次序将永远不会被重复。”格拉斯哥大学的团队在新研究中解释道,“因此,这种化学系统的熵非常高,可以作为生成应用随机数的优良熵池。”
研究人员通过建立机器人系统来准备、启动和监视大量化学瓶中数百种平行化学反应,从而挖掘看似无穷无尽的随机性。
当晶体在每个小瓶中随机生长时,自动化机器人将通过相机观察形成的晶体,检测并记录各种变量,包括晶体的位置、大小、形状、方向和颜色。
每10分钟捕获一次样品瓶阵列的快照,然后将图像转换为二进制序列。在随后的加密破解测试中,机器人的输出结果通过了美国国家标准技术研究所指定的随机性测试,优于传统的基于计算机的伪随机数发生器。
化学家Leroy Cronin表示:“我们发现,使用真正的随机数编码的消息破解所需的时间比算法花费的时间更长,因为现有系统可以反推算法,然后进行暴力破解。”
当然,尽管目前得到了了不起的概念性证明(这是首个使用化学随机性生成真实随机数的示例),但它可能不是实现随机性的最实用途径。
毕竟,并非每个人都拥有一个物理空间来托管运行数百个监控化学实验的机器人。
幸运的是,研究人员认为,将来可以把系统小型化——从而以某种方式将所有这些无限可能性封装在常规电子计算机的硬件内。
“一个疯狂的主意,但本质是找到合适的化学路径。因为化学空间实在太庞大了,难以探索。”
结果见于Matter的报告。
本文译自 sciencealert,由 majer 编辑发布。