重加密
功能介绍
将密文使用源密钥解密后,再使用指定的新密钥加密。
能将CreateDatekey,CreateDatakeyWithoutPlainText,EncryptDatakey加密的数据密钥密文重新加密成新的数据密钥密文。
能将EncryptData加密的密文重新加密成新的密文。
注意:
数据密钥只会被重加密成数据密钥
调用方法
请参见如何调用API。
URI
POST /v1.0/{project_id}/kms/re-encrypt
参数 |
是否必选 |
参数类型 |
描述 |
---|---|---|---|
project_id |
是 |
String |
项目ID |
请求参数
参数 |
是否必选 |
参数类型 |
描述 |
---|---|---|---|
X-Auth-Token |
是 |
String |
用户Token。 通过调用IAM服务获取用户Token接口获取(响应消息头中X-Subject-Token的值)。 |
参数 |
是否必选 |
参数类型 |
描述 |
---|---|---|---|
source_key_id |
否 |
String |
原密钥ID,用于解密密文。对于非对称密钥加密的密文source_key_id必填。对于对称密钥加密的密文,推荐填写source_key_id。kms会优先使用您填写的source_key_id进行解密。不填时会尝试从密文中解析出加密时使用的密钥ID进行解密。 |
source_additional_authenticated_data |
否 |
String |
加密原密文时使用的aad信息。如果加密时,没指定aad,则不能填写,否则会造成解密失败 |
source_encryption_algorithm |
否 |
String |
加密原密文时使用的加密算法。默认值为“SYMMETRIC_DEFAULT”,合法枚举值如下: SYMMETRIC_DEFAULT RSAES_OAEP_SHA_1 RSAES_OAEP_SHA_256 SM2_ENCRYPT 注意:RSAES_OAEP_SHA_1已不再安全,请谨慎使用 |
destination_key_id |
是 |
String |
目的密钥ID,用于加密解密后的明文 |
destination_additional_authenticated_data |
否 |
String |
如果指定了值,会在重加密时,作为aad参与计算 |
destination_encryption_algorithm |
否 |
String |
重加密新密文时使用的加密算法。默认值为“SYMMETRIC_DEFAULT”,合法枚举值如下: SYMMETRIC_DEFAULT RSAES_OAEP_SHA_1 RSAES_OAEP_SHA_256 SM2_ENCRYPT 注意:RSAES_OAEP_SHA_1已不再安全,请谨慎使用 |
datakey_cipher_length |
否 |
String |
当密文是CBC 模式加密的 数据密钥时,需要指定datakey_cipher_length。表示明文密钥材料的字节数 |
cipher_text |
是 |
String |
需要进行重加密的密文。 |
响应参数
状态码:200
参数 |
参数类型 |
描述 |
---|---|---|
key_id |
String |
重新加密时使用的密钥ID |
source_key_id |
String |
加密原密文时使用的密钥ID |
source_encryption_algorithm |
String |
原密文加密时使用的加密算法 |
destination_encryption_algorithm |
String |
重新加密时使用的加密算法 |
cipher_text |
String |
重新加密后的密文 |
请求示例
https://kms.cn-north-4.myhuaweicloud.com/v1.0/d4e559b49b3b403da5279723299ed4a6/kms/re-encrypt { "source_key_id" : "054faae3-ffc2-4b23-8d94-c05bfc8f596a", "source_additional_authenticated_data" : "", "source_encryption_algorithm" : "SYMMETRIC_DEFAULT", "destination_key_id" : "8ad47b5b-037e-4ff9-bf04-6900e3213c17", "destination_additional_authenticated_data" : "123", "destination_encryption_algorithm" : "SYMMETRIC_DEFAULT", "datakey_cipher_length" : "32", "cipher_text" : "020078000871efb21bfdc0712becf0dabfcc115a25eae06efb652aa9afa9689a4c4ec46b4bbeb3a902369b1a53eab67e9b8e730ced3879d1fb62c27cc314f2a44943687741a5d250403c861e4410936d422ef2d330353466616165332d666663322d346232332d386439342d63303562666338663539366100000000ed7fb70234ac273dedc19752900c6f7e4577fc2c1f1482539d0142ab0ff9fdda" }
响应示例
无
状态码
状态码 |
描述 |
---|---|
200 |
请求已成功 |
错误码
请参见错误码。