产生数据密钥

产生数据密钥:GenerateDataKey

描述

利用一个主密钥产生一个数据密钥,且可以用其来对本地数据进行加解密操作。

plainText字段返回数据密钥明文,cipherTextBlob字段返回数据密钥密文。

说明:
  • 当需要利用数据密钥对本地磁盘大量业务数据进行加解密时,您可以利用如下方式进行:
    1. 首先通过调用我们提供的API接口generateDataKey产生数据密钥;
    2. 获取API接口返回的plainText(数据密钥明文),对本地数据进行加密,然后删除数据密钥明文;
    3. 将加密后的数据及API接口返回的数据密钥密文进行本地持久化,实现明文不落地。
  • 当keySpec和numberOfBytes都不填写时,默认keySpec为AES_256。
  • 同时指定numberOfBytes和keySpec时,以numberOfBytes为准。

请求参数

名称 类型 是否必需 描述
keyId String 密钥的全局唯一标识符
keySpec String 产生数据密钥的长度与类型,AES_256表示256比特的对称密钥,AES_128表示128比特的对称密钥
numberOfBytes String 产生数据密钥的长度,以字节为单位。有效值:1 到 1024
encryptionContext String 附加盐值,如果指定了该参数,则在调用Decrypt 时需要提供同样的参数

返回参数

名称 类型 描述
code String 返回码,成功返回"SUCCESS"
cipherTextBlob String 加密后的数据密钥Data key
keyId String 密钥的全局唯一标识符
plainText String 数据密钥明文
requestId String 当前请求Id

请求示例

https://kms-cn-shanghai.yun.pingan.com/?action=GenerateDataKey
      &keyId=
      &keySpec=
      &numberOfBytes=
      &encryptionContext=
      &<公共请求参数>

返回示例

{
            "code": "SUCCESS",
            "cipherTextBlob": "your data key cipher text blob ",
            "plainText": "your data key plain text",
            "keyId": "your key id",
            "requestId": "1d2f32cf-d75f-48c0-a9e4-05b82c6fe867"
      }
以上内容是否解决了您的问题?
请补全提交信息!
咨询·建议

电话咨询

400-151-8800

邮件咨询

cloud@pingan.com

在线客服

工单支持

解决云产品相关技术问题