使用场景
前提条件
本章节涉及的“自定义密钥”均为“对称密钥”。对称密钥和非对称密钥的介绍,请参见密钥概述章节。
小数据加解密
当您有少量数据(例如:密码、证书、电话号码等)需要加解密时,用户可以通过KMS界面使用在线工具加解密数据,或者调用KMS的API接口使用指定的用户主密钥直接加密、解密数据。当前支持不大于4KB的小数据加解密。
以保护服务器HTTPS证书为例,采用调用KMS的API接口方式进行说明,如图1所示。
- 用户需要在KMS中创建一个用户主密钥。
- 用户调用KMS的“encrypt-data”接口,使用指定的用户主密钥将明文证书加密为密文证书。
- 用户在服务器上部署密文证书。
- 当服务器需要使用证书时,调用KMS的“decrypt-data”接口,将密文证书解密为明文证书。
大量数据加解密
当您有大量数据(例如:照片、视频或者数据库文件等)需要加解密时,用户可采用信封加密方式加解密数据,无需通过网络传输大量数据即可完成数据加解密。
- 加密本地文件流程,如图2所示。
流程说明如下:
- 用户需要在KMS中创建一个用户主密钥。
- 用户调用KMS的“create-datakey”接口创建数据加密密钥。用户得到一个明文的数据加密密钥和一个密文的数据加密密钥。其中密文的数据加密密钥是由指定的自定义密钥加密明文的数据加密密钥生成的。
- 用户使用明文的数据加密密钥来加密明文文件,生成密文文件。
- 用户将密文的数据加密密钥和密文文件一同存储到持久化存储设备或服务中。
- 解密本地文件流程,如图3所示。
流程说明如下:
- 用户从持久化存储设备或服务中读取密文的数据加密密钥和密文文件。
- 用户调用KMS的“decrypt-datakey”接口,使用对应的用户主密钥(即生成密文的数据加密密钥时所使用的用户主密钥)来解密密文的数据加密密钥,取得明文的数据加密密钥。
如果对应的用户主密钥被误删除,会导致解密失败。因此,需要妥善管理好用户主密钥。
- 用户使用明文的数据加密密钥来解密密文文件。