1. 接口描述
接口请求域名: kms.tencentcloudapi.com 。
使用指定CMK对密文重新加密。
默认接口请求频率限制:100次/秒。
推荐使用 API Explorer
点击调试
API Explorer 提供了在线调用、签名验证、SDK 代码生成和快速检索接口等能力。您可查看每次调用的请求内容和返回结果以及自动生成 SDK 调用示例。
2. 输入参数
以下请求参数列表仅列出了接口请求参数和部分公共参数,完整公共参数列表见 公共请求参数。
参数名称 | 必选 | 类型 | 描述 |
---|---|---|---|
Action | 是 | String | 公共参数,本接口取值:ReEncrypt。 |
Version | 是 | String | 公共参数,本接口取值:2019-01-18。 |
Region | 是 | String | 公共参数,详见产品支持的 地域列表。 |
CiphertextBlob | 是 | String | 需要重新加密的密文 示例值:M1UPpYhWviWGrfn78MLVBG1n5G2H6+pGK5u7xOmoWoCcWpxVKC1OAQujzQSLHWBE54p3Kd8Qji+7FOPN3nkQeA==-k-fKVP3WIlGpg8m9LMW4jEkQ==-k-8VyKJSv97jE/+mKGeevmUUvCXLYzWs6Zxn3PZoeBW4aPCjYX |
DestinationKeyId | 否 | String | 重新加密使用的CMK,如果为空,则使用密文原有的CMK重新加密(若密钥没有轮换则密文不会刷新) 示例值:87ff856e-973c-11ef-947b-525400d834e5 |
SourceEncryptionContext | 否 | String | CiphertextBlob 密文加密时使用的key/value对的json字符串。如果加密时未使用,则为空 示例值:{"key":"value"} |
DestinationEncryptionContext | 否 | String | 重新加密使用的key/value对的json字符串,如果使用该字段,则返回的新密文在解密时需要填入相同的字符串 示例值:{"key1":"value1"} |
3. 输出参数
参数名称 | 类型 | 描述 |
---|---|---|
CiphertextBlob | String | 重新加密后的密文 示例值:M1UPpYhWviWGrfn78MLVBG1n5G2H6+pGK5u7xOmoWoCcWpxVKC1OAQujzQSLHWBE54p3Kd8Qji+7FOPN3nkQeA==-k-XqqalxTyNKIC1rITRePFGQ==-k-8VyKJSv97jE/+mKGeevmUUvCXLYzWs6Zxn3PZoeBW4aPCjYX |
KeyId | String | 重新加密使用的CMK 示例值:87ff856e-973c-11ef-947b-525400d834e5 |
SourceKeyId | String | 重新加密前密文使用的CMK 示例值:87ff856e-973c-11ef-947b-525400d834e5 |
ReEncrypted | Boolean | true表示密文已经重新加密。同一个CMK进行重加密,在密钥没有发生轮换的情况下不会进行实际重新加密操作,返回原密文 示例值:true |
RequestId | String | 唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。 |
4. 示例
示例1 重加密接口示例
对密文进行重新加密。
输入示例
POST / HTTP/1.1
Host: kms.tencentcloudapi.com
Content-Type: application/json
X-TC-Action: ReEncrypt
<公共请求参数>
{
"CiphertextBlob": "M1UPpYhWviWGrfn78MLVBG1n5G2H6+pGK5u7xOmoWoCcWpxVKC1OAQujzQSLHWBE54p3Kd8Qji+7FOPN3nkQeA==-k-fKVP3WIlGpg8m9LMW4jEkQ==-k-8VyKJSv97jE/+mKGeevmUUvCXLYzWs6Zxn3PZoeBW4aPCjYX",
"DestinationKeyId": "87ff856e-973c-11ef-947b-525400d834e5",
"DestinationEncryptionContext": "{\"key1\":\"value1\"}"
}
输出示例
{
"Response": {
"CiphertextBlob": "M1UPpYhWviWGrfn78MLVBG1n5G2H6+pGK5u7xOmoWoCcWpxVKC1OAQujzQSLHWBE54p3Kd8Qji+7FOPN3nkQeA==-k-XqqalxTyNKIC1rITRePFGQ==-k-8VyKJSv97jE/+mKGeevmUUvCXLYzWs6Zxn3PZoeBW4aPCjYX",
"KeyId": "87ff856e-973c-11ef-947b-525400d834e5",
"ReEncrypted": true,
"RequestId": "6c3281fb-5286-49d5-8aeb-4a4424bc4271",
"SourceKeyId": "87ff856e-973c-11ef-947b-525400d834e5"
}
}
5. 开发者资源
腾讯云 API 平台
腾讯云 API 平台 是综合 API 文档、错误码、API Explorer 及 SDK 等资源的统一查询平台,方便您从同一入口查询及使用腾讯云提供的所有 API 服务。
API Inspector
用户可通过 API Inspector 查看控制台每一步操作关联的 API 调用情况,并自动生成各语言版本的 API 代码,也可前往 API Explorer 进行在线调试。
SDK
云 API 3.0 提供了配套的开发工具集(SDK),支持多种编程语言,能更方便的调用 API。
- Tencent Cloud SDK 3.0 for Python: GitHub Gitee
- Tencent Cloud SDK 3.0 for Java: GitHub Gitee
- Tencent Cloud SDK 3.0 for PHP: GitHub Gitee
- Tencent Cloud SDK 3.0 for Go: GitHub Gitee
- Tencent Cloud SDK 3.0 for Node.js: GitHub Gitee
- Tencent Cloud SDK 3.0 for .NET: GitHub Gitee
- Tencent Cloud SDK 3.0 for C++: GitHub Gitee
- Tencent Cloud SDK 3.0 for Ruby: GitHub Gitee
命令行工具
6. 错误码
以下仅列出了接口业务逻辑相关的错误码,其他错误码详见 公共错误码。
错误码 | 描述 |
---|---|
InternalError | 内部错误。 |
InvalidParameter | 参数错误。 |
InvalidParameterValue.InvalidCiphertext | 密文格式错误。 |
InvalidParameterValue.InvalidKeyId | KeyId不合法。 |
ResourceUnavailable.CmkDisabled | CMK已被禁用。 |
ResourceUnavailable.CmkNotFound | CMK不存在。 |
UnauthorizedOperation | 未授权操作。 |