非対称データキーペアを生成します。
使用方法
この操作は、乱数ジェネレータを使用してデータキーペアを生成し、対称キーのプライマリバージョンを使用してデータキーペアを暗号化し、プレーンテキストの秘密鍵を返さずに、プレーンテキストの公開鍵と暗号文の秘密鍵を返します。 このデータキーペアは、Key Management Service ( KMS ) 外の署名検証に使用できます。
暗号文秘密鍵(PrivateKeyCiphertextBlob)、暗号化アルゴリズム(Algorithm)、および認証データ(Aad)を安全に保管してください。 AdvanceDecrypt 操作を呼び出して暗号文秘密鍵を復号化するときに、この保存された情報を使用します。
KMS では、データキーペアを生成するための操作がいくつか用意されています。 次の表に、操作の違いを示します。
API | シナリオ | レスポンスデータ | 暗号化に使用するキーバージョン | 復号化のための操作 |
GenerateDataKey | キーに対して自動ローテーションが設定されておらず、プレーンテキストの秘密鍵をすぐに取得する必要があります。 | プレーンテキストの公開鍵、プレーンテキストの秘密鍵、および暗号文の秘密鍵 | キーの初期バージョン | |
GenerateDataKeyPairWithoutPlaintext | キーに対して自動ローテーションが設定されておらず、プレーンテキストの秘密鍵を使用しないか、より高いセキュリティが必要です。 | プレーンテキストの公開鍵とプレーンテキストの秘密鍵 | キーの初期バージョン | |
AdvanceGenerateDataKeyPair | キーに対して自動ローテーションが設定されており、プレーンテキストの秘密鍵をすぐに取得する必要があります。 説明 キーローテーションの詳細については、「キーローテーションの設定」をご参照ください。 | プレーンテキストの公開鍵、プレーンテキストの秘密鍵、および暗号文の秘密鍵 | キーのプライマリバージョン | |
AdvanceGenerateDataKeyPairWithoutPlaintext | キーに対して自動ローテーションが設定されており、プレーンテキストの秘密鍵を使用しないか、より高いセキュリティが必要です。 | プレーンテキストの公開鍵とプレーンテキストの秘密鍵 | キーのプライマリバージョン |
注意事項
各 KMS インスタンスは、GenerateDataKey、GenerateDataKeyPairWithoutPlaintext、AdvanceGenerateDataKeyPair、および AdvanceGenerateDataKeyPairWithoutPlaintext 操作のリクエストを一度に 1 つだけ処理できます。 同時リクエストを制御することをお勧めします。 同時リクエスト数が制限を超えると、KMS は 429 エラー(同時実行制限超過)を返します。
リクエストパラメータ
パラメータ | タイプ | 必須 | 例 | 説明 |
KeyId | string | はい | key-hzz62f1cb66fa42qo**** | キーのグローバルに一意な ID 。 このパラメータには、キーにバインドされているエイリアスを設定できます。 説明 ソフトウェアキー管理タイプの KMS インスタンスの対称キーのみがサポートされています。 |
KeyPairSpec | string | はい | RSA_2048 | データキーペアのタイプ。有効な値:
|
Aad | bytes | いいえ | バイナリデータ | Galois/Counter Mode ( GCM ) モードでデータキーペアを暗号化するときの認証データ。 重要 このパラメータを指定する場合は、Decrypt 操作を呼び出すときに同じパラメータを指定する必要があります。 |
KeyFormat | string | はい | PEM | データキーペアのフォーマット。有効な値:
|
レスポンスパラメータ
パラメータ | タイプ | 例 | 説明 |
KeyId | string | key-hzz62f1cb66fa42qo**** | キーのグローバルに一意な ID 。 リクエストの KeyId がエイリアスに設定されている場合は、エイリアスがバインドされているキーのグローバルに一意な ID が返されます。 |
Iv | bytes | バイナリデータ | データキーペアの暗号化に使用される初期ベクトル。 説明 Decrypt 操作を呼び出してデータキーペアを復号化するときは、Iv に有効な値を指定する必要があります。 |
KeyPairSpec | string | RSA_2048 | データキーペアのタイプ。 |
PrivateKeyCiphertextBlob | bytes | バイナリデータ | データキーペアの暗号文秘密鍵。 |
PublicKey | bytes | バイナリデータ | データキーペアのプレーンテキスト公開鍵。
|
Algorithm | string | AES_GCM | 暗号化アルゴリズム。 AES_GCM のみがサポートされています。 |
RequestId | string | 475f1620-b9d3-4d35-b5c6-3fbdd941423d | リクエストの ID 。 問題の特定とトラブルシューティングに使用されます。 |
エラーコード
HTTP ステータスコード | エラーコード | エラーメッセージ | 説明 |
429 | Rejected.Throttling | 同時実行制限超過。 | 同時リクエスト数が制限を超えています。 |
エラーコードのリストについては、「サービス エラーコード」をご参照ください。