谷歌的后量子密码学威胁模型

1. 引言

若现在不使用量子安全算法来加密数据,能够存储当前通信的攻击者最快十年内就能对其解密。这种先存储后解密的攻击是当前采用后量子密码学 (post-quantum cryptography,PQC) 背后的主要动机,但其他未来的量子计算威胁也需要一个深思熟虑的计划——将当前的经典密码算法迁移到PQC。

本文探讨优先考虑量子威胁的主要考虑因素是:

  • 所讨论的量子攻击的可行性。
  • 存在先存储后解密攻击。
  • 需要具有数十年使用寿命的固定公钥的应用场景。
  • 需 对可能需要大量重新设计才能与后量子算法配合使用的系统进行探索性研究,特别是在需要更广泛的行业协作的情况下。

量子计算机主要通过两种算法威胁密码学:

  • 用于分解整数和求解离散对数的 Shor 算法
  • 可反转黑盒函数的 Grover 搜索算法。

如前所述,确定优先级的一个主要考虑因素是:

  • 若对手将来能够访问量子计算机,那么当前的系统是否已经面临风险。现在存储密文并稍后解密是一个典型的例子,需要在量子计算机出现之前就部署 PQC。

基于此,可将密码学大致分为四种不同的技术:

  • 非对称加密和密钥协商:使用私钥/公钥对建立可用于对称加密的密钥。受 Shor 算法影响,容易受到“先存储后解密”攻击。
  • 数字签名:使用私钥/公钥对来验证数据并提供不可否认性。受 Shor 算法影响,但不容易受到“先存储后解密”攻击。
  • “Fancy”密码学:此类取决于特定算法和用例,但许多隐私保护技术(如 盲签名、 Oblivious pseudorandom function, ORPF等)将受到 Shor 算法的影响,且部分容易受到“先存储后解密”的影响。其中许多技术需要进一步研究。建议仔细评估量子威胁对这些计划的影响。
  • 对称密码学:使用单个密钥来加密和验证数据。目前认为对称密码学不会在所有实际用途上受到量子计算机的影响。Grover 算法可用作攻击手段,但目前认为即使对于medium-term量子计算机也是不可行的。(详情参见2017年论文Reassessing Grover’s Algorithm。)

2. 密码学算法及混合部署

NIST一直致力于标准化新的量子安全算法,以解决非对称加密和密钥协议以及数字签名问题。相关算法有:

算法类型公钥大小密文/签名大小
ECDH(经典算法)密钥协商32字节32字节
ECDSA(经典算法)数字签名32字节64字节
Kyber-768/ML-KEM-768密钥协商1184字节1088字节
Dilithium3/ML-DSA-65数字签名1952 字节3309字节
SPHINCS±128s/SLH-DSA-128s数字签名32字节7856 字节

NIST 计划发布更多密钥协商和签名标准,详情见:

  • Post-Quantum Cryptography PQC Round 4 Submissions
  • Post-Quantum Cryptography: Digital Signature Schemes

以便制定基于更广泛的数学假设的方案,并允许在公钥大小和密文/签名大小之间进行不同的权衡。

虽然目前提出的 PQC 算法在过去十年中已接受了大量的密码分析,但它们仍然不如经典密码学成熟,建议是以混合方式来使用经典密码学和PQC,这要求攻击者同时破解经典算法和后量子算法。

3. 密码学应用场景

经典密码学广泛应用于现代软件和基础设施中。后量子密码学将影响许多现有的部署。接下来将针对不同的用例给出了建议,但请注意,标准仍在制定中,这些标准将成为使用哪种算法的更明确的指导。

3.1 传输中的加密

传输中的加密主要包括 TLS、SSH、安全消息传递(如RCS, Messages End-to-End Encryption Overview和 MLS中使用的 Signal )以及 Google 的 ALTS。这里的主要威胁是先存储后解密。
因此,部署像 Kyber(ML-KEM、FIPS 203)这样的 PQC 密钥封装方案迫在眉睫。
为了减轻这种威胁:

  • 只需要在初始密钥协议中添加一个临时 PQC 密钥即可。
  • 长期 PQC 密钥(如公共或私有 CA)属于公共密钥基础设施,并且需要社区达成共识才能进行有意义的部署。

传输中加密的好消息是堆栈数量有限。与 Google 最相关的有:

  • TLS, Protecting Chrome Traffic with Hybrid Kyber KEM
  • SSH, Secure Shell (SSH) Key Exchange Method Using Hybrid Streamlined NTRU Prime sntrup761 and X25519 with SHA-512: sntrup761x25519-sha512
  • Signal, The PQXDH Key Agreement Protocol
  • ALTS, Securing tomorrow today: Why Google now protects its internal communications from quantum threats

在撰写本文时,这些都已开始推出 PQC 算法。传输中加密所需的密钥的短暂性,使得这个用例虽然最紧迫,但出于技术和社会原因也是相对最简单的。

当前对传输中加密的建议是使用 Kyber768 与 X25519 或 P256 混合进行密钥协商。

3.2 固件签名

固件签名用于保护 安全启动信任链的根。这些签名的公钥通常必须被刻录到硅芯片中,或以其他方式防止被更改和篡改。
这使得在大多数情况下无法更改此用例的签名方案。对于寿命长达十年或更长的设备,最终会遇到与“先存储后解密”攻击类似的情况,现在需要实施量子安全算法,因为无法稍后对其更改。由于加密算法的硬件实现通常涉及较长的生产时间,这使得情况变得更加复杂。

当前对固件签名的建议是使用基于无状态哈希的签名方案 SPHINCS+(FIPS 205、SLH-DSA)。

3.3 软件签名

软件签名与固件签名类似,需要保证安全启动并使部署能够防止二进制文件和源代码被篡改。与固件签名不同,软件签名的公钥通常可以更新,并依赖较低级别的签名来确保真实性。最重要的是,二进制文件和源代码通常都相当大,并且签名和验证都不是特别受资源限制。这为该应用场景提供了最大的灵活性和相对宽松的时间表。

该应用场景正在大量开发,尽管时间表相对宽松,但将 PQ 签名包含在当前正在编写的标准中可能是有意义的。

对此,当前的建议是:

  • 使用 Dilithium3(FIPS 204、ML-DSA)与 ECDSA/EdDSA/RSA 混合,或使用 SPHINCS+(FIPS 205、SLH-DSA)。

3.4 公钥基础设施

公钥基础设施是用于为传输中的加密提供真实性以及机器和人员的可靠身份的基础设施。

PKI 通常依赖于证书链,即带有附加签名的公钥,该签名可由链中较高级别的密钥验证。这使得当前形式的 PKI 极易受到后量子方案规模增加的影响。单个 Dilithium3 签名 + 公钥大于 5kB,使得任何带有中介的 PKI 部署都非常昂贵。特别是对于 Web PKI,当数据包增长超过 10 - 30 kB 时,某些设备就会开始出现故障(详情见2021年11月8日博客Sizing Up Post-Quantum Signatures)。这个问题可能是可以解决的,但无论如何都会造成严重的性能损失。

有几种替代方法可以简单地用量子安全签名替换经典签名,这可以解决 PKI 的性能问题。目前正在寻求在这个领域进行试验,以收集数据以提供更可靠的建议。

3.5 token

数字签名的另一个广泛使用是无状态非对称令牌,如JSON Web Token(JWT)。使用对称加密技术或使用状态技术作为纵深防御措施的令牌不会受到量子威胁的影响。对于非对称令牌来说,主要困难是它们经常带来的大小限制。如,应该保存为 cookie 的令牌对于整个令牌可用的上限为 4096 字节。若以二进制编码,Dilithium3 签名将占用其中的 3309 个字节,而在采用 Base64 编码时,则需要4412 个字节将不符合此要求。

无状态令牌具有独立的安全问题,转向有状态令牌是谨慎的做法,只是为了确保系统更健壮。NIST 竞赛的第二个入口中的一些方案具有非常小的签名,但却又很大的公钥——可为解决令牌场景的另一种工具。

建议是:

  • 尽可能使用有状态令牌,因为它们具有额外的安全优势。

此外,希望在这个领域进行试验,收集数据以获得更可靠的建议。

3.6 其它

还有一些不属于以上分类的其它应用场景,如:

  • 在某些情况下,文档必须进行非对称加密,与传输中的加密分开。该用例主要包括通过 S/MIME 加密和签名的电子邮件,但也包括使用 HPKE 或 PGP 的各种协议,或直接使用数字签名。

另一种更重要的非对称加密协议是 HSM 的密钥导入。

这些用例对密文大小不太敏感,因此将 Kyber (FIPS 203/ML-KEM) 与 ECDH/X25519 混合使用应该不会带来太多挑战。特别是对于 S/MIME,多收件人设置可能会产生额外的困难。

与上面讨论的 HSM 相关但不等同的另一个用例是硬件信任根,如安全密钥或 TPM,它们在硬件限制方面面临着自己的困难。

隐私保护和其他更奇特的方案将需要额外的研究才能安全部署。

4. 威胁者和时间表

缺乏量子安全机密性和缺乏量子安全真实性都可能被威胁者利用。虽然对机密性的威胁更为直接,但对真实性的威胁往往影响范围更广,更具破坏性。

4.1 威胁者:国家

国家最有可能首先实现与密码相关的量子计算机。他们很可能会尝试以可否认的方式部署量子计算机,以避免向对手透露其能力。国家最有可能针对其他国家客户的云部署,并可能针对政治异见人士和其他监视目标。国家也可能出于军事或经济原因而针对谷歌或其他基础设施提供商。

虽然构建与密码相关的量子计算机很困难,但一旦机器建成,破解任何给定的公钥应该不会太昂贵。考虑到传输密钥加密的短暂性,最有可能的第一个目标将是 PKI 等所需的更多静态密钥,以及破坏被认为高度感兴趣的存储通信。随着量子计算机变得越来越便宜,它们可能会瞄准越来越多的受害者。

一些人担心国家可能会试图对 NIST 发布的算法进行后门或削弱,就像过去在 Dual_EC_DRBG, Dual EC: A Standardized Back Door的情况下所做的那样。为了消除此类担忧,NIST 标准是在 公开竞赛中设计的。此外,如果大多数部署都是混合方式,那么在量子计算机问世之前,单独破解 PQC 算法将无济于事,这让公众有几年的时间来发现任何潜在的后门。

4.2 威胁者:内部威胁

谷歌和其他公司正在致力于构建量子计算机,该计算机最终可能与密码学相关。与其他珍贵技术一样,内部威胁仍然是一个媒介。为此,公司需要采取必要的预防措施来保护他们的皇冠上的宝石,以避免被国家威胁和其他有动机的攻击者盗窃或利用。

4.3 威胁者:勒索软件和其他出于经济动机的威胁者

对于出于经济动机的威胁者来说,主要考虑因素是量子计算机的可用性。如果量子计算机的用例仍然有限,那么对于出于经济动机的威胁者来说,访问它们可能会太困难。如果它们可以直接或通过云部署以相对便宜的价格获得,很可能会看到它们通过利用尚未迁移到量子安全协议的领域来提取赎金或进行工业间谍活动。

4.4 威胁者:监管环境

PQC 已成为美国多项行政命令的热门话题,要求美国政府努力部署量子安全密码技术。CNSA 2.0, Announcing the Commercial National Security Algorithm Suite 2.0等监管框架 要求在相当短的时间内使用 PQC,FIPS 等其他合规框架也将很快跟进。除美国之外, 德国BSI 和 法国ANSSI 也一直活跃在这一领域,并开始要求提供 PQC 路线图以进行长期部署。

4.5 量子威胁时间表

在这里插入图片描述
全球风险研究所, 2023 Quantum Threat Timeline Report在上图中总结出所拥有的量子计算机风险的最佳总体时间线估计 。
根据这个时间表,并得到谷歌量子计算团队 Google Quantum AI的证实,与密码相关的量子计算机的主要风险是在 10 到 15 年的时间范围内。我们预计到 2030 年该领域将取得显着进步,这应该作为时间表的一个良好的中点检查。

不过,Steve Weis 2024年3月12日twitter Google’s threat model for post-quantum cryptography中指出,其认为谷歌评估“与加密相关的量子计算机的主要风险在 10 到 15 年的时间范围内”的可能性不大。需要增加约 4-5 个数量级的量子位,并将错误率降低约 2 个数量级。但不是每两年就有 10Xing 量子位。
在这里插入图片描述

5. 结论

尽管距离密码学相关的量子计算机的普及还有很长的时间,希望通过本文给出的概述能够帮助了解哪些领域面临的风险最大,以及目前应该开始关注的地方。

参考资料

[1] Steve Weis 2024年3月12日twitter Google’s threat model for post-quantum cryptography
[2] LANDSCAPE OF QUANTUM COMPUTING IN 2023
[3] 2024年3月11日博客 Google’s Threat model for Post-Quantum Cryptography

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/458493.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

macOS - 获取硬件设备信息

文章目录 1、CPU获取方式 一: system_profiler获取方式二:sysctl, machdepmachdep 2、内存3、硬盘4、显卡5、声卡6、光驱7、系统序列号8、型号标识符9、UUID 等信息 10. 计算机名称 1、CPU 获取方式 一: system_profiler % syst…

CKA认证之Etcd备份与恢复

题目介绍: 资料参考: https://kubernetes.io/zh-cn/docs/tasks/administer-cluster/configure-upgrade-etcd 解题: 1、备份 #参考模板列出 etcdctl 可用的各种选项。 #例如,你可以通过指定端点、证书和密钥来制作快照&#xff0…

计算机视觉——目标检测(R-CNN、Fast R-CNN、Faster R-CNN )

前言、相关知识 1.闭集和开集 开集:识别训练集不存在的样本类别。闭集:识别训练集已知的样本类别。 2.多模态信息融合 文本和图像,文本的语义信息映射成词向量,形成词典,嵌入到n维空间。 图片内容信息提取特征&…

大语言模型提示词技巧

LLM(Large Language Model)大语言模型时代,提示词(Prompt)很重要,而改进提示词显然有助于在不同任务上获得更好的结果。这就是提示工程背后的整个理念。 下面我们将介绍更高级的提示工程技术,使…

【办公类-40-01】20240311 用Python将MP4转MP3提取音频 (家长会系列一)

作品展示: 背景需求: 马上就要家长会,我负责做会议前的照片滚动PPT,除了大量照片视频,还需要一个时间很长的背景音乐MP3 一、下载“歌曲串烧” 装一个IDM 下载三个“串烧音乐MP4”。 代码展示 家长会背景音乐: 歌曲串…

科普|大数据信用高风险形成原因,怎么查询?

在大数据时代,基于大数据技术的大数据信用风险在很多时候是很多机构比较重视的问题,大数据信用风险主要包括多头借贷风险、履约行为风险、联系人风险、司法风险等。本文将详细为大家讲讲大数据信用高风险是怎么形成的?怎么查询?一起去了解一下吧。 大数…

leetCode刷题 13. 罗马数字转整数

目录 题目: 1. 思路 2. 解题方法 3. 复杂度 4. Code 题目: 罗马数字包含以下七种字符: I, V, X, L,C,D 和 M。 字符 数值 I 1 V 5 X 10 L …

Python 多种字符串处理函数介绍

Python 提供了丰富的字符串处理函数,用于执行各种字符串操作,如查找、替换、截取、转换等。以下是一些常用的 Python 字符串处理函数及其用法: 字符串长度和大小写转换 1. **len()**:返回字符串的长度。 2. **upper()**&#xff1…

如何区分工业以太网交换机和常规以太网交换机

工业以太网交换机和常规以太网交换机乍一看似乎很相似,但两者之间存在着一些关键区别。在本文中,我们将阐明这些差异,并为您提供一些快速区分两者的提示。 工业以太网交换机与常规以太网交换机的比较 工业以太网交换机和常规以太网交换机都…

[ai笔记15] openAI官方提示词工程文档(图文重排版本)

欢迎来到文思源想的ai空间,这是技术老兵重学ai以及成长思考的第15篇分享! 最近在学习prompt提示词技巧,一番研究发现其实提示词的技巧并不是限定死的,所谓技巧和心法更像是教导我们如何更清晰、更结构化的大模型聊天工具进行沟通…

SpringBoot +WebSocket应用

我们今天不研究原理,只看应用。 什么是WebSocket WebSocket是一种在单个TCP连接上进行全双工通信的协议。WebSocket通信协议于2011年被IETF定为标准RFC 6455,并由RFC7936补充规范。WebSocket API也被W3C定为标准。 WebSocket使得客户端和服务器之间的数…

Redis-复制功能

0 序言 复制功能是Redis提供的多机功能中最基础的一个,这个功能是通过主从复制(master-slave replication)模式实现的,它允许用户为存储着目标数据库的服务器创建出多个拥有相同数据库副本的服务器,其中存储目标数据库…

ES6:箭头函数中的this指向问题

普通函数中的this指向函数的调用者 例子: 黑马程序员的说法:箭头函数不会创建自己的this,它只会从自己的作用域链的上一层沿用this 尚硅谷的说法:this始终指向函数声明时所在作用域下的this的值 通俗理解就是箭头函数中找this&…

c#简易学生管理系统

https://pan.baidu.com/s/1kCPvWg8P5hvlf26nGf2vxg?pwdya45 ya45

中国钛合金自行车出口海外营销策略-大舍传媒

中国是世界上自行车产量最大的国家之一,而如今,它也在自行车制造领域迈出了一大步。Titan Super Bond与Bright Laser Technologies (BLT)合作,成功开发了中国和亚洲首款全3D打印钛合金自行车车架。 这款创新的自行车车架采用了BLT-A320机器&a…

国产三维声纳

最近几天后台有人问三维声纳的事情。目前市面上三维声纳用得比较多的是Coda Octopus的Echoscope系列产品,Echoscope系列已经从第3代4D版本发展到第4代PIPE版本(包含5D和6D),见下图。从它的介绍来看,3D是指采集三维立体…

PHP 生成图片

1.先确认是否有GD库 echo phpinfo(); // 创建一个真彩色图像 $image imagecreatetruecolor(120, 50);// 分配颜色 $bgColor imagecolorallocate($image, 255, 255, 255); // 白色背景 $textColor imagecolorallocate($image, 230, 230, 230); // 黑色文字// 填充背景 image…

Python数据分析-Numpy2

1.numpy读取数据 CSV:Comma-SeparatedValue,逗号分隔值文件 显示:表格状态 源文件:换行和逗号分隔行列的格式化文本,每一行的数据表示一条记录 由于csv便于展示,读取和写入,所以很多地方也是用csv的格式存储和传输中小型的数据,为了方便教学,我们会经…

浅谈C++的浅拷贝和深拷贝问题

今天我们来谈谈C的浅拷贝和深拷贝问题,这里先上定义,可以直接浏览下面的表格,比较直观😊😊😊 。在C中,浅拷贝和深拷贝是两种对象复制的方式,其中🐱浅拷贝(Sha…

最近很火的“30秒展现女孩的一生”AI视频制作全流程

最近很火的AI视频,30秒展现一个人的一生,我们来看一下制作流程 包含以下知识点 安装ComfyUI AnimeDiff插件使用Prompt travel描述视频画面 加载工作流文件 在BatchPromptSchedule这个节点里描述出画面的内容,前面的数字代表对应的帧数 &q…