Desencapsula uma chave privada encapsulada e, em seguida, descriptografa a chave de criptografia de conteúdo que está criptografado com a chave pública.
Solicitação HTTP
POST https://BASE_URL/privatekeydecrypt
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, "authorization": string, "algorithm": string, "encrypted_data_encryption_key": string, "rsa_oaep_label": string, "reason": string, "wrapped_private_key": string } |
Campos | |
---|---|
authentication |
Um JWT emitido pelo provedor de identidade (IdP) que declara quem é o usuário. Consulte tokens de autenticação. |
authorization |
Um JWT que declara que o usuário tem permissão para desencapsular uma chave para |
algorithm |
O algoritmo usado para criptografar a chave de criptografia de dados (DEK) na criptografia de envelope. |
encrypted_data_encryption_key |
Chave de criptografia de conteúdo criptografada codificada em Base64, que é criptografada com a chave pública associada à chave privada. Tamanho máximo: 1 KB. |
rsa_oaep_label |
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 |
Uma string JSON de passagem que fornece contexto adicional sobre a operação. O JSON fornecido deve ser limpo antes de ser exibido. Tamanho máximo: 1 KB. |
wrapped_private_key |
A chave privada encapsulada codificada em base64. Tamanho máximo: 8 KB. O formato da chave privada ou da chave privada encapsulada depende da implementação do serviço de lista de controle de acesso a chaves (KACLS, na sigla em inglês). No cliente e no Gmail, isso é tratado como um blob opaco. |
Corpo da resposta
Se bem-sucedido, esse método retorna uma chave de criptografia de dados base64.
Se a operação falhar, uma resposta de erro estruturada é retornado.
Representação JSON | |
---|---|
{ "data_encryption_key": string } |
Campos | |
---|---|
data_encryption_key |
Uma chave de criptografia de dados codificada em base64. |
Exemplo
Neste exemplo, apresentamos um exemplo de solicitação e resposta para o privatekeydecrypt
.
.
Solicitação
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"
}
Resposta
{
"data_encryption_key": "akRQtv3nr+jUhcFL6JmKzB+WzUxbkkMyW5kQsqGUAFc="
}