英国:为后量子密码学做准备的后续步骤
2023-11-04 23:20:00
  • 0
  • 0
  • 0
  • 0

背景

英国在 2020 年白皮书《为量子安全密码学做好准备》中,阐述了量子计算机对当前密码学构成的威胁,以及美国国家标准与技术研究所 (NIST) 和欧洲电信标准研究所 (NIST) 等组织的工作( ETSI)来应对这一威胁。

量子计算机利用量子力学的特性以与当今数字“经典”计算机完全不同的方式进行计算。从理论上讲,它们能够执行传统计算机无法执行的某些计算。尽管量子计算技术不断取得进步,但当今的量子计算机仍然受到限制,并且在执行的每个操作中都存在相对较高的错误率。

未来,错误率可能会降低,从而出现大型通用量子计算机。然而,无法预测这种情况何时会发生,因为必须首先克服许多工程和物理挑战。如果将来存在这样的计算机,那么目前使用的大多数传统公钥加密 (PKC) 算法将很容易受到它的攻击。能够运行这些攻击的量子计算机被称为密码相关量子计算机(CRQC)。

这些传统的 PKC 算法包括:

基于整数分解的算法,例如 RSA

基于离散对数问题的算法,例如有限域 Diffie-Hellman、ECDH、DSA、ECDSA、EdDSA

这些算法主要用于密钥建立(用于同意安全通信的共享加密密钥)和数字签名(用于支持网络上的身份证明和信任)。

对于密钥建立和加密,存在攻击者今天收集和存储数据并在将来某个时候解密的风险。考虑到存储大量旧数据数十年的成本,这种攻击只有对于非常高价值的信息才可能是值得的。这意味着,对于需要为非常高价值的数据提供长期加密保护的组织来说,未来 CRQC 的可能性现在是一个相关威胁。

数字签名面临的威胁是,拥有 CRQC 的对手可以伪造签名来冒充合法的私钥所有者,或者篡改其真实性受数字签名保护的信息。应在 CRQC 存在之前考虑这种攻击,特别是在为具有较长运行寿命的高价值信任锚部署密钥时。

与PKC相比,对称密码学的安全性并没有受到量子计算机的显着影响,并且可以继续使用现有的至少128位密钥的对称算法(例如AES)。SHA-256等哈希函数的安全性也没有受到明显影响,安全哈希函数也可以继续使用。

NCSC 的建议仍然是,应对量子计算机对传统 PKC 威胁的最佳缓解方法是后量子密码术 (PQC),也称为量子安全密码术或抗量子密码术。PQC 算法将取代目前用于密钥建立和数字签名的易受攻击的 PKC 算法。PQC 算法的安全性基于数学问题,这些问题被认为对于经典计算机和量子计算机来说都是棘手的。这些算法不一定会直接替代协议或系统中当前的 PKC 算法,因此系统所有者应开始规划向 PQC 的迁移。

PQC 迁移对用户和系统所有者的影响

对于商品 IT 用户(例如使用标准浏览器或操作系统的用户),向 PQC 的切换将作为软件更新的一部分提供,并且应该无缝进行(理想情况下最终用户甚至不会意识到)。为了确保设备在可用时更新到 PQC,系统所有者应确保遵循 NCSC关于保持设备和软件最新的指南。

企业 IT 系统所有者(例如拥有旨在满足大型组织需求的 IT 系统的系统所有者)应与其 IT 系统供应商沟通其在产品中支持 PQC 的计划。

对于少数具有定制 IT 或运营技术的系统,例如在专有通信系统或架构中实施 PKC 的系统,系统和风险负责人需要选择最适合使用哪种 PQC 算法和协议。

企业和定制 IT 的技术系统和风险负责人应开始或继续进行财务规划,以更新其系统以使用 PQC。一旦最终标准和这些标准的实施可用,就可以计划在通常的技术更新周期内进行 PQC 升级。

迈向PQC标准化

自 2016 年以来,NIST 一直在运行一个标准化 PQC 算法的流程,并得到国际密码学界学术审查的支持。标准定义组织密切关注这一过程,包括:

互联网工程任务组 (IETF),他们一直致力于更新其协议以抵抗量子计算机

ETSI,一直在制定迁移和部署指南

NIST 选择了一种密钥建立算法:

ML-KEM(水晶-Kyber)

以及三种数字签名算法:

ML-DSA(晶体-二锂)

SLH-DSA (SPHINCS+)

FALCON

还有两种已经标准化的基于状态哈希的签名算法,它们也提供针对量子计算机的保护,但只能在用例的子集中使用。它们是 Leighton-Micali 签名 (LMS) 和扩展 Merkle 签名方案 (XMSS)。

ML-KEM、ML-DSA和SLH-DSA的标准草案已于2023年8月发布。这些算法的最终标准预计将于2024年发布。FALCON的标准草案将在未来发布。

NIST 标准草案将允许开发人员在其系统中测试这些算法,并在最终标准发布时制定部署这些算法的计划。在最终标准发布之前,标准草案可能会发生变化,因此存在基于草案标准的实施可能与最终标准不兼容的风险。因此,NCSC 强烈建议操作系统仅应使用基于最终 NIST 标准的实现。

这些算法需要在协议中实现,然后才能在互联网和其他网络中使用。IETF 正在更新最广泛使用的安全协议。这包括确保 PQC 算法可以合并到 TLS 和 IPsec 等现有协议中的密钥交换和签名机制中。后量子协议的 IETF 实现可能会发生变化,直到它们作为 RFC 发布为止。NCSC 强烈建议操作系统应使用基于 RFC 而不是互联网草案的协议实现。

为您的用例选择算法和参数

下表给出了 NCSC 推荐的算法、其功能和规格:

算法 功能 规格

ML-KEM 密钥建立算法 NIST 草案 - FIPS 203

ML-DSA 数字签名算法 NIST 草案 - FIPS 204

SLH-DSA 适用于签署固件和软件等用例的数字签名算法 NIST 草案 - FIPS 205

学习管理系统 适用于签署固件和软件等用例的数字签名算法 NIST SP 800-208

XMSS 适用于签署固件和软件等用例的数字签名算法 NIST SP 800-208

上述算法支持提供不同安全级别的多个参数集。较小的参数集通常需要较少的功率和带宽,但安全裕度也较低。相反,较大的参数集提供较高的安全裕度,但需要更大的处理能力和带宽,并且具有更大的密钥大小或签名。所需的安全级别可能会根据受保护数据的敏感性和生命周期、所使用的密钥或数字签名的有效期而有所不同。在密钥寿命特别长或保护需要长期安全的特别敏感数据的情况下,最高安全级别可能对密钥建立有用。它对于密钥具有特别长的生命周期的数字签名也可能很有用,例如在信任根中。

注意:

所有这些参数集为个人、企业和官方级政府信息提供了可接受的安全级别。

ML-KEM 和 ML-DSA 是适合通用用途的算法。NCSC 建议 ML-KEM-768 和 ML-DSA-65 为大多数用例提供适当级别的安全性和效率。

在考虑密钥/签名大小的情况下,或者在可能有助于解决性能问题的情况下(例如在受限设备中),用户可能希望使用较小的参数集。

基于哈希的签名

基于哈希的签名(例如 SLH-DSA、LMS 和 XMSS)依赖于与 ML-DSA 和 FALCON 不同的安全假设。它们不适合通用用途,因为签名很大并且算法比 ML-DSA 慢得多。然而,这些算法可能非常适合速度不是瓶颈的用例,例如签名固件和软件。

对于 LMS 和 XMSS,这些算法的安全性关键取决于用户正确管理状态(即知道哪些一次性密钥已用于签名,以便可以保证它们不再被使用)。状态管理是一个更容易处理的问题的情况包括固件和软件签名。ETSI 在其技术报告 TR 103 692 v1.1.1中就如何做到这一点提出了建议。LMS 和 XMSS 仅应在可以在签名密钥的生命周期内以可信方式管理状态的情况下使用。

对于难以或不可能保证一次性密钥不被重复使用的情况,SLH-DSA 提供了一种更强大的替代方案,因为状态管理并不简单,而且错误可能会损害安全性。尽管验证性能相似,但与 LMS 或 XMSS 相比,这种增强的稳健性伴随着明显更大的签名大小和更长的签名时间。

LMS 和 XMSS 可作为最终标准,而截至 2023 年 8 月, SLH-DSA 作为标准草案提供。

后量子传统(PQ/T)混合方案

PQ/T 混合方案(如本 IETF 草案中所定义)是一种将一种(或多种)PQC 算法与一种(或多种)传统 PKC 算法相结合的方案,其中所有组件算法都属于同一类型(例如,PQC 签名)算法与传统的 PKC 签名算法相结合,给出 PQ/T 混合签名)。

PQ/T 混合方案比单一算法的成本更高。PQ/T 混合方案的实施和维护将更加复杂,而且效率也较低。然而,由于互操作性、实现安全性或协议或系统施加的约束,有时可能需要 PQ/T 混合方案:

互操作性

在大型网络中,有必要采用分阶段的方法引入 PQC。这将导致一个需要同时支持PQC和传统PKC算法的时期。结合 PQ/T 混合方案的灵活协议将使具有不同安全策略的系统能够互操作,并且还应该允许迁移到仅 PQC 的未来。

实施安全

PQC 是一项新兴技术,虽然 NIST 拥有健全的流程来确保 PQC 算法的安全性,但需要时间来保证这些算法在待开发的协议和系统中的实现。因此,用户可能希望考虑将 PQC 与传统 PKC 结合使用,以构建一个保持安全的系统,即使其中一种实现不安全。

协议限制

某些协议可能存在技术限制,这意味着在添加对 PQC 的支持时很难删除传统的 PKC 算法。一个例子是需要避免 IKEv2 中的 IP 层分段。

PQ/T 混合方案的其他注意事项

有多种方式可以将PQ密钥建立算法与传统密钥建立算法相结合,得到PQ/T混合密钥建立方案。例如,使用 PQ/T 混合密钥建立机制,例如在混合 TLS 草案 ( draft-ietf-tls-hybrid-design-09 ) 中或在协议级别,例如在 IKE 设计 ( RFC 9370 ) 中。这两个协议已经过修改,以相对简单且向后兼容的方式合并 PQ/T 混合方案。

PQ/T 混合密钥建立机制应仔细设计,以确保混合机制不允许额外的攻击。截至 2023 年 11 月,ETSI 目前正在制定有关如何做到这一点的建议。

由于需要确保两个签名都以稳健的方式进行验证,因此提议的用于身份验证的 PQ/T 混合方案可能比用于保密的方案复杂得多。用于身份验证的 PQ/T 方案的研究活动也明显少于用于保密的研究活动,并且对于如何以安全的方式做到这一点尚未达成指导或共识。

公钥基础设施 (PKI) 利用身份验证算法来创建、存储、验证和撤销数字证书。在 PKI 内,很难单独更改单个签名算法。PKI 内的 PQ/T 混合身份验证需要一个可以生成和签署传统和后量子数字签名的 PKI,或者两个并行的 PKI(一个用于传统数字签名,一个用于后量子数字签名)。这种额外的复杂性和迁移 PKI 的难度意味着单次迁移到完全后量子 PKI 优于采用中间 PQ/T 混合 PKI。

PQ/T混合方案的建议

将来,如果存在 CRQC,传统的 PKC 算法将无法针对具有 CRQC 的攻击者提供额外的保护。此时,PQ/T 混合方案不会提供比单个后量子算法更高的安全性,但复杂性和开销显着增加。如果选择 PQ/T 混合方案,NCSC 建议将其用作临时措施,并且应在灵活的框架内使用,以便将来能够直接迁移到仅 PQC。

考虑到这一点,技术系统和风险负责人应权衡支持和反对 PQ/T 混合方案的原因,包括互操作性、实施安全性和协议约束,以及复杂性、维护更复杂系统的成本以及需要完成两次迁移(一次迁移到 PQ/T 混合方案,再次迁移到仅 PQC 算法作为未来的最终状态)。

概括

目前使用的大多数 PKC 算法都容易受到 CRQC 的影响。应对量子计算机对传统 PKC 威胁的最佳缓解方法是 PQC。

对称密码学的安全性不会受到量子计算机的显着影响,并且可以继续使用具有适当密钥大小的现有对称算法。

PQC 升级可以计划在通常的技术更新周期内进行。

ML-KEM (Kyber) 和 ML-DSA (Dilithium) 是 NIST 选择进行标准化的算法,适合通用用途。所有建议的参数集都为个人、企业和官方级政府信息提供了可接受的安全级别。NCSC 建议 ML-KEM-768 和 ML-DSA-65 为大多数用例提供适当级别的安全性和效率。

NCSC 强烈建议操作系统应仅使用基于最终标准的实现。

如果选择 PQ/T 混合方案,NCSC 建议将其用作临时措施,以便将来可以直接迁移到仅 PQC。

 
最新文章
相关阅读