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

Key Management Service:Encrypt

最終更新日:Aug 22, 2026

プレーンテキストを暗号化して暗号文にします。

操作の説明

Key Management Service (KMS) は、EncryptAdvanceEncrypt の 2 つの暗号化 API を提供します。主な違いは、使用するキーバージョンと、その後に呼び出す必要がある復号 API です。

EncryptAdvanceEncrypt
使用するキーバージョン初期バージョンプライマリバージョン
互換性のある復号 APIDecrypt または AdvanceDecryptAdvanceDecrypt のみ
重要

ソフトウェアキー管理インスタンスで対称キーを使用し、そのソフトウェアで保護されたキーに対してキーローテーションが有効になっている場合、Encrypt の代わりに AdvanceEncrypt を呼び出してください。そうしないと、キーローテーション機能は有効になりません。詳細については、「キーローテーションの設定」をご参照ください。

キーの仕様、暗号化モード、秘密キーの暗号化、キーバージョンの詳細については、「キーのタイプと仕様」をご参照ください。

注意事項

すべてのリクエストパラメーターは Protocol Buffers でエンコードされます。生成されるリクエスト本文は 3 MB を超えることはできません。データ量が 3 MB を超えると、サーバーはリクエストを拒否し、HTTP ステータスコード 413 を返します。

1 回の暗号化または復号の呼び出しでは、データを次の制限内に収めてください:

キータイプ

推奨最大データ量

対称キー

6 KB

非対称キー

1 KB

データがこれらの制限を超える場合は、代わりにエンベロープ暗号化を使用してください。詳細については、「エンベロープ暗号化」をご参照ください。

説明

1 回の呼び出しのデータ量が大きいほど、ネットワーク伝送障害のリスクが高まり、伝送に時間がかかり、KMS インスタンスがデータの暗号化または復号を完了するのに必要な時間も長くなります。

リクエストパラメーター

パラメータータイプ必須説明
KeyId文字列はいkey-hzz62f1cb66fa42qo****キーのグローバル一意識別子です。キーに紐付けられたエイリアスを指定することもできます。
Plaintextバイトはいバイナリデータ暗号化するプレーンテキストです。
Algorithm文字列いいえAES_GCM暗号化アルゴリズムです。指定しない場合、KMS はキーのデフォルトアルゴリズムを使用します。詳細については、「キーのタイプと仕様」をご参照ください。
Ivバイトいいえバイナリデータデータ暗号化に使用する初期化ベクトル (IV) です。暗号化アルゴリズム (Algorithm) が AES_GCMAES_CBC の場合にのみ有効です。有効な長さ:AlgorithmAES_CBC の場合は 16 バイト、AlgorithmAES_GCM の場合は 12 バイトです。指定しない場合、KMS はランダムな値を生成します。このパラメーターは設定せず、KMS にランダムに生成させることを推奨します。
Aadバイナリいいえバイナリデータデータ暗号化時の GCM モード認証に使用する追加認証データ (AAD) です。キーが対称キーで、暗号化アルゴリズム (Algorithm) が AES_GCM または SM4_GCM の場合に、このパラメーターを設定できます。このパラメーターを設定した場合、Decrypt を呼び出して暗号化されたデータを復号する際に、同じ値を渡す必要があります。
PaddingMode文字列いいえPKCS7_PADDINGパディングモードです。AlgorithmAES_CBC または AES_ECB に設定されている場合にのみ必須です。有効な値:PKCS7_PADDING (デフォルト) および NO_PADDING

PaddingMode の値

  • PKCS7_PADDING (デフォルト):PKCS#7 パディングを使用します。入力が L バイトの場合、KMS は K − (L mod K) バイトのパディングを追加します。ここで、K は暗号ブロックサイズです。

  • NO_PADDING:パディングは追加されません。プレーンテキストの長さは、暗号ブロックサイズの整数倍である必要があります。

レスポンス要素

パラメータータイプ説明
Ivバイトバイナリデータデータ暗号化に使用した初期化ベクトル (IV) です。暗号化アルゴリズム (Algorithm) が AES_GCMAES_CBC の場合にのみ有効な値が返されます。それ以外の場合は空になります。
CiphertextBlobバイトバイナリデータ

指定されたキーで暗号化された後のデータの暗号文 BLOB です。

注:楕円曲線統合暗号化方式 (ECIES) アルゴリズムを使用する場合、返される暗号文の形式は SEC 1: Elliptic Curve Cryptography, Version 2.0 標準に準拠します。

KeyId文字列key-hzz62f1cb66fa42qo****キーのグローバル一意識別子です。KeyId リクエストパラメーターでキーのエイリアスを指定した場合、このレスポンス要素は、そのエイリアスに紐付けられているキーのグローバル一意識別子を返します。
Algorithm文字列AES_GCM暗号化アルゴリズムです。
PaddingMode文字列PKCS7_PADDINGパディングモードです。AlgorithmAES_CBC または AES_ECB の場合にのみ値が返されます。それ以外の場合は空になります。
RequestId文字列475f1620-b9d3-4d35-b5c6-3fbdd941423dリクエストの ID です。Alibaba Cloud は、リクエストごとにこの一意の識別子を生成します。これを使用して、問題のトラブルシューティングや特定を行うことができます。

エラーコード

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