Konfigurieren Sie hybrides Post-Quantum-TLS - AWS Key Management Service

Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.

Konfigurieren Sie hybrides Post-Quantum-TLS

Fügen Sie in diesem Verfahren eine Maven-Abhängigkeit für den AWS Common Runtime HTTP Client hinzu. Anschließend konfigurieren Sie einen HTTP-Client, der Post-Quantum-TLS bevorzugt. Erstellen Sie dann einen AWS KMS Client, der den HTTP-Client verwendet.

Eine vollständige Liste von Arbeitsbeispielen zum Konfigurieren und Verwenden von hybriden Post-Quantum-TLS mit AWS KMS, finden Sie im aws-kms-pq-tls-example-Repository.

Anmerkung

Der AWS Common Runtime HTTP Client, der als Vorversion verfügbar war, wurde im Februar 2023 allgemein verfügbar. In dieser Version werden die tlsCipherPreference-Klasse und der tlsCipherPreference()-Methodenparameter durch den postQuantumTlsEnabled()-Methodenparameter ersetzt. Wenn Sie dieses Beispiel in der Vorversion verwendet haben, müssen Sie Ihren Code aktualisieren.

  1. Fügen Sie den AWS Common Runtime-Client zu Ihren Maven-Abhängigkeiten hinzu. Wir empfehlen, die neueste verfügbare Version zu verwenden.

    Diese Anweisung fügt beispielsweise eine Version 2.30.22 des AWS Common Runtime-Clients zu Ihren Maven-Abhängigkeiten hinzu.

    <dependency> <groupId>software.amazon.awssdk</groupId> <artifactId>aws-crt-client</artifactId> <version>2.30.22</version> </dependency>
  2. Um die hybriden Post-Quantum-Cipher-Suites zu aktivieren, fügen Sie sie AWS SDK for Java 2.x zu Ihrem Projekt hinzu und initialisieren Sie sie. Aktivieren Sie dann die hybriden Post-Quantum-Cipher-Suites auf Ihrem HTTP-Client, wie im folgenden Beispiel gezeigt.

    Dieser Code verwendet den postQuantumTlsEnabled() Methodenparameter, um einen AWS gemeinsamen Runtime-HTTP-Client zu konfigurieren, der die empfohlene hybride Post-Quantum-Verschlüsselungssuite ECDH with bevorzugt. ML-KEM Anschließend verwendet er den konfigurierten HTTP-Client, um eine Instanz des asynchronen Clients zu erstellen,. AWS KMS KmsAsyncClient Nachdem dieser Code abgeschlossen ist, verwenden alle AWS KMS -API-Anfragen auf der KmsAsyncClient-Instance hybrides Post-Quantum-TLS.

    // Configure HTTP client SdkAsyncHttpClient awsCrtHttpClient = AwsCrtAsyncHttpClient.builder() .postQuantumTlsEnabled(true) .build(); // Create the AWS KMS async client KmsAsyncClient kmsAsync = KmsAsyncClient.builder() .httpClient(awsCrtHttpClient) .build();
  3. Testen Sie Ihre AWS KMS Anrufe mit hybridem Post-Quantum-TLS.

    Wenn Sie AWS KMS API-Operationen auf dem konfigurierten AWS KMS Client aufrufen, werden Ihre Aufrufe mithilfe von Hybrid-Post-Quantum-TLS an den AWS KMS Endpunkt übertragen. Um Ihre Konfiguration zu testen, rufen Sie eine AWS KMS API auf, z. ListKeys

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

Testen Sie Ihre hybride Post-Quantum-TLS-Konfiguration

Erwägen Sie, die folgenden Tests mit Hybrid-Verschlüsselungssammlungen für Ihre aufrufenden Anwendungen durchzuführen. AWS KMS

  • Sehen Sie sich den tlsDetails Abschnitt im CloudTrail Protokolleintrag für einen AWS KMS API-Aufruf an, der von Ihrer Anwendung ausgeführt wurde. Das keyExchange Feld sollte einen hybriden Algorithmus wie erwähnenX25519MLKEM768. Ein Beispiel finden Sie unter Entschlüsseln Sie mit einem standardmäßigen symmetrischen Verschlüsselungsschlüssel über eine Post-Quantum-TLS-Verbindung.

  • Führen Sie Benchmarks mit hybridem Post-Quantum-TLS durch. Der hybride Schlüsselaustausch erhöht die Größe und die Verarbeitungszeit einiger Nachrichten im TLS-Handshake, aber die Auswirkungen auf die Gesamtleistung sollten in den meisten Fällen nicht wahrnehmbar sein.

  • Versuchen Sie, eine Verbindung von verschiedenen Standorten herzustellen. Je nachdem, welchen Netzwerkpfad Ihre Anfrage nimmt, stellen Sie möglicherweise fest, dass ältere Zwischenhosts, Proxys oder Firewalls mit Deep Packet Inspection (DPI) die Anfrage blockieren. Dies kann auf die Verwendung der neuen Schlüsselaustauschgruppen im ClientHelloTeil des TLS-Handshakes oder auf die umfassenderen Schlüsselaustauschnachrichten zurückzuführen sein. Wenn Sie Probleme bei der Lösung dieser Probleme haben, arbeiten Sie mit Ihrem Sicherheitsteam oder Ihren IT-Administratoren zusammen, um die entsprechende Konfiguration zu aktualisieren und die Sperrung der neuen TLS-Schlüsselaustauschgruppen aufzuheben.