如何确保生成真正的随机数?CloudFlare公布公司内部最新的熵源

💡 原文中文,约1100字,阅读约需3分钟。
📝

内容提要

CloudFlare使用熔岩灯和其他物理熵系统作为随机数生成器的种子,以确保服务器可以获得真正的随机性。这种随机系统被称为LavaRand。

🔎

延伸解读

物理熵源的实际作用

CloudFlare的熔岩灯、双摆墙和彩片等物理系统,并非直接生成最终随机数,而是作为熵源为加密安全伪随机数生成器(CSPRNG)提供种子。这些物理过程持续变化,产生不可预测的熵,定期刷新服务器的熵池,从而增强随机数的安全性。

为何需要定期刷新熵池

CloudFlare每秒处理超过5500万个HTTP请求,其中多数通过TLS保护,依赖安全随机性。如果熵池耗尽或种子可预测,加密安全将崩溃。因此,必须从外部物理源定期获取真正的随机性来刷新熵池,确保CSPRNG输出始终不可预测。

全球部署的熵源多样性

除了旧金山办公室的熔岩灯,CloudFlare在伦敦办公室部署了双摆墙,在奥斯汀办公室悬挂了半透明彩片。这些物理系统利用无规则摆动、环境光变化等产生随机阴影或图像,经摄像机拍摄并哈希后作为熵源,增加了熵的多样性和冗余。

❓

Q&A

CloudFlare是如何生成随机数的?

CloudFlare使用熔岩灯和其他物理熵系统,通过定时拍摄生成哈希值作为随机数生成器的种子。

熔岩灯在CloudFlare的随机数生成中有什么作用?

熔岩灯通过不停变化的状态提供熵,定时拍摄生成的哈希值作为种子,增强随机数的安全性。

CloudFlare的服务器需要随机数的原因是什么?

CloudFlare的服务器每秒处理超过5500万个HTTP请求,安全随机性是加密协议如TLS的基础,确保数据的真实性和机密性。

CloudFlare新增了哪些熵源?

CloudFlare在伦敦办公室增加了双摆墙,在奥斯汀办公室悬挂了半透明彩片,这些都作为新的熵源。

什么是LavaRand?

LavaRand是CloudFlare的随机系统,利用物理熵源生成随机数,确保数据的安全性。

CloudFlare如何确保随机数的统计随机性?

CloudFlare通过将随机种子放入加密安全伪随机数生成器(CSPRNG)中,确保输出不可预测,并通过统计随机性测试。

🏷️

标签

➡️

继续阅读