Unión de claves

La unión de claves es el proceso de usar una clave para encriptar otra con el propósito de almacenarla de forma segura o transmitirla por medio de un canal no confiable. La unión de claves puede emplear criptografía simétrica o asimétrica, según el contexto.

En Cloud KMS, este proceso se usa para importar de forma segura las claves criptográficas que proporciona el usuario. La importación de claves requiere un trabajo de importación, el cual tiene un método de importación que especifica el protocolo de unión de claves utilizado.

Cloud KMS espera que el material de clave importado tenga formatos específicos. Antes de unir tu material de clave para importarlo, es posible que debas convertirlo al formato que espera Cloud KMS. En el artículo sobre el formateo de claves para su importación, encontrarás información detallada sobre los formatos requeridos, así como instrucciones acerca de cómo convertir tus claves al formato requerido si es necesario.

Una vez que el material de clave tenga el formato correcto, la herramienta de línea de comandos de gcloud puede unir el material de clave de manera automática antes de transmitirlo de forma segura a Cloud KMS. Para obtener más detalles, consulta Importa una clave. Como alternativa, también puedes unir las claves manualmente mediante los protocolos criptográficos adecuados. El artículo Unión de una clave con OpenSSL en Linux proporciona un ejemplo de cómo realizar esta operación.

Métodos de importación

Cloud KMS ofrece los siguientes métodos de importación:

Método de importación Tipo de clave de trabajo de importación Algoritmo de unión de claves
RSA_OAEP_3072_SHA1_AES_256 (recomendado) RSA de 3072 bits RSAES-OAEP con SHA-1 + AES-KWP
RSA_OAEP_4096_SHA1_AES_256 RSA de 4,096 bits RSAES-OAEP con SHA-1 + AES-KWP

Algoritmos de unión de claves

Los métodos de importación que proporciona Cloud KMS corresponden a los siguientes algoritmos de unión de claves:

RSAES-OAEP con SHA-1 + AES-KWP

Este algoritmo de unión de claves es un esquema de encriptación híbrido que consta de una operación de unión de claves asimétrica y otra simétrica:

  1. La clave pública del trabajo de importación se utiliza con RSAES-OAEP, con MGF-1 y el algoritmo de resumen SHA-1, para encriptar una clave AES-256 de uso único. La clave AES-256 de uso único se genera en el momento en que se realiza la unión.
  2. La clave AES-256 de uso único del paso 1 se utiliza para encriptar el material de clave objetivo mediante la unión de clave AES con relleno.

El material de clave unido para la importación es un arreglo de un solo byte compuesto por los resultados del paso 1, seguido de los resultados del paso 2. En otras palabras, los resultados de los pasos 1 y 2 se concatenan para formar el material de clave unido.

Este algoritmo es el mismo que el algoritmo de unión de claves PKCS #11 CKM_RSA_AES_KEY_WRAP. Si importas una clave desde un HSM, y tu HSM es compatible con este algoritmo, puedes usarlo directamente. De manera alternativa, los pasos 1 y 2 mencionados con anterioridad se pueden realizar con los mecanismos PKCS #11 CKM_RSA_PKCS_OAEP y CKM_AES_KEY_WRAP_PAD, respectivamente.

Si tu HSM de origen (o cualquier otro proveedor de claves, en caso de que no uses HSM) no admite el mecanismo de unión de claves RSA AES, debes unir manualmente tu material de clave mediante el uso de la clave pública del trabajo de importación. Para ver un ejemplo de cómo hacer esto con OpenSSL, consulta cómo unir una clave con OpenSSL en Linux.

¿Te ha resultado útil esta página? Enviar comentarios:

Enviar comentarios sobre...

Documentación de Cloud KMS