Methode: privatekeydecrypt

Entpackt einen verpackten privaten Schlüssel und entschlüsselt dann den Inhaltsverschlüsselungsschlüssel, der mit dem öffentlichen Schlüssel verschlüsselt ist.

HTTP-Anfrage

POST https://KACLS_URL/privatekeydecrypt

Ersetzen Sie KACLS_URL durch die URL des Key Access Control List Service (KACLS).

Pfadparameter

Keine.

Anfragetext

Der Anfragetext enthält Daten mit folgender Struktur:

JSON-Darstellung
{
  "authentication": string,
  "authorization": string,
  "algorithm": string,
  "encrypted_data_encryption_key": string,
  "rsa_oaep_label": string,
  "reason": string,
  "wrapped_private_key": string
}
Felder
authentication

string

Ein JWT, das vom Identitätsanbieter (Identity Provider, IdP) ausgestellt wurde und angibt, wer der Nutzer ist. Weitere Informationen finden Sie unter Authentifizierung tokens.

authorization

string

Ein JWT, das bestätigt, dass der Nutzer einen Schlüssel für resource_name entpacken darf. Weitere Informationen finden Sie unter Autorisierung Tokens.

algorithm

string

Der Algorithmus, der zum Verschlüsseln des Datenverschlüsselungsschlüssels (Data Encryption Key DEK) bei der Envelope-Verschlüsselung verwendet wurde.

encrypted_data_encryption_key

string (UTF-8)

Base64-codierter verschlüsselter Inhaltsverschlüsselungsschlüssel, der mit dem öffentlichen Schlüssel verschlüsselt ist, der mit dem privaten Schlüssel verknüpft ist. Maximale Größe: 1 KB.

rsa_oaep_label

string

Base64-codierte Bezeichnung L, wenn der Algorithmus RSAES-OAEP ist. Wenn der Algorithmus nicht RSAES-OAEP ist, wird dieses Feld ignoriert.

reason

string (UTF-8)

Ein JSON-String, der zusätzlichen Kontext zum Vorgang bietet. Das bereitgestellte JSON sollte vor der Anzeige bereinigt werden. Maximale Größe: 1 KB.

wrapped_private_key

string

Der Base64-codierte verpackte private Schlüssel. Maximale Größe: 8 KB.

Das Format des privaten Schlüssels oder des verpackten privaten Schlüssels hängt von der Implementierung des Key Access Control List Service (KACLS) ab. Auf dem Client und auf der Gmail-Seite wird er als undurchsichtiger Blob behandelt.

Antworttext

Bei Erfolg gibt diese Methode einen Base64-Datenverschlüsselungsschlüssel zurück.

Wenn der Vorgang fehlschlägt, wird eine strukturierte Fehlermeldung zurückgegeben.

JSON-Darstellung
{
  "data_encryption_key": string
}
Felder
data_encryption_key

string

Ein Base64-codierter Datenverschlüsselungsschlüssel.

Beispiel

Dieses Beispiel enthält eine Beispielanfrage und -antwort für die Methode privatekeydecrypt.

Anfrage

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"
}

Antwort

{
  "data_encryption_key": "akRQtv3nr+jUhcFL6JmKzB+WzUxbkkMyW5kQsqGUAFc="
}