Configuración del cifrado TLS poscuántico híbrido para el cliente - Amazon Simple Storage Service

Configuración del cifrado TLS poscuántico híbrido para el cliente

Para usar PQ-TLS con Amazon S3, debe configurar el cliente para que admita algoritmos de intercambio de claves poscuánticas. Asegúrese también de que el cliente apoye el enfoque híbrido, que combina la criptografía tradicional de curva elíptica con algoritmos poscuánticos como ML-KEM (Module-Lattice-Based Key Encapsulation Mechanism).

La configuración específica depende de la biblioteca del cliente y del lenguaje de programación. Para obtener más información, consulte Habilitación del TLS poscuántico híbrido.

Ejemplo de configuración de cliente: AWS SDK para Java 2

En este procedimiento, agregue una dependencia de Maven para el cliente HTTP en tiempo de ejecución común de AWS. A continuación, configure un cliente HTTP que prefiera el TLS postcuántico. A continuación, cree un cliente de Amazon S3 que utilice el cliente HTTP.

nota

El cliente HTTP de en tiempo de ejecución común de AWS, que estaba disponible como versión preliminar, pasó a estar disponible en febrero de 2023. En esa versión, la clase tlsCipherPreference y el parámetro del método tlsCipherPreference() se sustituyen por el parámetro del método postQuantumTlsEnabled(). Si utilizó este ejemplo durante la vista previa, debe actualizar el código.

  1. Agregue el cliente del tiempo de ejecución común de AWS a sus dependencias de Maven. Le recomendamos que utilice la última versión disponible.

    Por ejemplo, esta declaración agrega la versión 2.30.22 del cliente del tiempo de ejecución común de AWS a sus dependencias de Maven.

    <dependency> <groupId>software.amazon.awssdk</groupId> <artifactId>aws-crt-client</artifactId> <version>2.30.22</version> </dependency>
  2. Para habilitar los conjuntos de cifrado híbrido postcuántico, agregue AWS SDK for Java 2.x a su proyecto e inícielo. Luego habilite los conjuntos de cifrado postcuántico híbrido en su cliente HTTP como se muestra en el siguiente ejemplo.

    Este código usa el parámetro del método postQuantumTlsEnabled() para configurar un cliente HTTP de AWS en tiempo de ejecución común que prefiera el conjunto de cifrado poscuántico híbrido recomendado, ECDH con ML-KEM. A continuación, utiliza el cliente HTTP configurado para crear una instancia del cliente de Amazon S3 asincrónico, S3AsyncClient. Cuando se complete este código, todas las solicitudes de la API de Amazon S3 de la instancia S3AsyncClient utilizarán un TLS poscuántico híbrido.

    importante

    A partir de v2.35.11, las personas que llamen ya no tendrán que configurar .postQuantumTlsEnabled(true) para habilitar el TLS poscuántico híbrido para el cliente. Todas las versiones posteriores a v2.35.11 habilitan el TLS poscuántico de forma predeterminada.

    // Configure HTTP client SdkAsyncHttpClient awsCrtHttpClient = AwsCrtAsyncHttpClient.builder() .postQuantumTlsEnabled(true) .build(); // Create the Amazon S3 async client S3AsyncClient s3Async = S3AsyncClient.builder() .httpClient(awsCrtHttpClient) .build();
  3. Pruebe las llamadas de Amazon S3 con TLS poscuántico híbrido.

    Cuando llama a operaciones de la API de Amazon S3 en el cliente de Amazon S3 configurado, las llamadas se transmiten al punto de conexión de Amazon S3 mediante TLS poscuántico híbrido. Para probar la configuración, ejecute una llamada a la API de Amazon S3, como ListBuckets.

    ListBucketsResponse reponse = s3Async.listBuckets();

Prueba de su configuración de TLS postcuántico híbrido

Considere la posibilidad de ejecutar las siguientes pruebas con conjuntos de cifrado híbridos en las aplicaciones que llaman a Amazon S3.

  • Ejecute pruebas de carga y pruebas de rendimiento. Los conjuntos de cifrado híbridos funcionan de manera diferente que los algoritmos tradicionales de intercambio de claves. Es posible que tenga que ajustar los tiempos de espera de conexión para permitir tiempos de negociación más prolongados. Si la ejecución se realiza dentro de una función AWS Lambda, amplíe la configuración del tiempo de espera de ejecución.

  • Intente conectarse desde diferentes ubicaciones. En función de la ruta de red que tome la solicitud, es posible que descubra que hosts intermedios, proxies o firewalls con inspección profunda de paquetes (DPI) bloquean la solicitud. Esto podría dar lugar a que se utilicen los nuevos conjuntos de cifrado en la parte ClientHello del protocolo TLS o a mensajes de intercambio de claves más grandes. Si le resulta difícil resolver estos problemas, trabaje con su equipo de seguridad o con los administradores de TI para actualizar la configuración pertinente y desbloquear los nuevos conjuntos de cifrado TLS.