Método: privilegedprivatekeydecrypt

Descriptografa sem verificar a ACL da chave privada encapsulada. Ele é usado para descriptografar os dados exportados (takeout) do Google.

Solicitação HTTP

POST https://BASE_URL/privilegedprivatekeydecrypt

Substitua BASE_URL pelo URL base.

Parâmetros de caminho

Nenhum.

Corpo da solicitação

O corpo da solicitação contém dados com a seguinte estrutura:

Representação JSON
{
  "authentication": string,
  "algorithm": string,
  "encrypted_data_encryption_key": string,
  "rsa_oaep_label": string,
  "reason": string,
  "spki_hash": string,
  "spki_hash_algorithm": string,
  "wrapped_private_key": string
}
Campos
authentication

string

Um JWT emitido pelo provedor de identidade (IdP) que declara quem é o usuário. Consulte tokens de autenticação.

algorithm

string

O algoritmo usado para criptografar a chave de criptografia de dados (DEK, na sigla em inglês) na criptografia de envelope.

encrypted_data_encryption_key

string (UTF-8)

Chave de criptografia de conteúdo criptografado em Base64, que é criptografada com a chave pública associada à chave privada. Tamanho máximo: 1 KB.

rsa_oaep_label

string

Rótulo L codificado em Base64 se o algoritmo for RSAES-OAEP. Se o algoritmo não for RSAES-OAEP, este campo será ignorado.

reason

string (UTF-8)

Uma string JSON de passagem que fornece mais contexto sobre a operação. O JSON fornecido precisa ser limpo antes da exibição. Tamanho máximo: 1 KB.

spki_hash

string

Resumo codificado em base64 padrão do SubjectPublicKeyInfo codificado em DER da chave privada que está sendo acessada.

spki_hash_algorithm

string

Algoritmo usado para produzir spki_hash. Pode ser "SHA-256".

wrapped_private_key

string

A chave privada encapsulada codificada em base64. Tamanho máximo: 8 KB.

Corpo da resposta

Se for bem-sucedido, esse método retornará a chave de criptografia de dados base64. Essa chave é usada no lado do cliente para descriptografar o corpo da mensagem.

Se a operação falhar, uma resposta de erro estruturado será retornada.

Representação JSON
{
  "data_encryption_key": string
}
Campos
data_encryption_key

string

Uma chave de criptografia de dados codificada em base64.

Exemplo

Este exemplo fornece um exemplo de solicitação e resposta para o método privilegedprivatekeydecrypt.

Solicitação

POST https://mykacls.example.org/v1/privilegedprivatekeydecrypt

{
  "wrapped_private_key": "wHrlNOTI9mU6PBdqiq7EQA...",
  "encrypted_data_encryption_key": "dGVzdCB3cmFwcGVkIGRlaw...",
  "authentication": "eyJhbGciOi...",
  "spki_hash": "LItGzrmjSFD57QdrY1dcLwYmSwBXzhQLAA6zVcen+r0=",
  "spki_hash_algorithm": "SHA-256",
  "algorithm": "RSA/ECB/PKCS1Padding",
  "reason": "admin decrypt"
}

Resposta

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