Configurar o TLS pós-quântico híbrido - AWS Key Management Service

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

Neste procedimento, adicione uma dependência do Maven para o cliente HTTP de runtime comum da AWS. Em seguida, configure um cliente HTTP com preferência em TLS pós-quântico. Em seguida, crie um cliente AWS KMS 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 aws-kms-pq-tls-example.

nota

O cliente HTTP de runtime comum da AWS, que estava disponível como uma prévia, tornou-se disponível para o 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 de runtime comum da AWS às suas dependências do Maven. Recomendamos usar a versão mais recente disponível.

    Por exemplo, esta instrução adiciona a versão 2.20.0 do cliente de runtime comum da AWS para suas dependências do Maven.

    <dependency> <groupId>software.amazon.awssdk</groupId> <artifactId>aws-crt-client</artifactId> <version>2.20.0</version> </dependency>
  2. Para habilitar os pacotes de criptografia pós-quântica híbrida, adicione o 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 comum da AWS que prefere o pacote de codificação pós-quântica híbrida recomendado, ECDH com Kyber. Em seguida, o cliente HTTP configurado é usado para criar uma instância do cliente assíncrono do AWS KMS, KmsAsyncClient. Após a conclusão desse código, todas as solicitações de API do AWS KMS 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();
  3. Teste suas chamadas do AWS KMS com TLS pós-quântico híbrido.

    Quando você chama operações de API do AWS KMS no cliente do AWS KMS configurado, as chamadas são transmitidas para o endpoint do AWS KMS usando TLS pós-quântico híbrido. Para testar a configuração, chame uma API do AWS KMS, como ListKeys.

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

Testar sua configuração TLS pós-quântico híbrido

Considere executar os testes a seguir com pacotes de criptografia híbrida em suas aplicações que chamam o AWS KMS.

  • Execute testes de carga e de comparação. Os pacotes de criptografia híbrida têm uma performance diferente dos algoritmos tradicionais de troca de chaves. Talvez seja necessário ajustar os tempos limite de conexão para permitir os tempos de handshake mais longos. Se você estiver executando dentro de uma função AWS Lambda, estenda a configuração de tempo limite de execução.

  • Tente conectar-se de diferentes locais. Dependendo do caminho de rede que sua solicitação segue, é possível descobrir quais hosts intermediários, proxies ou firewalls com inspeção profunda de pacotes (DPI) bloqueiam a solicitação. Isso pode resultar do uso dos novos pacotes de criptografia na parte ClientHello do handshake TLS ou das mensagens de troca de chaves maiores. 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 pacotes de criptografia TLS.