翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。
ハイブリッドポスト量子 TLS を設定する
この手順では、 AWS 共通ランタイム HTTP クライアントの Maven 依存関係を追加します。次に、ポスト量子 TLS を優先する HTTP クライアントを設定します。次に、HTTP AWS KMS クライアントを使用する クライアントを作成します。
AWS KMSでのハイブリッドポスト量子 TLS の設定と使用の完全な実例については、aws-kms-pq-tls-example
注記
プレビュー版として利用可能な AWS 共通ランタイム HTTP クライアントは、2023 年 2 月に一般公開されました。このリリースでは、tlsCipherPreference クラスと tlsCipherPreference() メソッドパラメータが、postQuantumTlsEnabled() メソッドパラメータに置き換えられました。プレビュー中にこの例を使用していた場合は、コードを更新する必要があります。
-
AWS 共通ランタイムクライアントを Maven の依存関係に追加します。利用可能な最新バージョンを使用することをお勧めします。
たとえば、このステートメント
2.30.22は AWS 、共通ランタイムクライアントのバージョンを Maven の依存関係に追加します。<dependency> <groupId>software.amazon.awssdk</groupId> <artifactId>aws-crt-client</artifactId> <version>2.30.22</version> </dependency> -
ハイブリッドポスト量子暗号スイートを有効にするには、プロジェクト AWS SDK for Java 2.x に を追加して初期化します。続いて、次の例に示すように、HTTP クライアントでハイブリッドポスト量子暗号スイートを有効にします。
このコードでは、
postQuantumTlsEnabled()メソッドパラメータを使用して、推奨されるハイブリッドポスト量子暗号スイートである ECDH with ML-KEM を優先する AWS 共通ランタイム HTTP クライアントを設定します。次に、設定された HTTP クライアントを使用して、 AWS KMS 非同期クライアントのインスタンス を構築しますKmsAsyncClient。このコードが完了すると、 KmsAsyncClientインスタンス上のすべての AWS KMS API リクエストは、ハイブリッドポスト量子 TLS を使用します。// Configure HTTP client SdkAsyncHttpClient awsCrtHttpClient = AwsCrtAsyncHttpClient.builder() .postQuantumTlsEnabled(true) .build(); // Create the AWS KMS async client KmsAsyncClient kmsAsync = KmsAsyncClient.builder() .httpClient(awsCrtHttpClient) .build(); -
ハイブリッドポスト量子 TLS で AWS KMS 呼び出しをテストします。
設定された AWS KMS クライアントで AWS KMS API オペレーションを呼び出すと、ハイブリッドポスト量子 TLS を使用して呼び出しが AWS KMS エンドポイントに送信されます。設定をテストするには、 などの AWS KMS API を呼び出します
ListKeys。ListKeysReponse keys = kmsAsync.listKeys().get();
ハイブリッドポスト量子 TLS 設定をテストする
が呼び出すアプリケーションで、ハイブリッド暗号スイートを使用して次のテストを実行することを検討してください AWS KMS。
-
アプリケーションによって行われた AWS KMS API コールの CloudTrail ログエントリ
tlsDetailsのセクションを表示します。keyExchangeフィールドには、 などのハイブリッドアルゴリズムについて言及する必要がありますX25519MLKEM768。例については、ポスト量子 TLS 接続を介した標準対称暗号化キーによる復号を参照してください。 -
ハイブリッドポスト量子 TLS を使用してベンチマークを実行します。ハイブリッドキー交換は、TLS ハンドシェイクの一部のメッセージのサイズと処理時間を増やしますが、ほとんどの場合、全体的なパフォーマンスへの影響は認識できないはずです。
-
別の場所からの接続を試します。リクエストのネットワークパスによっては、ディープパケットインスペクション (DPI) を使用するレガシー中間ホスト、プロキシ、またはファイアウォールがリクエストをブロックしていることがわかる場合があります。これは、TLS ハンドシェイクの ClientHello
部分で新しいキー交換グループを使用すること、またはより大きなキー交換メッセージによって発生する可能性があります。これらの問題を解決できない場合は、セキュリティチームまたは IT 管理者と協力して関連する設定を更新し、新しい TLS キー交換グループのブロックを解除してください。