解密

最近更新时间:2019-12-06 10:23:45

1. 接口描述

本接口(Decrypt)用于解密密文,得到明文数据。此接口不需要 keyId 作为入参,因为加密接口得到的密文已经包含了 keyId。解密接口会获取密文中携带的 keyId, 并验证权限。

说明:

  • kms 请求域名接口和说明可参考 地域和域名说明
  • 任何时候,包括内测期间,如果使用外网域名产生公网下行流量,都会收取流量费用。 所以强烈建议服务在腾讯云上的用户使用内网域名,内网不会产生流量费用。
  • 输入参数有些是可选的,不填取默认值。
  • 输出参数在成功情况下所有出参都会返回给用户;失败情况下,至少会有 code,message,requestId 返回。

2. 输入参数

以下请求参数列表仅列出了接口请求参数,其它参数见 公共请求参数 页面。

参数名称 是否必选 类型 描述
ciphertextBlob String 被加密的密文数据。
encryptionContext json 格式字符串 key/value 对的 json 字符串,应输入跟 Encrypt 接口相同的值。

3. 输出参数

参数名称 类型 描述
code Int 0:表示成功,others:错误,详细错误见下表。
message String 错误提示信息。
requestId String 服务器生成的请求 ID,出现服务器内部错误时,用户可提交此 ID 给后台定位问题。
keyId String CMK的全局唯一标识。
plaintext String 解密后的明文。API 返回的 plaintext 是 base64 编码的,为了得到原始明文,应调用相应的 base64 解码。KMS SDK 解密接口已经封装了 base64 解密操作,若使用 SDK 不需要额外进行 base64 解密操作。
错误代码 模块错误代码 英文提示 描述
4560 10670 decryption failed, please check input parameters 解密失败,请检查输入参数。
4580 10680 invalid ciphertextBlob ciphertextBlob非法。
注意:

上表所列错误码是接口特有错误码,如果您要查找的错误码不在其中,可能在 公共错误码 中。

4. 示例

输入

 https://kms-gz.api.tencentyun.com/v2/index.php?Action=Decrypt
 &ciphertextBlob=
 &<公共请求参数>

输出

{
"code" : 0,
"message" : "",
"requestId":"14534664555",
"keyId":"kms-30slkdf",
"plaintext":"string"
}