Metodo: privatekeydecrypt

Estrae una chiave privata con crittografia e poi decripta la chiave di crittografia dei contenuti criptata con la chiave pubblica.

Richiesta HTTP

POST https://KACLS_URL/privatekeydecrypt

Sostituisci KACLS_URL con l'URL del servizio Key Access Control List (KACLS).

Parametri del percorso

Nessuno.

Corpo della richiesta

Il corpo della richiesta contiene dati con la seguente struttura:

Rappresentazione JSON
{
  "authentication": string,
  "authorization": string,
  "algorithm": string,
  "encrypted_data_encryption_key": string,
  "rsa_oaep_label": string,
  "reason": string,
  "wrapped_private_key": string
}
Campi
authentication

string

Un JWT emesso dal provider di identità che dichiara l'identità dell'utente. Vedi token di autenticazione.

authorization

string

Un JWT che afferma che l'utente è autorizzato a decrittografare una chiave per resource_name. Vedi token di autorizzazione.

algorithm

string

L'algoritmo utilizzato per criptare la chiave di crittografia dei dati (DEK) nella crittografia envelope.

encrypted_data_encryption_key

string (UTF-8)

Chiave di crittografia dei contenuti criptata con codifica Base64, criptata con la chiave pubblica associata alla chiave privata. Dimensioni massime: 1 kB.

rsa_oaep_label

string

Etichetta L con codifica Base64, se l'algoritmo è RSAES-OAEP. Se l'algoritmo non è RSAES-OAEP, questo campo viene ignorato.

reason

string (UTF-8)

Una stringa JSON passthrough che fornisce un contesto aggiuntivo sull'operazione. Il JSON fornito deve essere sottoposto a sanitizzazione prima di essere visualizzato. Dimensioni massime: 1 kB.

wrapped_private_key

string

La chiave privata con wrapping con codifica Base64. Dimensioni massime: 8 kB.

Il formato della chiave privata o della chiave privata sottoposta a wrapping dipende dall'implementazione del servizio di controllo dell'accesso per le chiavi (KACLS). Sul client e su Gmail, questo viene trattato come un blob opaco.

Corpo della risposta

Se l'operazione ha esito positivo, questo metodo restituisce una chiave di crittografia dei dati con codifica base64.

Se l'operazione non va a buon fine, viene restituita una risposta di errore strutturata.

Rappresentazione JSON
{
  "data_encryption_key": string
}
Campi
data_encryption_key

string

Una chiave di crittografia dei dati codificata in Base64.

Esempio

Questo esempio fornisce una richiesta e una risposta di esempio per il metodo privatekeydecrypt.

Richiesta

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

Risposta

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