云服务器价格_云数据库_云主机【优惠】最新活动-搜集站云资讯

_新网域名解析_返利

小七 141 0

TLS中的后量子密码学

我们生活在一个完全互联的社会里。一个由各种设备连接起来的社会:笔记本电脑、移动电话、可穿戴设备、自动驾驶或自动飞行的东西。我们有一种通用语言的标准,允许这些设备相互通信。这对于大范围的部署是至关重要的,尤其是在密码学中,最小的细节就有很大的好处重要性。一最重要的标准制定组织是美国国家标准与技术研究所(NIST),它在决定哪些标准化密码系统在世界范围内得到采用方面具有巨大的影响力。2016年底,NIST宣布将举办一个多年开放项目,目标是标准化新的后量子(PQ)密码算法,以防量子和经典电脑。很多我们的设备有非常不同的要求和功能,因此,在这个过程中可能不可能选择"一刀切"的算法。NIST数学家Dustin Moody表示,研究所可能会选择不止一种算法:"在使用中,有几个系统可能会被量子计算机破坏——比如公开密钥加密和数字签名,举两个例子——我们将需要针对每种系统的不同解决方案。",NIST从所有提交的算法中选择了82个候选方案供进一步考虑。2019年初,这一进程进入第二阶段。今天,仍有26种算法争论。张贴-量子密码术:它到底是什么?我为什么需要它?1994年,彼得·肖尔在量子计算方面有了重大发现。他发现了一种整数因式分解和计算离散对数的算法,这两种算法在经典情况下都很难解决。从那时起,很明显,RSA和椭圆曲线密码(ECC)等密码系统所依赖的"难题"——分别是整数分解和计算离散对数——可以通过量子计算有效地解决。量子计算机可以帮助解决一些经典计算机上难以解决的问题。从理论上讲,他们可以有效地解决数学中的一些基本问题。这种惊人的计算能力将是非常有益的,这就是为什么公司实际上正在试图建造量子计算机。起初,肖尔的算法只是一个理论上的结果——强大到足以执行它的量子计算机并不存在——但这种情况正在迅速改变。2018年3月,谷歌宣布推出72量子位通用量子电脑。虽然这还不足以打破RSA-2048(还需要更多),但许多基本问题已经解决。在广泛应用量子计算的预期中,我们必须开始从经典的公钥密码原语向后量子(PQ)方案的过渡。也许消费者永远也拿不到量子计算机,但少数强大的攻击者谁将得到一个仍然是一个严重的威胁。此外,在当前TLS握手和密文被捕获和存储的假设下,未来的攻击者可以破解这些存储的单个会话密钥,并使用这些结果来解密相应的单个密文。即使是强有力的安全保障,如前向保密,也帮不了什么忙在那里。进去2006年,学术研究界发起了一个系列会议,致力于寻找RSA和ECC的替代品。这种所谓的后量子密码术应该在经典计算机上高效运行,但它也应该是安全的,以防量子计算机执行的攻击。作为一个研究领域,它在人气好几个包括谷歌(Google)、微软(Microsoft)、迪吉塞特(Digicert)和泰利斯(Thales)在内的公司已经在测试部署PQ加密技术的影响。Cloudflare也参与了其中的一些工作,但我们希望成为一家在这方面处于领先地位的公司。我们需要做的第一件事是了解部署PQ加密技术的实际成本,而这在全部。什么我们有选择吗?许多提交给NIST项目的文件仍在研究中。有些是非常新的,很少被理解;另一些则更成熟,已经作为rfc标准化了。有些已经被打破或退出了这个过程;另一些则更为保守,或者说明了经典密码学需要推进到什么程度,这样量子计算机才能在合理的成本内破解它。有些是非常缓慢和巨大的,其他不是。但是大多数密码方案可以分为以下几种:基于格的、多元的、基于散列的(仅签名)、基于代码的和同系的-基于。为然而,有人担心,在今天的互联网上使用这些算法可能太不方便了。我们还必须能够将新的加密方案与现有的协议(如SSH或TLS)集成。为此,PQ密码系统的设计者必须考虑这些特性物质:引起的延迟通过在通信信道的两端进行加密和解密,假设各种各样的设备,从大而快的服务器到速度慢和内存受限的物联网设备小公钥和签名,以最小化带宽清晰的设计,允许密码分析和确定可以利用现有硬件快速实现的弱点后量子公钥的工作密码系统必须在组织、政府、密码学家和公众的视野中进行。新出现的想法必须经过这个社区的适当审查,以确保广泛传播支持。帮助为了更好地理解后量子世界,Cloudflare开始试验这些算法,并使用它们在TLS连接中提供机密性。在Google的帮助下,我们提出了一个大规模的实验,结合客户端和服务器端的数据收集来评估密钥交换算法在实际用户设备上的性能。我们希望这个实验有助于为未来的互联网选择一种具有最佳特性的算法。凭借Cloudflare高度分布式的接入点网络和谷歌的Chrome浏览器,两家公司在这方面都处于非常有利的地位实验。我们的我们的目标是了解这些算法在实际网络上被实际客户使用时的行为,特别是在公钥或密文大小上有显著差异的候选算法。我们的重点是在基于HTTPS的web上使用的传输层安全性(TLS)上下文中,不同的密钥大小如何影响握手时间。我们的主要候选方案是一个基于NTRU的结构,称为HRSS-SXY(由Hülsing-Rijneveld-Schanck-Schwabe和Tsunekazu Saito-Keita Xagawa-Takashi Yamakawa)和一个基于等代的超奇异等代密钥封装(SIKE)。这两种算法的细节在下面的"深入研究后量子密码术"一节中有更详细的描述。下表显示了这两种算法的一些特性。性能计时是通过在Intel Skylake CPU上运行BoringSSL速度测试获得的。KEM公司公钥大小(字节)密文(字节)密钥大小(字节)KeyGen(操作/秒)包含(操作/秒)十位数(操作/秒)NIST级别HRSS-SXY 1138 1138 32 3952.3 76034.7 21905.8 1SIKE/p434 330 346 16 367.1 228.0 209.3 1目前最常用的密钥交换算法(根据Cloudflare的数据)是非量子X25519。它的公钥是32个字节,BoringSSL可以生成49301.2个密钥对,并且能够在MySkylake上每秒执行19628.6个密钥协议CPU注意事项HRSS-SXY显示出显著的速度优势,而赛克则具有尺寸优势。在我们的实验中,我们将在使用Cloudflare基础设施的服务器端和使用Chrome Canary的客户端部署这两种算法;双方都将使用这两种PQ算法收集有关TLS握手的遥测信息,以了解它们在练习。什么我们能找到吗?2018年,亚当·兰利(Adam Langley)进行了一项实验,目的是评估TLS中后量子密钥交换的潜在影响。Chrome被扩展到在TLS ClientHello(随机噪声的固定字节数)中包含一个虚拟的、任意大小的扩展。在考虑了不同类型的密钥交换方案的性能和密钥大小后,他得出结论:基于结构化格的构造可能最适合将来在TLS中使用。然而,兰利也观察到了一个奇怪的现象:在第95个百分位测量的客户连接的潜伏期比中位数高得多。这意味着在这些情况下,基于同系同源的系统可能是一个更好的选择。在"深入后量子密码学"中,我们描述了基于同系同源的SIKE和基于晶格的NTRU之间的区别密码系统我们的实验,我们想更彻底地评估和归因于这些意外的潜伏期增加的根本原因。我们特别想了解这些网络的特性:什么导致延迟增加?基于同系进化算法的性能代价如何影响TLS握手?我们想回答关键问题,比如:什么是速度与密钥大小的比率是否合适(或赛克能以多快的速度实现客户对人力资源系统的感知性能)?当客户端使用新的PQ算法时,网络中间盒的行为如何?哪些网络有问题的中间盒?客户端网络的不同特性如何影响不同PQ密钥交换的TLS性能?我们是否可以识别特定的自治系统、设备配置或网络配置,以支持一种算法而不是另一种算法?长尾对性能有何影响?实验设计我们的实验将涉及服务器端和客户端性能统计数据的收集,这些数据来自世界各地的真实用户(所有数据都是匿名的)。Cloudflare正在操作服务器端TLS连接。我们将在所有TLS终端边缘服务器上启用CECPC2(HRSS+X25519)和CECPC2B(SIKE+X25519)密钥协商算法。在这个实验中,ClientHello将包含一个CECPQ2或CECPQ2b公钥(但决不能同时包含两者)。此外,Chrome将始终为不包含X25519的服务器提供支持