

As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.

# Configurar o TLS pós-quântico híbrido
<a name="pqtls-how-to"></a>

Neste procedimento, adicione uma dependência do Maven para o AWS Common Runtime HTTP Client. Em seguida, configure um cliente HTTP com preferência em TLS pós-quântico. Em seguida, crie um AWS KMS cliente que use o cliente HTTP.

Para ver exemplos funcionais completos de configuração e uso do TLS pós-quântico híbrido com o AWS KMS, consulte o repositório [https://github.com/aws-samples/aws-kms-pq-tls-example](https://github.com/aws-samples/aws-kms-pq-tls-example).

**nota**  
O AWS Common Runtime HTTP Client, que estava disponível como uma prévia, tornou-se disponível ao público em fevereiro de 2023. Nesse lançamento, a classe `tlsCipherPreference` e o parâmetro de método `tlsCipherPreference()` foram substituídos pelo parâmetro de método `postQuantumTlsEnabled()`. Se você estava usando este exemplo durante a prévia, precisará atualizar seu código.

1. Adicione o cliente AWS Common Runtime às suas dependências do Maven. Recomendamos usar a versão mais recente disponível. 

   Por exemplo, essa declaração adiciona a versão `2.30.22` do cliente AWS Common Runtime às suas dependências do Maven. 

   ```
   <dependency>
       <groupId>software.amazon.awssdk</groupId>
       <artifactId>aws-crt-client</artifactId>
       <version>2.30.22</version>
   </dependency>
   ```

1. Para habilitar os pacotes híbridos de criptografia pós-quântica, adicione-os AWS SDK for Java 2.x ao seu projeto e inicialize-o. Em seguida, habilite os pacotes de codificação pós-quântica híbrida em seu cliente HTTP, conforme mostrado no exemplo a seguir.

   Esse código usa o parâmetro de método `postQuantumTlsEnabled()` para configurar um [cliente HTTP de runtime da AWS](https://docs.aws.amazon.com/sdk-for-java/latest/developer-guide/http-configuration-crt.html) que prefere o conjunto de cifras híbridas pós-quânticas recomendado, ECDH com ML-KEM. Em seguida, ele usa o cliente HTTP configurado para criar uma instância do cliente AWS KMS assíncrono,. [https://sdk.amazonaws.com/java/api/latest/software/amazon/awssdk/services/kms/KmsAsyncClient.html](https://sdk.amazonaws.com/java/api/latest/software/amazon/awssdk/services/kms/KmsAsyncClient.html) Após a conclusão desse código, todas as solicitações de [API do AWS KMS](https://docs.aws.amazon.com/kms/latest/APIReference/) na instância `KmsAsyncClient` usam TLS pós-quântico híbrido.

   ```
   // Configure HTTP client
   SdkAsyncHttpClient awsCrtHttpClient = AwsCrtAsyncHttpClient.builder()
             .postQuantumTlsEnabled(true)
             .build();
   
   // Create the AWS KMS async client
   KmsAsyncClient kmsAsync = KmsAsyncClient.builder()
            .httpClient(awsCrtHttpClient)
            .build();
   ```

1. Teste suas AWS KMS chamadas com o TLS híbrido pós-quântico.

   Quando você chama operações de AWS KMS API no AWS KMS cliente configurado, suas chamadas são transmitidas para o AWS KMS endpoint usando TLS híbrido pós-quântico. Para testar sua configuração, chame uma AWS KMS API, como`[ListKeys](https://docs.aws.amazon.com/kms/latest/APIReference/API_ListKeys.html)`.

   ```
   ListKeysReponse keys = kmsAsync.listKeys().get();
   ```

## Testar sua configuração TLS pós-quântico híbrido
<a name="pqtls-testing"></a>

Considere executar os testes a seguir com pacotes de criptografia híbridos em seus aplicativos que chamam. AWS KMS
+ Veja a `tlsDetails` seção na entrada de CloudTrail registro de uma chamada de AWS KMS API feita pelo seu aplicativo. O `keyExchange` campo deve mencionar um algoritmo híbrido, como`X25519MLKEM768`. Para ver um exemplo, consulte [Descriptografe com uma chave de criptografia simétrica padrão em uma conexão TLS pós-quântica](ct-decrypt.md#ct-decrypt-default-pqtls).
+ Execute benchmarks usando TLS pós-quântico híbrido. A troca de chaves híbridas aumenta o tamanho e o tempo de processamento de algumas mensagens no handshake TLS, mas o impacto geral no desempenho deve ser imperceptível na maioria dos casos.
+ Tente conectar-se de diferentes locais. Dependendo do caminho de rede que sua solicitação segue, você pode descobrir que hosts intermediários, proxies ou firewalls legados com inspeção profunda de pacotes (DPI) bloqueiam a solicitação. Isso pode resultar do uso dos novos grupos de troca de chaves na [ClientHello](https://datatracker.ietf.org/doc/html/rfc8446#section-4.1.2)parte do handshake TLS ou de mensagens maiores de troca de chaves. Se você tiver problemas para resolver esses problemas, trabalhe com sua equipe de segurança ou administradores de TI para atualizar a configuração relevante e desbloquear os novos grupos de troca de chaves TLS. 