View a markdown version of this page

Habilitar el TLS poscuántico híbrido - AWS SDK y herramientas

Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.

Habilitar el TLS poscuántico híbrido

AWS Los SDK y las herramientas tienen capacidades y configuraciones criptográficas que varían según el idioma y el tiempo de ejecución. Hay tres formas en las que un AWS SDK o una herramienta proporcionan actualmente compatibilidad con PQ TLS:

Los SDK con PQ TLS activado de forma predeterminada

nota

A partir de 6Nov-2025, el AWS SDK y las bibliotecas CRT subyacentes para macOS y Windows utilizan bibliotecas del sistema para TLS, por lo que las capacidades de TLS de PQ en esas plataformas suelen estar determinadas por la compatibilidad a nivel del sistema.

AWS SDK para Go

El AWS SDK para Go usa la implementación TLS propia de Golang proporcionada por su biblioteca estándar. Golang admite y prefiere PQ TLS a partir de la v1.24, por lo que los usuarios de AWS SDK para Go pueden habilitar PQ TLS simplemente actualizando Golang a la v1.24.

AWS SDK para (navegador) JavaScript

El AWS SDK para JavaScript (navegador) usa la pila de TLS del navegador, por lo que el SDK negociará el TLS de PQ si el tiempo de ejecución del navegador lo admite y lo prefiere. Firefox lanzó la compatibilidad con PQ TLS en la versión 132.0. Chrome anunció la compatibilidad con PQ TLS en la versión 1.3.1. Edge admite la opción PQ TLS en la versión 120 para escritorio y 140 para Android.

AWS SDK para Node.js

A partir de las versiones Node.js 22.20 (LTS) y 24.9.0, enlaza y agrupa OpenSSL 3.5 de forma Node.js estática. Esto significa que PQ TLS está habilitado y es el preferido de forma predeterminada para esas versiones y las posteriores.

AWS SDK para Kotlin

El SDK de Kotlin admite y prefiere PQ TLS en Linux a partir de la versión 1.5.78. Como el CRT-based cliente del AWS SDK para Kotlin depende de las bibliotecas del sistema para TLS en macOS y Windows, la compatibilidad con PQ TLS dependerá de las bibliotecas del sistema subyacentes.

AWS SDK para Rust

El AWS SDK de Rust distribuye paquetes distintos (conocidos como «cajas» en el ecosistema de Rust) para cada cliente de servicio. Todos se administran en un GitHub repositorio consolidado, pero cada cliente de servicio sigue su propia cadencia de versiones y lanzamientos. El SDK consolidado publicó PQ TLS con la preferencia 8/29 /25, por lo que cualquier versión de cliente de servicio que se publique después de esa fecha admitirá y preferirá PQ TLS de forma predeterminada.

Puedes determinar la versión mínima compatible con PQ TLS para un cliente de servicio concreto. Para ello, dirígete a la URL de la versión de crates.io correspondiente (por ejemplo, la «de» está aquí) y busca la primera versión publicada después Crédito promocional AWS de la versión 29-. Aug-25 Cualquier versión de cliente de servicio que se publique después de la versión 29 Aug-25 tendrá PQ TLS habilitada y preferida de forma predeterminada.

Opt-in Compatibilidad con PQ TLS

AWS SDK para C++

De forma predeterminada, el SDK de C++ usa clientes nativos de la plataforma, como libcurl y. WinHttp Libcurl generalmente se basa en el sistema OpenSSL para TLS, por lo que PQ TLS solo está habilitado de forma predeterminada si el OpenSSL del sistema es ≥ v3.5. Puedes anular este valor predeterminado en la versión 1.11.673 o posterior del SDK de C++ y optar por la opción que admite y habilita PQ TLS de forma predeterminada. AwsCrtHttpClient

Notas sobre la creación de Opt-In PQ TLS Puedes obtener las dependencias CRT del SDK con este script. https://github.com/aws/aws-sdk-cpp/blob/main/prefetch_crt_dependency.sh La creación del SDK desde el código fuente se describe aquí y aquí, pero ten en cuenta que es posible que necesites algunos indicadores de CMake adicionales:

-DUSE_CRT_HTTP_CLIENT=ON \ -DUSE_TLS_V1_2=OFF \ -DUSE_TLS_V1_3=ON \ -DUSE_OPENSSL=OFF \

AWS SDK para Java

A partir de la versión 2, el AWS SDK para Java proporciona un cliente HTTP de AWS Common Runtime (AWS CRT) que se puede configurar para ejecutar PQ TLS. A partir de la versión 2.35.11, AwsCrtHttpClient habilita y prefiere PQ TLS de forma predeterminada dondequiera que se utilice.

JDK27 admite y prefiere PQ TLS, por lo que los clientes predeterminados del AWS SDK para Java V1 o V2 que se ejecuten en esa versión (o posterior) admiten PQ TLS de fábrica. Oracle describe los plazos previstos para que PQ TLS retroceda a versiones anteriores del JDK en Cryptography, en la sección correspondiente a las versiones de JDK compatibles. Post-Quantum Long-Term

SDKs que se basan en System OpenSSL

Varios AWS SDK y herramientas dependen de la biblioteca del sistema para TLS. libcrypto/libssl La biblioteca del sistema que se usa con más frecuencia es OpenSSL. OpenSSL habilitó la compatibilidad con PQ TLS en la versión 3.5, por lo que la forma más sencilla de configurar estos SDK y herramientas para PQ TLS es utilizarlos en una distribución del sistema operativo que tenga instalado al menos OpenSSL 3.5.

También puedes configurar un contenedor Docker para que utilice OpenSSL 3.5 para habilitar PQ TLS en cualquier sistema que admita Docker. Consulta Post-quantum TLS en Python para ver un ejemplo de cómo configurarlo para Python.

AWS CLI

A partir de la versión 2.34.54, el instalador de la AWS CLI para Linux incluye OpenSSL 3.5.6, por lo que PQ TLS está habilitado y es el preferido de forma predeterminada para esa versión y las siguientes de Linux. AWS Los usuarios de la CLI de Linux pueden habilitar PQ TLS actualizando la CLI a la versión 2.34.54 o posterior. AWS

Para macOS, instala la AWS CLI mediante Homebrew y asegúrate de que tu Homebrew-vended OpenSSL esté actualizado a la versión 3.5 o posterior. Puedes hacerlo con «brew install openssl @3 .6» y validarlo con «brew list | grep openssl».

Para obtener instrucciones paso a paso sobre cómo validar la instalación, consulta el repositorio de github y la entrada de blog correspondiente. https://aws.amazon.com/blogs/security/post-quantum-tls-in-python/

AWS SDK para PHP

El AWS SDK para PHP se basa en el sistema. libssl/libcrypto Para usar PQ TLS, utilice este SDK en una distribución del sistema operativo que tenga instalado al menos OpenSSL 3.5.

AWS SDK para Python (Boto3)

El AWS SDK para Python (Boto3) se basa en la biblioteca OpenSSL enlazada por tu instalación de Python para TLS. El comportamiento difiere según la plataforma:

Windows and macOS (python.org installer)

Los instaladores oficiales de python.org para Windows (.exe) y macOS (.pkg) incluyen su propia biblioteca OpenSSL. A partir de Python 3.14.6, el paquete OpenSSL 3.5.7 incluido admite y prefiere PQ TLS de forma predeterminada. No se necesita ninguna configuración adicional.

macOS (Homebrew)

Dado que python @3 .14 de Homebrew enlaza con la biblioteca compartida openssl @3 de Homebrew, a partir de Homebrew OpenSSL 3.5+, PQ TLS es compatible y preferido de forma predeterminada. Puedes validar tu versión de OpenSSL con:

python3.14 -c "import ssl; print(ssl.OPENSSL_VERSION)"

Si su versión es inferior a 3.5, actualice con brew upgrade openssl @3.

Linux

En Linux, Python enlaza dinámicamente con el libssl compartido del sistema. Tener OpenSSL 3.5+ instalado es necesario, pero no suficiente, ya que la política criptográfica del sistema también debe incluir los grupos poscuánticos en su configuración TLS predeterminada.

Para Amazon Linux 2023 (AL2023.12 o superior), habilite PQ TLS con:

sudo update-crypto-policies --set DEFAULT:PQ

Para obtener más información, consulte Habilitar la Post-Quantum criptografía (PQC) en AL2023.

Para otras distribuciones de Linux, consulte la documentación de su distribución sobre la configuración de los grupos TLS predeterminados.

Puedes comprobar que PQ TLS funciona comprobando el intercambio de claves X25519MLKEM768 en tu protocolo de enlace TLS.

AWS SDK para Ruby

El libssl/libcrypto SDK de Ruby depende del sistema. AWS Para usar PQ TLS, usa este SDK en una distribución de sistema operativo que tenga instalado al menos OpenSSL 3.5.

AWS SDK para .NET

En Linux, el AWS SDK para.NET depende del sistema. libssl/libcrypto Para usar PQ TLS, utilice este SDK en una distribución de sistema operativo que tenga instalado al menos OpenSSL 3.5. En Windows y macOS, PQ TLS está disponible a partir de .NET 10 y Windows 11. https://devblogs.microsoft.com/dotnet/post-quantum-cryptography-in-dotnet/ https://techcommunity.microsoft.com/blog/microsoft-security-blog/post-quantum-cryptography-apis-now-generally-available-on-microsoft-platforms/4469093 En macOS, la compatibilidad con TLS 1.3 (un requisito previo para PQ TLS) se puede habilitar seleccionando la versión de Apple, tal y como se describe aquí. Network.framework https://learn.microsoft.com/en-us/dotnet/core/whats-new/dotnet-10/libraries#tls-13-for-macos-client Suponiendo que la versión NET sea 10 como mínimo, entonces debería habilitarse PQ TLS.

AWS Los SDK y las herramientas no tienen previsto admitir PQ TLS

Por el momento, no hay planes para admitir los siguientes SDK y herramientas lingüísticos:

  • AWS SDK para SAP

  • AWS SDK para Swift

  • AWS Herramientas para Windows PowerShell