Extracción de claves mediante la JCE de AWS CloudHSM - AWS CloudHSM

Extracción de claves mediante la JCE de AWS CloudHSM

La extensión de criptografía de Java (JCE) utiliza una arquitectura que permite conectar diferentes implementaciones de criptografía. AWS CloudHSM envía uno de esos proveedores de JCE que transfiere las operaciones criptográficas al HSM. Para que la mayoría de los demás proveedores de JCE trabajen con claves almacenadas en AWS CloudHSM, deben extraer los bytes de clave de los HSM en texto claro y guardarlos en la memoria de la máquina para su uso. Por lo general, los HSM solo permiten extraer las claves como objetos encapsulados, no como texto transparente. Sin embargo, para facilitar los casos de uso de la integración entre proveedores, AWS CloudHSM ofrece una opción de configuración opcional para habilitar la extracción de los bytes clave sin cifrar.

importante

JCE transfiere las operaciones a AWS CloudHSM cada vez que se especifique el proveedor de AWS CloudHSM o se utilice un objeto clave de AWS CloudHSM. No necesita extraer las claves sin cifrar si espera que la operación se lleve a cabo dentro del HSM. La extracción de claves en texto no cifrado solo es necesaria cuando la aplicación no puede utilizar mecanismos seguros, como encapsular y desencapsular una clave, debido a las restricciones de una biblioteca externa o de un proveedor de JCE.

De forma predeterminada, el proveedor de JCE de AWS CloudHSM permite la extracción de claves públicas para que funcione con proveedores de JCE externos. Siempre se permiten los siguientes métodos:

Clase Método Formato (GetEncoded)
Clave pública de EC getEncoded() X.509
getW() N/A
RSAPublicKey getEncoded() X.509
getPublicExponent() N/A
CloudHsmRsaPrivateCrtKey getPublicExponent() N/A

De forma predeterminada, el proveedor de JCE de AWS CloudHSM no permite la extracción de los bytes de claves sin cifrar para las claves privadas o secretas. Si su caso de uso lo requiere, puede habilitar la extracción de los bytes de claves sin cifrar para claves privadas o secretas en las siguientes condiciones:

  1. El atributo EXTRACTABLE para claves privadas y secretas se establece como true.

    • De forma predeterminada, el atributo EXTRACTABLE de las claves privadas y secretas está establecido como true. Las claves de EXTRACTABLE son claves que se pueden exportar fuera del HSM. Para obtener más información, consulte Atributos de Java admitidos para SDK 5 de cliente.

  2. El atributo WRAP_WITH_TRUSTED para claves privadas y secretas se establece en false.