Importar una clave privada con la KMU de AWS CloudHSM - AWS CloudHSM

Importar una clave privada con la KMU de AWS CloudHSM

Use el comando importPrivateKey de la key_mgmt_util del AWS CloudHSM para importar una clave privada y asimétrica de un archivo a un módulo de seguridad de hardware (HSM). El HSM no permite la importación directa de claves en texto no cifrado. El comando cifra la clave privada mediante una clave de encapsulamiento AES que usted especifique y desencapsula la clave dentro del HSM. Si intenta asociar una clave de AWS CloudHSM a un certificado, consulte este tema.

nota

No puede importar una clave PEM protegida con contraseña mediante una clave simétrica o privada.

Debe especificar una clave de encapsulamiento AES que tenga un valor de atributo OBJ_ATTR_UNWRAP y OBJ_ATTR_ENCRYPT 1. Para buscar los atributos de una clave, utilice el comando getAttribute.

nota

Este comando no ofrece la opción de marcar la clave importada como no exportable.

Antes de ejecutar cualquier comando de key_mgmt_util, debe iniciar key_mgmt_util e lniciar sesión en el HSM como usuario de criptografía (CU).

Sintaxis

importPrivateKey -h importPrivateKey -l <label> -f <key-file> -w <wrapping-key-handle> [-sess] [-id <key-id>] [-m_value <0...8>] [min_srv <minimum-number-of-servers>] [-timeout <number-of-seconds>] [-u <user-ids>] [-wk <wrapping-key-file>] [-attest]

Ejemplos

Este ejemplo muestra cómo utilizar importPrivateKey para importar una clave privada en un HSM.

ejemplo : importar una clave privada

Este comando importa la clave privada de un archivo denominado rsa2048.key con la etiqueta rsa2048-imported y una clave de encapsulación con el identificador 524299. Cuando el comando se ejecuta correctamente, importPrivateKey devuelve un identificador de clave para la clave importada y un mensaje de confirmación.

Command: importPrivateKey -f rsa2048.key -l rsa2048-imported -w 524299 BER encoded key length is 1216 Cfm3WrapHostKey returned: 0x00 : HSM Return: SUCCESS Cfm3CreateUnwrapTemplate returned: 0x00 : HSM Return: SUCCESS Cfm3UnWrapKey returned: 0x00 : HSM Return: SUCCESS Private Key Unwrapped. Key Handle: 524301 Cluster Error Status Node id 0 and err state 0x00000000 : HSM Return: SUCCESS Node id 1 and err state 0x00000000 : HSM Return: SUCCESS Node id 2 and err state 0x00000000 : HSM Return: SUCCESS

Parámetros

Este comando admite los siguientes parámetros.

-h

Muestra la ayuda de la línea de comando para el comando.

Obligatorio: sí

-l

Especifica la etiqueta de clave privada definida por el usuario.

Obligatorio: sí

-f

Especifica el nombre de archivo de la clave que se va a importar.

Obligatorio: sí

-w

Especifica el identificador de la clave de encapsulamiento. Este parámetro es obligatorio. Para buscar identificadores de clave, utilice el comando findKey.

Para determinar si una clave se puede utilizar como clave de encapsulación, utilice getAttribute para obtener el valor del atributo OBJ_ATTR_WRAP (262). Para crear una clave de encapsulación, utilice genSymKey para crear una clave AES (de tipo 31).

Si utiliza el parámetro -wk para especificar una clave de desencapsulación externa, la clave de encapsulación -w se utiliza para encapsular, pero no desencapsular, la clave durante la importación.

Obligatorio: sí

-sess

Especifica la clave importada como una clave de sesión.

Valor predeterminado: la clave importada se mantiene como clave persistente (token) en el clúster.

Requerido: no

-id

Especifica el ID de la clave que se va a importar.

Predeterminado: sin valor de ID.

Requerido: no

-m_value

Especifica el número de usuarios que deben aprobar cualquier operación criptográfica que utilice la clave importada. Especifique un valor entre 0 y 8.

Este parámetro solo es válido cuando el parámetro -u del comando comparte la clave con suficientes usuarios para satisfacer el requisito m_value.

Predeterminado: 0

Requerido: no

-min_srv

Especifica el número mínimo de HSM en los que la clave importada se sincroniza antes de que caduque el valor del parámetro -timeout. Si la clave no está sincronizada con el número especificado de servidores en el tiempo asignado, no se creará.

AWS CloudHSM sincroniza automáticamente cada clave con cada HSM del clúster. Para acelerar el proceso, establezca el valor de min_srv en un número menor que el de HSM del clúster y establezca un valor bajo de tiempo de espera. Sin embargo, tenga en cuenta que puede que algunas solicitudes no generen ninguna clave.

Predeterminado: 1

Requerido: no

-timout

Especifica el número de segundos que se debe esperar hasta que la clave se sincronice entre los HSM cuando se incluye el parámetro min-serv. Si no se ningún número, el sondeo continúa indefinidamente.

Valor predeterminado: sin límite

Requerido: no

-u

Especifica la lista de usuarios con los que se va a compartir la clave privada importada. Este parámetro concede a otros usuarios de criptografía (CU) de HSM permiso para usar la clave importada en operaciones criptográficas.

Escriba una lista de identificadores de usuario de HSM separada por comas, como -u 5,6. No incluya el ID de usuario de HSM del usuario actual. Para buscar los ID de usuario de HSM de los CU del HSM, utilice listUsers.

Valor predeterminado: solo el usuario actual puede utilizar la clave importada.

Requerido: no

-wk

Especifica la clave que se utilizará para encapsular la clave que se está importando. Escriba la ruta y el nombre de un archivo que contenga una clave AES sin cifrar.

Si se incluye este parámetro, importPrivateKey utiliza la clave del archivo -wk para encapsular la clave que se va a importar. También utiliza la clave especificada por el parámetro -w para desencapsularla.

Valor predeterminado: utilizar la clave de encapsulación especificada en el parámetro -w para encapsular y desencapsular.

Requerido: no

-attest

Realiza una comprobación de conformidad de la respuesta del firmware para asegurarse de que el firmware en el que se ejecuta el clúster no ha sido manipulado.

Requerido: no

Temas relacionados de