Oracle:为后量子密码学做准备

量子计算机的运算速度有望比传统计算机快数倍。量子计算有望让我们解决更复杂的问题,并有可能极大地影响我们的人工智能方法。

然而,量子计算的一个不良影响是加速了某些加密算法的过时。由于量子计算机有可能更快地执行包括密码分析计算在内的复杂计算,它们将能更快地破解当今被认为是安全的密码机制。

虽然业界目前对量子计算机何时实用化(或何时可供恶意国家行为者使用)还不一定达成一致,但我们需要为传统加密方案的淘汰做好规划。我们面临的挑战是,如何提出既能在传统计算机上运行,又能抵御来自现有计算机和量子计算机攻击的加密机制。

这一挑战被通俗地称为 “后量子密码学”(PQC)

所有现有的加密机制,包括使用 RSA、ECDH 和 ECDSA 等非对称加密技术的机制,都可能被量子计算机削弱或完全破解。加密功能的所有用例,包括在静态和传输过程中执行加密以及确保真实性的机制,都将受到影响。

采用后量子加密技术的一般挑战

在现有应用中启用后量子加密技术会面临一些一般性挑战:

  1. 我们需要使用监管机构和行业团体认可的标准。例如,联邦信息处理标准(FIPS)已经更新,以应对后量子加密技术。
  2. 我们需要确保使用最新加密机制的系统具有持续的互操作性(因此,标准以及 PQC 安全参数和算法的选择非常重要)。
  3. 我们需要在基础技术中为客户提供易于采用的 PQC 解决方案,同时致力于降低引入稳定性或性能问题的几率。 这些解决方案应满足客户的各种要求(基于其组织、地理和监管要求)。
  4. 我们需要提供具有新的应用程序接口 (API) 的产品或库,以同时满足传统和 PQC 要求(例如,关键封装 API),从而帮助实现与传统应用程序的互操作性。

抗量子计算机加密

在考虑静态数据加密时,目前的共识是传统加密机制对量子计算机攻击的抵抗力只有传统加密机制的一半。换句话说,通过将对称密钥大小增加一倍或将哈希输出长度增加一倍,就能达到与量子计算机相同的保护水平(即传统计算机破解加密所需的时间)。

很明显,简单地将对称密钥大小增加一倍作为一种可能的 PQC 解决方案的前景是令人信服的,因为这并不意味着要做出更重大的改变(例如,改变所使用的算法)。

但是,这种方法要求我们能够保持数据加密密钥的机密性。这些数据加密密钥通常由存储在密钥管理服务(例如密钥库)中的主加密密钥封装,通常利用硬件安全模块(HSM)。如果密钥管理服务是远程提供的,那么我们就需要确保使用安全通信,以避免数据加密密钥在通过网络通信时暴露。 换句话说,在考虑静态数据加密时,特别是在企业级部署中,我们还需要确保通信协议的量子安全。这意味着,在网络上共享数据加密密钥只能通过量子安全协议来完成,如带有 PQC 密码套件的 TLS 1.3,以避免其在传输过程中被截获。

密码学与安全网络通信

在考虑网络通信安全的需求时,我们需要区分主动和被动量子计算机攻击。

主动攻击是指恶意行为者通过中间人攻击,试图利用量子计算机实时破解通信协议。在量子计算机出现并能够实施主动攻击之前,没有必要改变当前的公钥基础设施机制,包括用于网络密钥交换的机制。各组织可以继续使用 ECDSA 和 RSA 证书进行通信,以防范主动的中间人网络攻击。

被动攻击被称为 “先收获后解密 ”攻击。要减轻潜在被动攻击的影响,企业现在就必须做出一些改变。

先收获后解密 “方案

安全专业人员对 “先收获,后解密 ”的情况忧心忡忡。人们认为,恶意行为者,特别是拥有大量计算资源的国家行为者,正在收集(“收获”)大量加密数据(通过拦截传输中的加密数据或在成功入侵系统后外泄静态加密数据),意图在以后利用量子计算机解密这些数据。这种担忧导致现在采用 PQC 策略,即使量子计算机目前还不能用于实际攻击。

在保护静态数据免受 “先收获后解密 ”攻击方面,最重要的优先事项仍然是正确配置系统,从一开始就防止加密数据外泄。这需要收紧系统访问权限、确保有限权限、及时应用安全更新等。这里的加密是第二道防线,因为它的目的是在成功入侵后防止以加密形式外泄的数据被解读。如前所述(见 “抗量子计算机加密”),企业可以考虑将对称加密中使用的密钥大小增加一倍,以便在后量子时代保持相同的保护级别。 不过,这需要假定密钥得到了适当的保护,并且在系统被入侵时没有被盗(因此需要将密钥存储在安全的保险库中,这反过来又要求在保险库和使用密钥的系统之间安全地共享密钥)。

关于保护传输中的数据免受 “先收获后解密 ”攻击(被动网络攻击),最简单的解决方案是在保留传统握手签名和当前公钥基础设施(PKI)的同时,使通信协议密钥交换具有量子安全性。甲骨文公司正在考虑其他更复杂的解决方案,如 KEMTLS,这些解决方案需要对协议级代码进行较大的更改和/或 PKI 更改,未来可能会根据具体情况实施。

长期文档签名怎么办?

加密功能通常用于帮助确保某些文档(包括长期文档)的真实性和完整性。长期文件的例子包括固件和电子签署的文件,如法律协议。

我们需要采用能够在长时间(法律文件以年计算)内持续认证这些文件有效性的机制。 我们还需要考虑签名固件能够启用其他重要的安全机制,帮助抵御复杂的基于硬件的攻击。例如,各种平台上的安全启动等机制(如通过统一可扩展固件接口 (UEFI))都依赖加密功能来验证固件。

随着加密机制不断更新,以提供更多抵御基于量子的攻击的能力,我们还需要继续建立机制,以验证遗留系统中长期文件的有效性。

甲骨文PQC战略要点

甲骨文正在实施一项过渡战略,该战略将有助于为后量子时代做好准备,同时保持现有的技术能力,并防止出现与客户产品和云服务中经典加密机制的兼容性问题。

为了防范被动攻击,甲骨文公司的密码学和开发团队正按照以下原则开展工作:

  1. 加密技术提供商: 从FIPS 203 ML-KEM密钥封装算法开始,甲骨文的密码学团队正在我们的密码学提供商中实施最新的FIPS认证算法。这是甲骨文产品和云服务使用的现有加密协议增加量子安全功能的第一步。
  2. 混合密钥建立: 下一步,甲骨文将为大多数环境实施混合密钥建立。这种方法结合了经典和量子安全机制,可在TLS 1.3、SSH和IKE v2等协议中生成共享密钥。 这种混合模式可无缝集成到现有协议中,无需更改公钥基础架构或签发新证书。这种方法还只需对当前 IETF RFC 中的协议进行最小限度的调整。甲骨文公司还将根据美国国家安全商用算法套件 2.0(CNSA 2.0)的要求,为美国监管系统提供非混合密钥建立解决方案。
  3. 在 Java 和数据库等基础技术中提供易于采用的解决方案,降低稳定性和性能风险。

根据这些目标,甲骨文目前的 PQC 方法可概括如下:

  • 静态数据加密转为 AES 256
  • 利用不同协议中的混合密钥交换进行传输中的数据加密。
  • 通过直接信任公开密钥,在不改变 PKI 的情况下实施 FIPS 204 ML-DSA 签名。这适用于各种长期或短暂方案。
  • 随着时间的推移,随着PQC算法在业界的实施和被更广泛地接受,Oracle预计将推出纯PQC证书和新的签名。这些 PQC 证书将对现有证书(如 ECDSA 证书)进行补充,以帮助应对活跃的量子计算威胁。
  • 关于固件和长期文件签名:
    • 在过渡期间,Oracle 计划同时使用经典和 PQC 签名。这将使企业能够逐步淘汰旧机制,采用抗量子机制。甲骨文在固件签名方面的目标是,通过在硬件安全模块中采用无状态签名或基于有状态哈希的数字签名来反映这些系统的预期安全保证级别,从而与现有的政府和行业要求(包括商用国家安全算法套件 2.0 (CNSA 2.0) 要求)保持一致。
    • 签名验证并不一定意味着要利用现有的公钥基础设施(PKI)。在某些情况下,可以直接建立对公钥的信任,而无需借助第三方机构。 例如,甲骨文公司就控制着 Oracle Linux 等操作系统的信任根。

今后,甲骨文可能会以特定产品和服务的 PQC 路线图的形式向客户提供更多信息。

Java 的例子

甲骨文公司通过 Java 增强过程(“JEP”)不断取得进展并收集反馈意见,以便将 PQC 增强功能引入 Java 开发工具包 (JDK)。

因此,Oracle 对 Java Cryptography Extension (JCE) 进行了增强:

此外,现有 Java 路线图中已经实施或计划实施新算法,例如

甲骨文已开始为 Java 开发 PQC TLS 机制,并将在未来版本中发布。

此外,Oracle 还打算将更新的 TLS 机制和 PQC 支持回传至长期支持版本,其方式与 Oracle 为 Java SE 8(最初于 2014 年发布)回传 TLS 1.3 实现(于 2018 年完成)的方式类似。这些回溯将由客户需求驱动,以便在现有 Java 应用程序中尽可能多地启用 PQC。

对甲骨文客户的建议: 为后量子加密技术做好准备

甲骨文建议客户:

  1. 从最关键的系统开始审查其加密策略。
  2. 立即转向 TLS 1.3!
  3. 集中精力实施或遵守现有标准。如果 “标准 ”最终没有被广泛接受,当前的许多举措可能会昙花一现,造成投资浪费。
  4. 同样,客户在考虑商业或开源实体提出的 PQC 时也应谨慎。目前还没有 “放之四海而皆准 ”的后量子加密终极解决方案。
  5. 最后,参与开发本地应用程序的组织应考虑其库存中是否存在第三方组件,因为这些组件可能会更新或淘汰。Java 用户应参考本博客的前一部分,并尽量与当前的 Java 版本保持一致!

本文文字及图片出自 Preparing for Post Quantum Cryptography

你也许感兴趣的:

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注