解封装封装的私钥,然后解密使用公钥加密的内容加密密钥。
HTTP 请求
POST https://KACLS_URL/privatekeydecrypt
将 KACLS_URL 替换为密钥访问控制列表服务 (KACLS) 网址。
路径参数
无。
请求正文
请求正文中包含结构如下的数据:
| JSON 表示法 | |
|---|---|
{ "authentication": string, "authorization": string, "algorithm": string, "encrypted_data_encryption_key": string, "rsa_oaep_label": string, "reason": string, "wrapped_private_key": string } |
|
| 字段 | |
|---|---|
authentication |
身份提供方 (IdP) 发布的 JWT,用于断言用户身份。请参阅 身份验证 令牌。 |
authorization |
用于断言用户有权为
|
algorithm |
用于在信封加密中加密数据加密密钥 (DEK) 的算法。 |
encrypted_data_encryption_key |
采用 Base64 编码的加密内容加密密钥,该密钥使用与私钥关联的公钥进行加密。 最大 大小:1 KB。 |
rsa_oaep_label |
如果算法为 RSAES-OAEP,则为采用 Base64 编码的标签 L。如果 算法不是 RSAES-OAEP,则系统会忽略此字段。 |
reason |
一个直通 JSON 字符串,用于提供有关操作的其他背景信息。 提供的 JSON 应先经过清理,然后再 显示。最大大小:1 KB。 |
wrapped_private_key |
采用 Base64 编码的封装私钥。最大大小:8 KB。 私钥或封装私钥的格式取决于 密钥访问控制列表服务 (KACLS) 实现。在客户端和 Gmail 端,这被视为不透明 blob。 |
响应正文
如果成功,此方法会返回一个 Base64 数据加密密钥。
如果操作失败,系统会返回 结构化错误回复 。
| JSON 表示法 | |
|---|---|
{ "data_encryption_key": string } |
|
| 字段 | |
|---|---|
data_encryption_key |
采用 Base64 编码的数据加密密钥。 |
示例
此示例提供了 privatekeydecrypt 方法的示例请求和响应。
请求
POST https://mykacls.example.org/v1/privatekeydecrypt
{
"wrapped_private_key": "wHrlNOTI9mU6PBdqiq7EQA...",
"encrypted_data_encryption_key": "dGVzdCB3cmFwcGVkIGRlaw...",
"authorization": "eyJhbGciOi...",
"authentication": "eyJhbGciOi...",
"algorithm": "RSA/ECB/PKCS1Padding",
"reason": "decrypt"
}
响应
{
"data_encryption_key": "akRQtv3nr+jUhcFL6JmKzB+WzUxbkkMyW5kQsqGUAFc="
}