柏拉图数据智能。
垂直搜索和人工智能。

通过随机性创造安全性

日期:

当您走进 Cloudflare 旧金山办公室时,您首先注意到的是一堵熔岩灯墙。游客经常停下来自拍,但这个奇特的装置不仅仅是一种艺术表达;这是一个巧妙的安全工具。

灯的漂浮蜡滴产生的变化图案有助于 Cloudflare 加密互联网流量。这个想法是在 2013 年的一个周末萌生的,当时公司首席执行官 Matthew Prince 和首席技术官 John Graham-Cumming 正在讨论生成随机数的方法。随机数在网络安全中有多种用途,并且在创建密码和加密密钥等方面发挥着至关重要的作用。由于计算机并不是特别擅长生成随机性,普林斯和格雷厄姆-卡明决定尝试通过物理过程来利用它。

“马修说,‘我们为什么不在办公室安装一堆熔岩灯,并将它们用作随机数生成器呢?’”格雷厄姆-卡明回忆道。 “我当时想,‘哦,这是个好主意!我们就这么做吧!’”

他们的项目从 Lavarand 中汲取了灵感, 随机数发生器获得专利 1996 年,它使用了一个熔岩灯,并用相机对准它。相机拍摄的物体照片因移动的斑点而变得独一无二。然后将图像变成随机数。

熔岩灯是物理熵的良好来源,因为蜡滴的运动遵循控制流体力学的复杂定律。蜡由灯底部的灯泡加热。随着温度的升高,它的密度变得越来越小,并慢慢上升到顶部。当一个斑点到达峰值时,它会冷却并变得更稠密,然后落回底部,在那里重新加热并重复该过程。

Cloudflare 的 熵之墙众所周知,它使用的不是一盏灯,而是 100 盏灯,它们的随机性随着人类的移动而增加。

“任何人自拍都会增加随机性,”格雷厄姆-卡明说。 “如果有人走在熔岩灯前,就会出现更多的随机运动。”

随机性的另一个来源来自于相机内不断变化的光照条件和图像传感器,从而产生噪声。即使两张照片看起来很相似,个别相机的噪音也会以难以察觉的方式使它们有所不同。

Cloudflare 还使用额外的物理熵源为其服务器创建随机性。

“在伦敦,我们有令人难以置信的双摆墙,在德克萨斯州奥斯汀,我们有这些令人难以置信的移动装置悬挂在天花板上并随气流移动,”格雷厄姆-卡明说。 Cloudflare 位于里斯本的办公室很快将推出“基于海洋”的装置。

在这些情况下,奥斯汀办公室使用的熔岩灯、钟摆和“悬浮彩虹”的图像经过哈希处理,并作为密钥推导函数 (KDF) 的输入,该函数用于生成所谓的随机种子 -值是真正随机的,可以用作由加密安全伪随机数生成器 (CSPRNG) 创建的值链的起点。

Cloudflare 巧妙的熵池的使用并非出于 对 Linux 默认随机数生成器缺乏信任 但作为预防措施,充当额外的安全层。

“我们所有的机器都有随机数生成器,它们以某种方式生成随机数,我们可以将其用于密码学目的,”格雷厄姆-卡明说。 “我们所做的是,我们希望以某种本身不可预测的方式开始这个过程。”

熵的物理来源

像“熵墙”这样的举措(它在流行文化中声名狼藉) 出现在警察程序电视连续剧的一集中 NCIS)是一种利用现实世界的随机性来保证计算机安全的巧妙方法。但依赖物理熵源的想法并不是独一无二的。在过去的一个世纪中,工程师和计算机科学家探索了利用自然现象产生随机性的各种方法。

ERNIE(电子随机数指示器设备)是最早利用自然随机性的机器之一。这种随机数生成硬件建于 1956 年,用于决定英国政府发行的债券彩票的获胜者。 ERNIE 利用一系列氖冷阴极管产生的噪声产生随机性。

这里是一个 ERNIE 如何工作的视频.

其他项目利用主要由雷暴期间闪电放电引起的大气噪声。例如,Random.org 以无线电静电的形式捕获大气噪声。 Random.org 创建于 1997 年 计算机科学家麦兹·哈尔和他的朋友们,他们希望为他们正在创建的在线赌博网站生成真正的随机性。他们使用一台价值 10 美元、没有噪声滤波器的 RadioShack 收音机来做到这一点。由此产生的无线电静电本身就是熵的一种形式。哈尔说,该组织现在在不同国家拥有多个无线电接收器,可以在电台之间进行调谐。

随机性也可能来自令人惊讶的地方和人,比如一个涉及掷骰子的项目 米拉·莫迪 11 岁时,莫迪使用了一种著名的密码短语生成方法,称为 Diceware,由 Arnold G. Reinhold 开发。 Modi 掷骰子五次,记下每个数字,比如 45621。然后她将这个五位数与 Diceware 字典中找到的相应单词相匹配,在本例中为“像素”。她重复了这个过程六次,创建了一个由六个单词组成的密码,最终得到了类似“高尔夫球差事疯子时的像素专辑”之类的内容。然后,莫迪会将这个密码写在一张纸上,并通过美国邮政服务将其发送给她的客户。

随机性的新来源

物理随机数生成可以基于自然界中的任何混沌过程,包括 放射性衰变, 激光发射的混沌脉冲星。这些举措都令人兴奋且巧妙,但该领域最近的发展进一步推动了这一点。

其中一个例子是熵联盟,这是一个依赖 Cloudflare 熔岩灯和其他熵源的集体项目。

2018 年的一天,一群研究人员、学者和工程师聚集在一个小房间里,参加尼古拉斯·盖利 (Nicolas Gailly) 的演讲: 德兰,一个用 Golang 编写的分布式随机信标守护进程。

Randamu 首席密码学家 Yolan Romailler 表示:“我们都坐在那个房间里,看到这个伟大的系统,可以将一群相互不信任的各方转变为一个网络,能够以可验证的方式充当公共随机性的可信来源。”和 drand 的维护者。 “当时还没有好的公开的、可验证的随机性项目。”

演讲结束后,小组的几名成员前往大学食堂之一吃午餐。

“当时在 Cloudflare 工作的尼克·沙利文 (Nick Sullivan) 对这个想法感到非常兴奋:我们可以推出第一个公共服务,为任何人免费使用提供适当的公共可验证随机性,而且不需要太多资源,”Romailler说。 “我们都同意互联网确实需要一个公共随机性服务,就像它有免费的 NTP 服务器一样,为每个人提供精确的时间信息。就这样,尼克发起了一项动议,导致了 熵联盟的启动 在2019中。“

最初,这项去中心化服务拥有八个独立的全球分布信标——“一个由大学、工业合作伙伴和其他组织组成的联盟,共同努力为任何人提供随机性,供任何人使用,”Romailler 说。

彩虹-移动-cloudflare.jpg

每个组织都有自己的熵源。 Cloudflare 提出了熔岩灯项目,但其他人也开发了同样富有创意的解决方案。这 智利大学例如,在混合中添加了地震测量,而瑞士联邦理工学院则使用 /dev/urandom 上每台计算机上存在的本地随机生成器,这意味着它依赖于键盘按下、鼠标点击和网络流量等来产生随机性。 Romailler 当时工作的 Kudelski Security 公司使用了基于 ChaCha20 流密码的加密随机数生成器 (CRNG)。

此后该项目不断发展壮大,如今约有 20 个组织参与其中。 “他们所有人都出于善意而免费运行一个 drand 节点,他们相信互联网需要公共随机性来源作为公共利益,”Romailler 说。

该联盟运营着两个主网网络,大约有 23 个节点分布在全球各地,并且全部进行协作。 Romailler 补充说,该项目非常安全——需要 12 个恶意节点才能让它不情愿地停止或发生故障。

“有趣的是,我们所依赖的基于配对的密码学向我们保证,一定数量的恶意方仍然无法影响未来的结果,而只能预测它们,”他说。 “我们不能真正谈论联盟的熵,但我们可以说它提供了 128 位安全性,这意味着大约需要 2128 计算操作来打破它。”

年复一年,这个项目变得越来越大、越来越好。 2023年,联盟新增 时间锁加密,另一个可以免费使用的工具,它允许用户加密一条只能在未来特定时间读取的消息。

目前,熵联盟每月服务超过 1.5 亿个请求,并支持大量依赖 drand 实现随机性的项目。根据 Romailler 的说法,该服务被 Filecoin、一些 Web3 游戏和一个 塞拉利昂的非政府组织 (NGO) 这需要选择普遍基本收入的接受者。

正是这样的事情让 Romailler 和他的同事们觉得他们的工作很重要,并且该项目应该进一步进展,或许可以纳入更奇特的熵源,例如 Cloudfare 的熔岩灯。

“我们认为,理想情况下,联盟应该由 50 到 100 个知名组织组成,这些组织在努力改善互联网的未来方面享有良好的声誉,”他说。 “这种规模将使我们能够在联盟的表现和可信度之间取得良好的平衡。”

现货图片

最新情报

现货图片

在线答疑

你好呀! 我怎么帮你?