- 最新动态
- 功能总览
- 产品介绍
- 计费说明
- 快速入门
- 用户指南
- 最佳实践
- API参考
- SDK参考
- 场景代码示例
-
常见问题
-
密钥管理类
- 什么是密钥管理?
- 什么是用户主密钥?
- 什么是默认密钥?
- 自定义密钥与默认密钥有什么区别?
- 什么是数据加密密钥?
- 为什么不能立即删除用户主密钥?
- 哪些云服务使用KMS加密数据?
- 华为云服务如何使用KMS加密数据?
- 信封加密方式有什么优势?
- 在KMS中创建的自定义密钥的个数是否有限制?
- 是否可以从KMS中导出用户主密钥?
- 如果自定义密钥被彻底删除,用户数据是否还可以解密?
- 如何使用在线工具加解密数据?
- 是否可以更新KMS管理的密钥?
- 在什么场景下推荐使用导入的密钥?
- 密钥材料被意外删除时如何处理?
- 默认密钥如何生成?
- 没有权限操作KMS,该如何处理?
- 如何修补OpenSSL以使用-id-aes256-wrap-pad包装非对称密钥?
- 如何修补GmSSL以使用-sms4-wrap-pad包装非对称密钥?
- KMS支持的密钥算法类型
- 请求KMS异常,错误码401,应该如何处理?
- 进行SM2签名时,如何计算SM3摘要?
- 调用encrypt-data接口,返回的密文和明文有什么关系?
- KMS如何保护创建的密钥?
- 如何使用非对称密钥对公钥对签名结果进行验签?
- 外部导入的密钥支持轮转吗?
- 密钥管理服务支持离线加解密数据吗?
- 为什么SM2算法签名结果不是64字节?
- 如何将原始EC私钥转换成PKCS8格式的私钥对象?
- 如何将原始SM2私钥转换成PKCS8格式的私钥对象?
- 凭据管理类
-
密钥对管理类
- 密钥对的配额是多少?
- 如何创建密钥对?
- 什么是私有密钥对和账号密钥对?
- 导入通过PuTTYgen工具创建的密钥对失败如何处理?
- 使用IE9浏览器无法导入密钥对如何处理?
- 如何使用私钥登录Linux弹性云服务器?
- 如何通过私钥获取Windows弹性云服务器的登录密码?
- 绑定密钥对失败如何处理?
- 替换密钥对失败如何处理?
- 重置密钥对失败如何处理?
- 解绑密钥对失败如何处理?
- 替换密钥对后,服务器需要重启吗?
- 关闭弹性云服务器的密码登录方式后如何重新开启?
- 解绑密钥对后用户无法登录ECS时如何处理?
- 私钥不慎遗失怎么办?
- 如何转换私钥文件格式?
- 密钥对在创建主机成功之后可以更改吗?
- 密钥对是否支持多用户共享?
- 如何获取密钥对的私钥或公钥文件?
- 账号密钥首次创建、首次升级时系统报错如何处理?
- 私有密钥对升级账号密钥对后,会占用账号密钥对配额吗?
- 用户联邦身份登录时,私有密钥对升级账号密钥对之后,为什么私有密钥对会不可见?
- 专属加密类
- 计费类
- 通用类
-
密钥管理类
- 视频帮助
- 文档下载
- 通用参考
链接复制成功!
示例2:加解密大量数据
场景描述
在大量数据加解密的场景,您的程序会经常使用到对数据密钥的加解密。
- 大量数据加密的流程如下:
- 在KMS中创建一个用户主密钥。
- 调用KMS的“create-datakey”接口创建数据加密密钥。用户得到一个明文的数据加密密钥和一个密文的数据加密密钥。其中密文的数据加密密钥是由指定的用户主密钥加密明文的数据加密密钥生成的。
- 用户使用明文的数据加密密钥来加密明文文件,生成密文文件。
- 用户将密文的数据加密密钥和密文文件一同存储到持久化存储设备或服务中。
- 大量数据解密的流程如下:
涉及接口
加解密数据密钥时,需要进行用户主密钥创建、数据密钥创建、加密数据密钥、解密数据密钥等操作,涉及的接口如下:
操作步骤
- 创建用户主密钥。
- 接口相关信息
URI格式:POST /v1.0/{project_id}/kms/create-key
详情请参见创建密钥。
说明:
别名“/default”为服务默认主密钥的后缀名,由服务自动创建。因此用户创建的主密钥别名不能与服务默认主密钥的别名相同,即后缀名不能为“/default”。
- 请求示例
POST: https://{endpoint}/v1.0/53d1aefc533f4ce9a59c26b01667cbcf/kms/create-key
{endpoint}信息请从地区和终端节点获取。
Body:
{ "key_alias": "test" }
- 响应示例
{ "key_info": { "key_id": "bb6a3d22-dc93-47ac-b5bd-88df7ad35f1e", "domain_id": "b168fe00ff56492495a7d22974df2d0b" } }
- 接口相关信息
- 创建数据密钥。
- 接口相关信息
URI格式:POST /v1.0/{project_id}/kms/create-datakey
详情请参见创建数据密钥。
- 请求示例
POST https://{endpoint}/v1.0/53d1aefc533f4ce9a59c26b01667cbcf/kms/create-datakey
{endpoint}信息请从地区和终端节点获取。
您可使用查询密钥列表接口获取当前用户密钥列表,包括key_id等信息 。
Body:
{ "key_id": "0d0466b0-e727-4d9c-b35d-f84bb474a37f", "datakey_length": "512" }
- 响应示例
{ "key_id": "0d0466b0-e727-4d9c-b35d-f84bb474a37f", "plain_text": "8151014275E426C72EE7D44267EF11590DCE0089E19863BA8CC832187B156A72A5A17F17B5EF0D525872C59ECEB72948AF85E18427F8BE0D46545C979306C08D", "cipher_text": "020098009EEAFCE122CAA5927D2E020086F9548BA1675FDB022E4ECC01B96F2189CF4B85E78357E73E1CEB518DAF7A4960E7C7DE8885ED3FB2F1471ABF400119CC1B20BD3C4A9B80AF590EFD0AEDABFDBB0E2B689DA7B6C9E7D3C5645FCD9274802586BE63779471F9156F2CDF07CD8412FFBE9230643034363662302D653732372D346439632D623335642D6638346262343734613337660000000045B05321483BD9F9561865EE7DFE9BE267A42EB104E98C16589CE46940B18E52" }
- 接口相关信息
- 加密数据密钥。
- 接口相关信息
URI格式:POST /v1.0/{project_id}/kms/encrypt-datakey
详情请参见加密数据密钥。
- 请求示例
POST https://{endpoint}/v1.0/53d1aefc533f4ce9a59c26b01667cbcf/kms/encrypt-datakey
{endpoint}信息请从地区和终端节点获取。
您可使用查询密钥列表接口获取当前用户密钥列表,包括key_id等信息 。
Body:
{ "key_id": "0d0466b0-e727-4d9c-b35d-f84bb474a37f", "plain_text": "00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000F5A5FD42D16A20302798EF6ED309979B43003D2320D9F0E8EA9831A92759FB4B", "datakey_plain_length": "64" }
- 响应示例
{ "key_id": "0d0466b0-e727-4d9c-b35d-f84bb474a37f", "cipher_text": "020098005273E14E6E8E95F5463BECDC27E80AF820B9FC086CB47861899149F67CF07DAFF2810B7D27BDF19AB7632488E0926A48DB2FC85BEA905119411B46244C5E6B8036C60A0B0B4842FFE6994518E89C19B1C1D688D9043BCD6053EA7BA0652642CE59F2543C80669139F4F71ABB9BD9A24330643034363662302D653732372D346439632D623335642D66383462623437346133376600000000D34457984F9730D57F228C210FD22CA6017913964B21D4ECE45D81092BB9112E", "datakey_length": "64" }
- 接口相关信息
- 解密数据密钥。
- 接口相关信息
URI格式:POST /v1.0/{project_id}/kms/decrypt-datakey
详情请参见解密数据密钥。
- 请求示例
POST https://{endpoint}/v1.0/53d1aefc533f4ce9a59c26b01667cbcf/kms/decrypt-datakey
{endpoint}信息请从地区和终端节点获取。
您可使用查询密钥列表接口获取当前用户密钥列表,包括key_id等信息 。
Body:
{ "key_id": "0d0466b0-e727-4d9c-b35d-f84bb474a37f", "datakey_cipher_length": "64", "cipher_text": "020098005273E14E6E8E95F5463BECDC27E80AF820B9FC086CB47861899149F67CF07DAFF2810B7D27BDF19AB7632488E0926A48DB2FC85BEA905119411B46244C5E6B8036C60A0B0B4842FFE6994518E89C19B1C1D688D9043BCD6053EA7BA0652642CE59F2543C80669139F4F71ABB9BD9A24330643034363662302D653732372D346439632D623335642D66383462623437346133376600000000D34457984F9730D57F228C210FD22CA6017913964B21D4ECE45D81092BB9112E" }
- 响应示例
{ "data_key": "00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", "datakey_length": "64", "datakey_dgst": "F5A5FD42D16A20302798EF6ED309979B43003D2320D9F0E8EA9831A92759FB4B" }
- 接口相关信息