使用混合后量子 TLS Amazon KMS - Amazon Key Management Service
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅 中国的 Amazon Web Services 服务入门 (PDF)

本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。

使用混合后量子 TLS Amazon KMS

Amazon Key Management Service (Amazon KMS) 支持传输层安全 (TLS) 网络加密协议的混合后量子密钥交换选项。当您连接到 Amazon KMS API 终端节点时,可以使用此 TLS 选项。这些混合后量子密钥交换功能是可选的,至少与我们目前使用的 TLS 加密一样安全,并且有可能会提供额外的长期安全优势。不过,与目前使用的传统密钥交换协议相比,它们会影响延迟和吞吐量性能。

您发送到 Amazon Key Management Service (Amazon KMS) 的数据在传输过程中受到传输层安全 (TLS) 连接提供的加密保护。借助 Amazon KMS 支持对 TLS 会话使用的传统密码套件,使得对密钥交换机制进行的暴力攻击在现有技术下是不可行的。不过,如果大规模量子计算在未来得到广泛应用,那么 TLS 密钥交换机制中使用的传统密码套件将会容易受到这些攻击。如果您开发的应用程序依赖于通过 TLS 连接传输的数据的长期机密性,则应考虑在大规模量子计算机可供使用之前迁移到后量子密码学的计划。 Amazon 正在努力为这个未来做准备,我们也希望你也做好充分的准备。

为了保护当今加密的数据免受未来潜在的攻击, Amazon 正在与密码学界一起开发抗量子算法或后量子算法。我们已经实现了混合后量子密钥交换密码套件 Amazon KMS ,该套件结合了经典和后量子元素,以确保您的TLS连接至少与经典密码套件一样强大。

在大多数情况下,这些混合密码套件可用于您的生产工作负载。 Amazon Web Services 区域但是,由于混合密码套件的性能特征和带宽要求与经典密钥交换机制不同,因此我们建议您在不同的条件下在 Amazon KMS API 调用中对其进行测试

反馈

与以前一样,我们希望您能够提供反馈并参与我们的开源存储库。我们尤其希望了解您的基础设施如何与新形式的 TLS 流量进行交互。

  • 要提供有关本主题的反馈,请使用此页面右上角的反馈链接。

  • 我们正在开源中开发这些混合密码套件 s2n-tls存储库已打开 GitHub。要提供有关密码套件可用性的反馈或分享新颖的测试条件或结果,请在中创建问题 s2n-tls 存储库。

  • 我们正在编写使用混合后量子 TLS Amazon KMS 的代码示例 aws-kms-pq-tls-example GitHub 存储库。要提问或分享有关将 HTTP 客户端或 Amazon KMS 客户端配置为使用混合密码套件的想法,请在中创建问题 aws-kms-pq-tls-example 存储库。

支持的 Amazon Web Services 区域

后量子 TLS Amazon KMS 适用于除中国(北京)和中国(宁夏)以外的所有 Amazon Web Services 区域 Amazon KMS 支持国家。

注意

Amazon KMS 不支持中的 FIPS 端点的混合后量子 TLS。 Amazon GovCloud (US)

有关每个 Amazon KMS 终端节点的列表 Amazon Web Services 区域,请参阅中的Amazon Key Management Service 终端节点和配额Amazon Web Services 一般参考。有关 FIPS 端点的信息,请参阅《Amazon Web Services 一般参考》中的 FIPS endpoints

关于 TLS 中的混合后量子密钥交换

Amazon KMS 支持混合后量子密钥交换密码套件。您可以在 Linux 系统上使用 Amazon SDK for Java 2.x 和 Amazon 通用运行时来配置使用这些密码套件的 HTTP 客户端。然后,每当您使用 HTTP 客户端连接到 Amazon KMS 终端节点时,都会使用混合密码套件。

此 HTTP 客户端使用 s2n-tls,这是 TLS 协议的开源实现。混合密码套件 s2n-tls 使用仅用于密钥交换,不适用于直接数据加密。在密钥交换过程中,客户端和服务器会计算将用于加密和解密传输中的数据的密钥。

那些算法 s2n-tls 用途是一种混合体,它结合了当今在 TLS 中使用的经典密钥交换算法 Elliptic Curve Diffie-Hellman(ECDH)和基于模块格子的密钥封装机制(ML-KEM),这是一种公钥加密和密钥建立算法,被美国国家标准与技术研究所(NIST)指定为其第一个标准的后量子密钥协议算法。此混合算法单独使用每个算法来生成密钥。然后,以加密方式结合使用这两个密钥。With s2n-tls,你可以将 HTTP 客户端配置为首选后量子 TLS,这样将 ECDH 放在 ML-KEM 首选项列表中的第一个。传统密钥交换算法包含在优先列表中以确保兼容性,但它们的优先顺序较低。

使用混合后量子 TLS Amazon KMS

您可以使用混合后量子 TLS 来调用。 Amazon KMS在设置 HTTP 客户端测试环境时,请注意以下信息:

传输中加密

中的混合密码套件 s2n-tls 仅用于传输中的加密。当您的数据从您的客户端传输到 Amazon KMS 终端时,它们会保护您的数据。 Amazon KMS 不使用这些密码套件对下的数据进行加密。 Amazon KMS keys

取而代之的是,在 KMS 密钥下 Amazon KMS 加密您的数据时,它使用带有 256 位密钥的对称加密和伽罗瓦计数器模式下的高级加密标准 (AES-GCM) 算法,该算法已经具有量子抗性。理论上,在未来针对使用 256 位 AES-GCM 密钥创建的密文的大规模量子计算攻击中,密钥的有效安全性将会降至 128 位。这个安全级别足以使对 Amazon KMS 密文进行暴力攻击变得不可行。

支持的系统

在中使用混合密码套件 s2n-tls 目前仅在 Linux 系统上支持。此外,只有支持 Amazon 公共运行时的密码套件 SDKs 才支持这些密码套件,例如。 Amazon SDK for Java 2.x有关示例,请参阅配置混合后量子 TLS

Amazon KMS 端点

使用混合密码套件时,请使用标准 Amazon KMS 端点。 Amazon KMS 不支持经过 FIPS 140-3 验证的端点的混合后量子 TLS

当您将 HTTP 客户端配置为首选后量子 TLS 连接时 s2n-tls,后量子密码在密码首选列表中排名第一。但是,在优先列表中,传统非混合密码处于较低的优先顺序,以便实现兼容性。当你将 HTTP 客户端配置为首选带有经 Amazon KMS FIPS 140-3 验证的端点的后量子 TLS 时,s2n-tls 协商经典的非混合密钥交换密码。

有关每个 Amazon KMS 终端节点的列表 Amazon Web Services 区域,请参阅中的Amazon Key Management Service 终端节点和配额Amazon Web Services 一般参考。有关 FIPS 端点的信息,请参阅《Amazon Web Services 一般参考》中的 FIPS endpoints

预期性能

我们早期的基准测试表明,混合密码套件在 s2n-tls 比传统的 TLS 密码套件慢。根据网络配置文件、CPU 速度、内核数量和调度速率的不同,效果也不尽相同。有关更多信息,请参阅Amazon 后量子密码学迁移计划

要了解有关后量子 TLS 的更多信息,请参阅 Amazon KMS

有关在中使用混合后量子 TLS 的更多信息 Amazon KMS,请参阅以下资源。