本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
启用混合后量子 TLS
AWS SDKs 和工具的加密功能和配置因语言和运行时而异。AWS 软件开发工具包或工具目前通过三种方式提供 PQ TLS 支持:
SDKs 默认情况下启用 PQ TLS
注意
截至2025年11月6日,AWS SDK及其适用于macOS和Windows的底层CRT库使用TLS的系统库,因此这些平台上的PQ TLS功能通常取决于系统级支持。
适用于 Go 的 AWS SDK
AWS SDK for Go 使用 Golang 自己的标准库提供的 TLS 实现。从 v1.24 起,Golang 支持并更喜欢 PQ TLS,因此 AWS SDK for Go 用户只需将 Golang 升级到 v1.24 即可启用 PQ TLS
适用于 JavaScript (浏览器)的 AWS 开发工具包
适用于 JavaScript (浏览器)的 AWS 开发工具包使用浏览器的 TLS 堆栈,因此,如果浏览器运行时支持和首选 PQ TLS,则该软件开发工具包将协商 PQ TLS。Firefox 在 v132.0 中推出了对 PQ TLS 的支持。Chrome 宣布在 v131 中支持 PQ TLS。Edge 支持台式机版 v120 中的可选加入 PQ TLS,安卓版 140 版支持选择加入 PQ
适用于 Node.js 的 AWS SDK
从 Node.js v22.20 (LTS) 和 v24.9.0 开始,Node.js 静态链接和捆绑了 OpenSSL 3.5。这意味着 PQ TLS 在这些版本和后续版本中默认处于启用状态,并且首选。
适用于 Kotlin 的 AWS 开发工具包
从 1.5.78 版本开始,Kotlin SDK 支持并更喜欢在 Linux 上使用 PQ TLS。由于适用于 Kotlin 的 AWS 开发工具包基于 CRT 的客户端依赖于 macOS 和 Windows 上的 TLS 系统库,因此对 PQ TLS 的支持将取决于这些底层系统库。
AWS 开发工具包适用于 Rust
适用于 Rust 的 AWS 开发工具包为每个服务客户端分发不同的软件包(在 Rust 生态系统中称为 “板条箱”)。它们都在统一的 GitHub 存储库中进行管理,但每个服务客户端都遵循自己的版本和发布节奏。合并后的 SDK 于 25 年 8 月 29 日发布了 PQ TLS 首选项,因此在该日期之后发布的任何单个服务客户端版本都将默认支持并首选 PQ TLS。
您可以通过导航到相关的 crates.io 版本网址(例如,此处为
AWS 付款密码学)并查找 8 月 29 日至 25 日之后发布的第一个版本,来
选择加入 PQ TLS 支持
适用于 C++ 的 AWS SDK
默认情况下,C++ 开发工具包使用平台原生客户端,例如 libcurl 和。 WinHttpLibcurl 通常依赖系统 OpenSSL 来实现 TLS,因此只有在系统 OpenSSL 等于 v3.5 时,才会默认启用 PQ TLS。你可以在 C++ SDK v1.11.673 或更高版本中覆盖此默认值,然后选择加入默认支持和启用 PQ TLS AwsCrtHttpClient 的。
关于为选择加入 PQ TLS 构建的注意事项您可以使用此脚本获取 SDK 的 CRT 依赖项。
-DUSE_CRT_HTTP_CLIENT=ON \ -DUSE_TLS_V1_2=OFF \ -DUSE_TLS_V1_3=ON \ -DUSE_OPENSSL=OFF \
适用于 Java 的 AWS SDK
从 v2 开始,适用于 Java 的 AWS 开发工具包提供了 AWS 通用运行时 (AWS CRT) HTTP 客户端,可以将其配置为执行 PQ TLS。从 v2.35.11 开始,无论在哪里使用 PQ TLS,都会默认 AwsCrtHttpClient 启用并首选 PQ TLS。
SDKs 依赖系统 OpenSSL 的
有些 AWS SDKs 和工具依赖于系统的 TLS libcrypto/libssl 库。最常用的系统库是 OpenSSL。在 3.5 版本中,OpenSSL 支持 PQ TLS,因此为 PQ TLS 配置这些工具 SDKs 和工具的最简单方法是在至少安装了 OpenSSL 3.5 的操作系统发行版上使用它。
你也可以将 Docker 容器配置为使用 OpenSSL 3.5 在任何支持 Docker 的系统上启用 PQ TLS。有关为 Python 进行此设置的示例,请参阅 Python 中的后量子 TLS。
AWS CLI
AWS CL I 安装程序的 PQ TLS 支持即将推出。要立即启用,您可以使用 AWS CLI 的替代安装程序,该安装程序因操作系统而异,并且可以启用 PQ TLS。
对于 macOS,请通过 Homebrew 安装 AWS CLI,并确保将 Homebrew
对于 Ubuntu 或 Debian Linux:确保你使用的 Linux 发行版已将 OpenSSL 3.5+ 安装为系统 OpenSSL。然后,使用 apt 或 PyPI 安装 AWS CLI
适用于 PHP 的 AWS SDK
适用于 PHP 的 AWS 开发工具包依赖于系统 libssl/libcrypto。要使用 PQ TLS,请在至少安装了 OpenSSL 3.5 的操作系统发行版上使用此 SDK。
适用于 Python 的 Amazon SDK (Boto3)
适用于 Python 的 AWS 开发工具包 (Boto3) SDK 依赖于系统 libssl/libcrypto。要使用 PQ TLS,请在至少安装了 OpenSSL 3.5 的操作系统发行版上使用此 SDK。
适用于 Ruby 的 AWS SDK
适用于 Ruby 的 AWS 开发工具包依赖于系统 libssl/libcrypto。要使用 PQ TLS,请在至少安装了 OpenSSL 3.5 的操作系统发行版上使用此 SDK。
AWS SDKs 和不打算支持 PQ TLS 的工具
目前没有计划支持以下语言 SDKs 和工具:
适用于 .NET 的 AWS SDK
适用于 Swift 的 AWS
适用于 Windows 的 AWS 工具 PowerShell