すべてのプロダクト
Search
ドキュメントセンター

Key Management Service:GenerateDataKey

最終更新日:Jan 03, 2025

データキーを生成します。

使用上の注意

概要

この操作では、乱数ジェネレータを使用してデータキーを生成し、キー管理サービス (KMS) キーの初期バージョンを使用してデータキーを暗号化し、平文データキーと暗号文データキーを返します。 平文データキーを使用して、KMS外部のデータを暗号化できます。 Plaintextは、平文データキーを指定する。 暗号化後、暗号文データキー (CiphertextBlob) 、初期ベクトル (Iv) 、暗号化アルゴリズム (algorithm) 、および認証データ (Aad) を格納する必要があります。

キーの仕様と暗号化モードの詳細については、「キーの種類と仕様」をご参照ください。

重要
  • データキーを暗号化する場合、Galois/Counter Mode (GCM) モードのみがサポートされます。

  • KMSは、高品質の乱数ジェネレータを使用してデータキーを生成します。これは、データキーの暗号化に使用されるKMSキーマテリアルとは無関係です。

GenerateDataKeyとAdvanceGenerateDataKeyの違い

AdvanceGenerateDataKey操作とGenerateDataKey操作を呼び出して、データキーを生成できます。 次のセクションでは、2つの操作の違いについて説明します。

  • GenerateDataKey: キーの初期バージョンは暗号化に使用されます。 暗号化後、暗号文データキー (CiphertextBlob) 、初期ベクトル (Iv) 、暗号化アルゴリズム (algorithm) 、および認証データ (Aad) を格納する必要があります。 データを復号するには、DecryptまたはAdvanceDecrypt操作を呼び出します。

  • AdvanceGenerateDataKey: この操作は、ソフトウェアキー管理タイプのKMSインスタンスの対称キーに対してのみ呼び出すことができます。 キーのプライマリバージョンは暗号化に使用されます。 暗号化後、暗号文データキー (CiphertextBlob) と認証データ (Aad) を格納する必要があります。 データを復号化するには、AdvanceDecrypt操作を呼び出す必要があります。

    重要

    ソフトウェアキー管理タイプのKMSインスタンスで対称キーを使用し、キーの自動ローテーションを有効にする場合は、AdvanceGenerateDataKey操作を呼び出してデータキーを生成し、キーローテーション機能が無効にならないようにする必要があります。 自動キーローテーションの詳細については、「キーローテーションの設定」をご参照ください。

リクエストパラメーター

パラメーター

必須 / 任意

説明

KeyId

String

対象

key-hzz62f1cb66fa42qo ****

キーのグローバル一意ID。 キーにバインドされているエイリアスに値を設定することもできます。

NumberOfBytes

int

対象

32

生成されるデータキーの長さ。

Aad

binary

非対象

バイナリデータ

データキーが暗号化されているときにデータを認証するために使用されるGalois/Counter Mode (GCM) モード。

重要

データキーを暗号化する場合、GCMモードのみがサポートされます。 このパラメーターを指定する場合は、Decrypt操作を呼び出すときに同じパラメーターを指定する必要があります。

レスポンスパラメーター

パラメーター

タイプ

説明

KeyId

String

key-hzz62f1cb66fa42qo ****

キーのグローバル一意ID。 リクエスト内のKeyIdがエイリアスに設定されている場合、エイリアスがバインドされているキーのグローバル一意IDがレスポンスで返されます。

Iv

バイト

バイナリデータ

データキーが暗号化されるときに使用される初期ベクトル。

説明

Decrypt操作を呼び出してデータキーを復号化するときは、データキーを復号化するためにIvに有効な値を指定する必要があります。

平文

バイト

バイナリ平文

平文データキー。

CiphertextBlob

バイト

バイナリ暗号文

暗号文データキー。

アルゴリズム

String

AES_GCM

暗号化アルゴリズム。

RequestId

String

475f1620-b9d3-4d35-b5c6-3fbdd941423d

リクエスト ID。

エラーコード

エラーコードのリストについては、「サービスエラーコード」をご参照ください。