將使用KMS祕密金鑰加密的密文解密為明文。
使用說明
當您調用AdvanceEncrypt、AdvanceGenerateDataKey、Encrypt或GenerateDataKey,並使用KMS軟體密鑰管理執行個體中的對稱金鑰進行加密時,支援通過本介面解密。
關於密鑰規格以及加密模式的詳細資料,請參見密鑰管理類型和密鑰規格。
注意事項
所有請求參數使用Protocol Buffers編碼後(即Request Body),內容長度不能超過3 MB,超過3 MB後服務端會拒絕處理並返回HTTP 413狀態代碼。建議單次加解密的資料不超過6 KB,超過6 KB時請使用信封加密方案。詳細資料,請參見使用KMS密鑰進行信封加密。
單次加解密的資料量越大,網路傳輸失敗可能性越大,網路傳輸所需時間越長,KMS執行個體對資料進行加解密所需時間也越長。
請求參數
名稱 | 類型 | 是否必選 | 樣本值 | 描述 |
CiphertextBlob | bytes | 是 | 位元據 | 待解密的密文。 |
KeyId | string | 否 | key-hzz62f1cb66fa42qo**** | 密鑰的通用唯一識別碼。該參數也可以被指定為密鑰別名。 僅當解密Encrypt或者GenerateDataKey產生的密文時需要指定本參數。 |
Algorithm | string | 否 | AES_GCM | 解密演算法。 僅當解密Encrypt或者GenerateDataKey產生的密文時需要指定本參數。 重要 必須與加密時使用的演算法(Algorithm)相同。 |
Iv | bytes | 否 | 位元據 | 初始向量。 僅當解密Encrypt或者GenerateDataKey產生的密文,且解密演算法(Algorithm)為AES_GCM、AES_CBC時,需要指定本參數。
重要 必須與加密時使用的初始向量(Iv)相同。 |
Aad | bytes | 否 | 位元據 | 認證資料。長度不超過8192位元組。 僅當解密演算法(Algorithm)是AES_GCM且加密時指定了認證資料(Aad)時,需要指定本參數。 重要 必須與加密時使用的認證資料(Aad)相同。 |
PaddingMode | string | 否 | PKCS7_PADDING | 填充模式。 僅當密碼編譯演算法為AES_CBC或AES_ECB時,需要指定本參數。 重要 必須與加密時使用的填充模式(PaddingMode)相同。 取值:
|
響應資料
名稱 | 類型 | 樣本值 | 描述 |
Plaintext | bytes | 位元據 | 解密後的明文。 |
KeyId | string | key-hzz62f1cb66fa42qo**** | 密鑰的通用唯一識別碼。如果請求中的KeyId參數使用的是密鑰別名,在響應中會返回別名對應的密鑰的通用唯一識別碼。 |
KeyVersionId | string | key-hzz62f1cb66fa42qo****-17kedv**** | 解密密文的密鑰版本標誌符。 |
Algorithm | string | AES_GCM | 解密演算法。 |
PaddingMode | string | PKCS7_PADDING | 填充模式。 僅當密碼編譯演算法(Algorithm)為AES_CBC或AES_ECB時,本參數返回有效值,其他情況返回空值。 |
RequestId | string | c0037a6d-7784-4ef2-a692-288fdcbc7b9d | 本次調用請求的ID,是由阿里雲為該請求產生的唯一識別碼,可用於排查和定位問題。 |
錯誤碼
HTTP狀態代碼 | 錯誤碼 | 錯誤訊息 | 描述 |
404 | Forbidden.OnlySymmetricKeySupported | The key %s is not a symmetric key. The API only supports symmetric keys. | 僅支援使用對稱金鑰。 |
500 | InternalFailure | Internal Failure. | 可能原因為:
如果已排除上述原因,請您通過工單聯絡技術支援人員。 |
訪問公用錯誤碼查看更多錯誤碼。