Verificar la firma de un archivo mediante la KMU del AWS CloudHSM
Use el comando verify de la key_mgmt_util del AWS CloudHSM para confirmar si un archivo está firmado con una clave determinada. Para ello, el comando verify compara un archivo firmado con un archivo de origen y analiza si están relacionados criptográficamente en función de una clave pública y un mecanismo de firma determinados. Los archivos se pueden firmar en AWS CloudHSM con la operación sign.
Los mecanismos de firma están representados por los números enteros indicados en la sección de parámetros.
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
verify -h verify -f
<message-file>
-s<signature-file>
-k<public-key-handle>
-m<signature-mechanism>
Ejemplo
Estos ejemplos muestran cómo utilizar verify para comprobar si se ha utilizado una clave pública determinada para firmar un archivo concreto.
ejemplo : verificación de la firma de un archivo
Este comando intenta verificar si un archivo denominado hardwarCert.crt
se firmó con la clave pública 262276
mediante el mecanismo de firma SHA256_RSA_PKCS
para producir el archivo firmado hardwareCertSigned
. Dado que los parámetros especificados representan una relación de firma verdadera, el comando devuelve un mensaje de confirmación.
Command:
verify -f hardwareCert.crt -s hardwareCertSigned -k 262276 -m 1
Signature verification successful Cfm3Verify returned: 0x00 : HSM Return: SUCCESS
ejemplo : demostración de una relación de firma falsa
Este comando verifica si un archivo denominado hardwareCert.crt
se firmó con la clave pública 262276
mediante el mecanismo de firma SHA256_RSA_PKCS
para producir el archivo firmado userCertSigned
. Dado que los parámetros especificados no constituyen una relación de firma verdadera, el comando devuelve un mensaje de error.
Command:
verify -f hardwarecert.crt -s usercertsigned -k 262276 -m 1
Cfm3Verify returned: 0x1b CSP Error: ERR_BAD_PKCS_DATA
Parámetros
Este comando admite los siguientes parámetros.
-f
-
El nombre del archivo de mensaje de origen.
Obligatorio: sí
-s
-
El nombre del archivo firmado.
Obligatorio: sí
-k
-
El identificador de la clave pública que se cree que se utilizó para firmar el archivo.
Obligatorio: sí
-m
-
Un número entero que representa el mecanismo de firma que se supone que se utilizó para firmar el archivo. Los mecanismos posibles se corresponden con los siguientes valores enteros:
Mecanismo de firma
Número entero correspondiente
SHA1_RSA_PKCS
0
SHA256_RSA_PKCS
1
SHA384_RSA_PKCS
2
SHA512_RSA_PKCS
3
SHA224_RSA_PKCS
4
SHA1_RSA_PKCS_PSS
5
SHA256_RSA_PKCS_PSS
6
SHA384_RSA_PKCS_PSS
7
SHA512_RSA_PKCS_PSS
8
SHA224_RSA_PKCS_PSS
9
ECDSA_SHA1
15
ECDSA_SHA224
16
ECDSA_SHA256
17
ECDSA_SHA384
18
ECDSA_SHA512
19
Obligatorio: sí