1. API Description
Domain name for API request: kms.intl.tencentcloudapi.com.
This API is used to decrypt the ciphertext and obtain the plaintext data.
A maximum of 300 requests can be initiated per second for this API.
We recommend you to use API Explorer
Try it
API Explorer provides a range of capabilities, including online call, signature authentication, SDK code generation, and API quick search. It enables you to view the request, response, and auto-generated examples.
The following request parameter list only provides API request parameters and some common parameters. For the complete common parameter list, see Common Request Parameters.
| Parameter Name |
Required |
Type |
Description |
| Action |
Yes |
String |
Common Params. The value used for this API: Decrypt. |
| Version |
Yes |
String |
Common Params. The value used for this API: 2019-01-18. |
| Region |
Yes |
String |
Common Params. For more information, please see the list of regions supported by the product. |
| CiphertextBlob |
Yes |
String |
The ciphertext data to be decrypted. |
| EncryptionContext |
No |
String |
JSON string of key-value pair. If this parameter is specified for Encrypt, the same parameter needs to be provided when the Decrypt API is called. The maximum length is 1,024 bytes. |
| EncryptionPublicKey |
No |
String |
PEM-encoded public key (2048-bit RSA/SM2 key), which can be used to encrypt the Plaintext returned. If this field is left empty, the Plaintext will not be encrypted. |
| EncryptionAlgorithm |
No |
String |
Asymmetric encryption algorithm. Valid values: SM2 (C1C3C2 ciphertext is returned), SM2_C1C3C2_ASN1 (C1C3C2 ASN1 ciphertext is returned), RSAES_PKCS1_V1_5, RSAES_OAEP_SHA_1, and RSAES_OAEP_SHA_256. This field is used in combination with EncryptionPublicKey for encryption. If it is left empty, an SM2 public key will be used by default. |
3. Output Parameters
| Parameter Name |
Type |
Description |
| KeyId |
String |
Globally unique CMK ID |
| Plaintext |
String |
If EncryptionPublicKey is left empty, a Base64-encoded ciphertext will be returned. To get the plaintext, you need to decode the ciphertext first. If EncryptionPublicKey is specified, this field will return the Base64-encoded ciphertext encrypted with the specified public key. To get the plaintext, you need to decode the ciphertext and upload the corresponding private key. |
| RequestId |
String |
The unique request ID, generated by the server, will be returned for every request (if the request fails to reach the server for other reasons, the request will not obtain a RequestId). RequestId is required for locating a problem. |
4. Example
Example1 Decrypt API Example
Decrypt ciphertext.
POST / HTTP/1.1
Host: kms.intl.tencentcloudapi.com
Content-Type: application/json
X-TC-Action: Decrypt
<Common request parameters>
{
"CiphertextBlob": "GPJUsGlmPcSjHKIktXGyzn33yestz+7NteW36M6FuL8hPfJ1xVfdO6Akr8sF69x3yBXMwto4njumJMIsi9WKow==-k-XqqalxTyNKIC1rITRePFGQ==-k-GqsANzNxvjjXhKwJAOY85vxYYm/2RtsCXRq7Q1iWbCAoeAtZ",
"EncryptionContext": "{\"key1\":\"value1\"}",
"EncryptionAlgorithm": "SM2"
}
Output Example
{
"Response": {
"KeyId": "93866e69-9755-11ef-8e65-52540089bc41",
"Plaintext": "dGVzdAo=",
"RequestId": "4c857b16-e977-4086-b33a-532613f03abd"
}
}
5. Developer Resources
SDK
TencentCloud API 3.0 integrates SDKs that support various programming languages to make it easier for you to call APIs.
Command Line Interface
6. Error Code
The following only lists the error codes related to the API business logic. For other error codes, see Common Error Codes.
| Error Code |
Description |
| FailedOperation.EncryptionError |
Encryption failed. |
| InternalError |
Internal error. |
| InvalidParameter |
Invalid parameter. |
| InvalidParameterValue.InvalidCiphertext |
Incorrect ciphertext format |
| ResourceUnavailable.CmkDisabled |
The CMK has been disabled. |
| ResourceUnavailable.CmkNotFound |
The CMK does not exist. |
| UnauthorizedOperation |
Unauthorized operation. |