Desenvuelve una clave privada envuelta y, luego, desencripta la clave de encriptación de contenido que está encriptada con la clave pública.
Solicitud HTTP
POST https://KACLS_URL/privatekeydecrypt
Reemplaza KACLS_URL
por la URL del servicio de lista de control de acceso a las claves (KACLS).
Parámetros de ruta
Ninguno
Cuerpo de la solicitud
El cuerpo de la solicitud contiene datos con la siguiente estructura:
Representación JSON | |
---|---|
{ "authentication": string, "authorization": string, "algorithm": string, "encrypted_data_encryption_key": string, "rsa_oaep_label": string, "reason": string, "wrapped_private_key": string } |
Campos | |
---|---|
authentication |
Es un JWT emitido por el proveedor de identidad (IdP) que afirma quién es el usuario. Consulta tokens de autenticación. |
authorization |
Es un JWT que afirma que el usuario puede desencriptar una clave para |
algorithm |
Es el algoritmo que se usó para encriptar la clave de encriptación de datos (DEK) en la encriptación de sobre. |
encrypted_data_encryption_key |
Es la clave de encriptación del contenido encriptado codificada en Base64, que se encripta con la clave pública asociada a la clave privada. Tamaño máx.: 1 KB |
rsa_oaep_label |
Etiqueta L codificada en Base64, si el algoritmo es RSAES-OAEP. Si el algoritmo no es RSAES-OAEP, se ignora este campo. |
reason |
Es una cadena JSON de transferencia que proporciona contexto adicional sobre la operación. El JSON proporcionado debe limpiarse antes de mostrarse. Tamaño máx.: 1 KB |
wrapped_private_key |
Es la clave privada encapsulada codificada en base64. El tamaño máximo es de 8 KB. El formato de la clave privada o la clave privada encapsulada depende de la implementación del servicio de lista de control de acceso a las claves (KACLS). En el cliente y en el lado de Gmail, esto se trata como un BLOB opaco. |
Cuerpo de la respuesta
Si se ejecuta correctamente, este método devuelve una clave de encriptación de datos en base64.
Si la operación falla, se devuelve una respuesta de error estructurada.
Representación JSON | |
---|---|
{ "data_encryption_key": string } |
Campos | |
---|---|
data_encryption_key |
Es una clave de encriptación de datos codificada en Base64. |
Ejemplo
En este ejemplo, se proporcionan una solicitud y una respuesta de muestra para el método privatekeydecrypt
.
Solicitud
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"
}
Respuesta
{
"data_encryption_key": "akRQtv3nr+jUhcFL6JmKzB+WzUxbkkMyW5kQsqGUAFc="
}