Encrypting a DEK
Function
Description: This API is used to encrypt a DEK by using a specified CMK.
URI
POST /v1.0/{project_id}/kms/encrypt-datakey
Parameter |
Mandatory |
Type |
Description |
---|---|---|---|
project_id |
Yes |
String |
Project ID |
Request Parameters
Parameter |
Mandatory |
Type |
Description |
---|---|---|---|
X-Auth-Token |
Yes |
String |
User token. It can be obtained by calling the IAM API that is used for obtaining a user token. The value of X-Subject-Token in the response header is the user token. |
Parameter |
Mandatory |
Type |
Description |
---|---|---|---|
key_id |
Yes |
String |
Key ID. It should be 36 bytes and match the regular expression ^[0-9a-z]{8}-[0-9a-z]{4}-[0-9a-z]{4}-[0-9a-z]{4}-[0-9a-z]{12}$. Example: 0d0466b0-e727-4d9c-b35d-f84bb474a37f |
plain_text |
Yes |
String |
If a CMK uses AES, the DEK plaintext and its SHA256 value (32 bytes) are hexadecimal strings. |
datakey_plain_length |
Yes |
String |
Number of bytes of a DEK in plaintext. The value range is 1 to 1024. Number of bytes of a DEK in plaintext. The value is 64. |
sequence |
No |
String |
36-byte sequence number of a request message. Example: 919c82d4-8046-4722-9094-35c3c6524cff |
Response Parameters
Status code: 200
Parameter |
Type |
Description |
---|---|---|
key_id |
String |
Key ID |
cipher_text |
String |
Ciphertext DEK in hexadecimal format. Two characters represent 1 byte. |
datakey_length |
String |
Length of a DEK, in bytes. |
Status code: 400
Parameter |
Type |
Description |
---|---|---|
error |
Object |
Error message. |
Parameter |
Type |
Description |
---|---|---|
error_code |
String |
Error code returned for an error request. |
error_msg |
String |
Error information returned for an error request. |
Status code: 401
Parameter |
Type |
Description |
---|---|---|
error |
Object |
Error message. |
Parameter |
Type |
Description |
---|---|---|
error_code |
String |
Error code returned for an error request. |
error_msg |
String |
Error information returned for an error request. |
Status code: 403
Parameter |
Type |
Description |
---|---|---|
error |
Object |
Error message. |
Parameter |
Type |
Description |
---|---|---|
error_code |
String |
Error code returned for an error request. |
error_msg |
String |
Error information returned for an error request. |
Status code: 404
Parameter |
Type |
Description |
---|---|---|
error |
Object |
Error message. |
Parameter |
Type |
Description |
---|---|---|
error_code |
String |
Error code returned for an error request. |
error_msg |
String |
Error information returned for an error request. |
Status code: 500
Parameter |
Type |
Description |
---|---|---|
error |
Object |
Error message. |
Parameter |
Type |
Description |
---|---|---|
error_code |
String |
Error code returned for an error request. |
error_msg |
String |
Error information returned for an error request. |
Status code: 502
Parameter |
Type |
Description |
---|---|---|
error |
Object |
Error message. |
Parameter |
Type |
Description |
---|---|---|
error_code |
String |
Error code returned for an error request. |
error_msg |
String |
Error information returned for an error request. |
Status code: 504
Parameter |
Type |
Description |
---|---|---|
error |
Object |
Error message. |
Parameter |
Type |
Description |
---|---|---|
error_code |
String |
Error code returned for an error request. |
error_msg |
String |
Error information returned for an error request. |
Example Requests
{ "key_id" : "0d0466b0-e727-4d9c-b35d-f84bb474a37f", "plain_text" : "7549d9aea901767bf3c0b3e14b10722eaf6f59053bbd82045d04e075e809a0fe6ccab48f8e5efe74e4b18ff0512525e527b10331100f357bf42125d8d5ced94ffbc8ac72b0785ca7fe33eb6776ce3990b11e32b299d9c0a9ee0305fb9540f797", "datakey_plain_length" : "64" }
Example Responses
Status code: 200
Request processing succeeded.
{ "key_id" : "0d0466b0-e727-4d9c-b35d-f84bb474a37f", "datakey_length" : "64", "cipher_text" : "020098009EEAFCE122CAA5927D2XXX..." }
Status Codes
Status Code |
Description |
---|---|
200 |
Request processing succeeded. |
400 |
Invalid request parameters. |
401 |
You must enter a username and password to access the requested page. |
403 |
Authentication failed. |
404 |
The requested resource does not exist or is not found. |
500 |
Internal service error. |
502 |
Failed to complete the request. The server received an invalid response. |
504 |
Gateway timed out. |
Error Codes
See Error Codes.
Feedback
Was this page helpful?
Provide feedbackThank you very much for your feedback. We will continue working to improve the documentation.See the reply and handling status in My Cloud VOC.
For any further questions, feel free to contact us through the chatbot.
Chatbot