解開已包裝的私密金鑰,然後解密已加密至公開金鑰的內容加密金鑰。
HTTP 要求
POST https://BASE_URL/privatekeydecrypt
將 BASE_URL
替換為基準網址。
路徑參數
無。
要求主體
要求主體的資料會採用以下結構:
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 |
JWT 斷言使用者可為 |
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="
}