ハイブリッドポスト量子 TLS の設定 - AWS Key Management Service

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

ハイブリッドポスト量子 TLS の設定

この手順では、AWS 共通ランタイム HTTP クライアントの Maven 依存関係を追加します。次に、ポスト量子 TLS を優先する HTTP クライアントを設定します。次に、HTTP クライアントを使用する AWS KMS クライアントを作成します。

AWS KMS でのハイブリッドポスト量子 TLS の設定と使用の完全な実例については、aws-kms-pq-tls-example リポジトリを参照してください。

注記

プレビューとして公開された AWS 共通ランタイム HTTP クライアントは、2023 年 2 月に一般公開されました。このリリースでは、tlsCipherPreference クラスと tlsCipherPreference() メソッドパラメータが、postQuantumTlsEnabled() メソッドパラメータに置き換えられました。プレビュー中にこの例を使用していた場合は、コードを更新する必要があります。

  1. Maven 依存関係に AWS 共通ランタイムクライアントを追加します。利用可能な最新バージョンを使用することをお勧めします。

    例えば、このステートメントは Maven の依存関係に、AWS 共通ランタイムクライアントのバージョン 2.20.0 を追加します。

    <dependency> <groupId>software.amazon.awssdk</groupId> <artifactId>aws-crt-client</artifactId> <version>2.20.0</version> </dependency>
  2. ハイブリッドポスト量子暗号スイートを有効にするには、AWS SDK for Java 2.x をプロジェクトに追加して初期化します。続いて、次の例に示すように、HTTP クライアントでハイブリッドポスト量子暗号スイートを有効にします。

    このコードでは、postQuantumTlsEnabled() メソッドパラメータを使用して、推奨されるハイブリッドポスト量子暗号スイートである ECDH with Kyber を優先する 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();
  3. ハイブリッドポスト量子 TLS を使用して AWS KMS の呼び出しをテストします。

    構成された AWS KMS クライアントで AWS KMS API オペレーションを呼び出すと、コールはハイブリッドポスト量子 TLS を使用して AWS KMS エンドポイントに送信されます。設定をテストするには、ListKeys などの AWS KMS API を呼び出します。

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

ハイブリッドポスト量子 TLS 設定をテストする

AWS KMS を呼び出すアプリケーションで、ハイブリッド暗号スイートを使用して次のテストを実行することを検討してください。

  • 負荷テストとベンチマークを実行します。ハイブリッド暗号スイートの動作は、従来のキー交換アルゴリズムとは異なります。ハンドシェイク時間が長くなるように、接続のタイムアウトを調整する必要がある場合があります。AWS Lambda 関数内で実行している場合は、実行タイムアウト設定を拡張します。

  • 別の場所からの接続を試します。要求が通過するネットワークパスによっては、ディープパケットインスペクション (DPI) を持つ中間ホスト、プロキシ、またはファイアウォールが要求をブロックしていることが検出されることがあります。これは、TLS ハンドシェイクの ClientHello 部分で新しい暗号スイートを使用した場合や、大きなキー交換メッセージから発生することがあります。これらの問題を解決できない場合は、セキュリティチームまたは IT 管理者と協力して、関連する構成を更新し、新しい TLS 暗号スイートのブロックを解除してください。