Verifique una firma que se hizo con el mecanismo RSA-PKCS-PSS en la CLI de CloudHSM - AWS CloudHSM

Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.

Verifique una firma que se hizo con el mecanismo RSA-PKCS-PSS en la CLI de CloudHSM

Use el comando crypto sign rsa-pkcs-pss de la CLI de CloudHSM para realizar las siguientes operaciones.

  • Confirme que un archivo se haya firmado en el HSM con una clave pública determinada.

  • Verifique que la firma se haya generado mediante el mecanismo de firma RSA-PKCS-PSS.

  • Compare un archivo firmado con un archivo de origen y determine si los dos están relacionados criptográficamente en función de una clave pública rsa y un mecanismo de firma determinados.

Para usar el comando crypto verify rsa-pkcs-pss, primero debe tener una clave pública RSA en el clúster de su AWS CloudHSM. Puede importar una clave pública RSA mediante el comando key import pem (AGREGAR ENLACE DESEMPAQUETADO AQUÍ) con el atributo verify establecido en true.

nota

Puede generar una firma usando la CLI de CloudHSM con los subcomandos La categoría de firma criptográfica en la CLI de CloudHSM.

Tipo de usuario

Los tipos de usuarios siguientes pueden ejecutar este comando.

  • Usuarios de criptografía (CU)

Requisitos

  • Para ejecutar este comando, debe iniciar sesión como CU.

Sintaxis

aws-cloudhsm > help crypto verify rsa-pkcs-pss Verify with the RSA-PKCS-PSS mechanism Usage: crypto verify rsa-pkcs-pss --key-filter [<KEY_FILTER>...] --hash-function <HASH_FUNCTION> --mgf <MGF> --salt-length >SALT_LENGTH< <--data-path <DATA_PATH>|--data <DATA> <--signature-path <SIGNATURE_PATH>|--signature <SIGNATURE>> Options: --cluster-id <CLUSTER_ID> Unique Id to choose which of the clusters in the config file to run the operation against. If not provided, will fall back to the value provided when interactive mode was started, or error --key-filter [<KEY_FILTER>...] Key reference (e.g. key-reference=0xabc) or space separated list of key attributes in the form of attr.KEY_ATTRIBUTE_NAME=KEY_ATTRIBUTE_VALUE to select a matching key --hash-function <HASH_FUNCTION> [possible values: sha1, sha224, sha256, sha384, sha512] --data-path <DATA_PATH> The path to the file containing the data to be verified --data <DATA> Base64 encoded data to be verified --signature-path <SIGNATURE_PATH> The path to where the signature is located --signature <SIGNATURE> Base64 encoded signature to be verified --mgf <MGF> The mask generation function [possible values: mgf1-sha1, mgf1-sha224, mgf1-sha256, mgf1-sha384, mgf1-sha512] --salt-length <SALT_LENGTH> The salt length -h, --help Print help

Ejemplo

En estos ejemplos, se muestra cómo usar crypto verify rsa-pkcs-pss para verificar una firma que se haya generado mediante el mecanismo de firma RSA-PKCS-PSS y la función hash SHA256. Este comando usa una clave pública en el HSM.

ejemplo Ejemplo: verifique una firma codificada en Base64 con datos codificados en Base64
aws-cloudhsm > crypto verify rsa-pkcs-pss --key-filter attr.label=rsa-public --hash-function sha256 --data YWJjMTIz --salt-length 10 --mgf mgf1-sha256 --signature H/z1rYVMzNAa31K4amE5MTiwGxDdCTgQXCJXRBKVOVm7ZuyI0fGE4sT/BUN+977mQEV2TqtWpTsiF2IpwGM1VfSBRt7h/g4o6YERm1tTQLl7q+AJ7uGGK37zCsWQrAo7Vy8NzPShxekePo/ZegrB1aHWN1fE8H3IPUKqLuMDI9o1Jq6kM986ExS7YmeOIclcZkyykTWqHLQVL2C3+A2bHJZBqRcM5XoIpk8HkPypjpN+m4FNUds30GAemoOMl6asSrEJSthaZWV53OBsDOqzA8Rt8JdhXS+GZp3vNLdL1OTBELDPweXVgAu4dBX0FOvpw/gg6sNvuaDK4YOBv2fqKg== { "error_code": 0, "data": { "message": "Signature verified successfully" } }
ejemplo Ejemplo: verifique un archivo de firma con un archivo de datos
aws-cloudhsm > crypto verify rsa-pkcs-pss --key-filter attr.label=rsa-public --hash-function sha256 --data-path data.txt --salt-length 10 --mgf mgf1-sha256 --signature signature-file { "error_code": 0, "data": { "message": "Signature verified successfully" } }
ejemplo Ejemplo: demostrar una relación de firma falsa

Este comando comprueba si los datos inválidos se firmaron mediante una clave pública con la etiqueta rsa-public usando el mecanismo de firma RSA-PKCS-PSS para generar la firma ubicada en /home/signature. Dado que los argumentos especificados no constituyen una relación de firma verdadera, el comando devuelve un mensaje de error.

aws-cloudhsm > crypto verify rsa-pkcs-pss --key-filter attr.label=rsa-public --hash-function sha256 --data aW52YWxpZA== --salt-length 10 --mgf mgf1-sha256 --signature H/z1rYVMzNAa31K4amE5MTiwGxDdCTgQXCJXRBKVOVm7ZuyI0fGE4sT/BUN+977mQEV2TqtWpTsiF2IpwGM1VfSBRt7h/g4o6YERm1tTQLl7q+AJ7uGGK37zCsWQrAo7Vy8NzPShxekePo/ZegrB1aHWN1fE8H3IPUKqLuMDI9o1Jq6kM986ExS7YmeOIclcZkyykTWqHLQVL2C3+A2bHJZBqRcM5XoIpk8HkPypjpN+m4FNUds30GAemoOMl6asSrEJSthaZWV53OBsDOqzA8Rt8JdhXS+GZp3vNLdL1OTBELDPweXVgAu4dBX0FOvpw/gg6sNvuaDK4YOBv2fqKg== { "error_code": 1, "data": "Signature verification failed" }

Argumentos

<CLUSTER_ID>

El ID del clúster en el que se va a ejecutar esta operación.

Obligatorio: si se han configurado varios clústeres.

<DATA>

Datos codificados en Base64 para firmarse.

Obligatorio: Sí (a menos que se proporcione por la ruta de datos)

<DATA_PATH>

Especifica la ubicación de los datos que se deben firmar.

Obligatorio: Sí (a menos que se proporcione por la ruta de datos)

<HASH_FUNCTION>

Especifica la función hash.

Valores válidos:

  • sha1

  • sha224

  • sha256

  • sha384

  • sha512

Obligatorio: sí

<KEY_FILTER>

Referencia clave (por ejemplo, key-reference=0xabc) o lista de atributos clave separados por espacios en forma de attr.KEY_ATTRIBUTE_NAME=KEY_ATTRIBUTE_VALUE para seleccionar una clave coincidente.

Para obtener una lista de los atributos clave de la CLI de CloudHSM que son compatibles, consulte Atributos clave para la CLI de CloudHSM.

Obligatorio: sí

<MFG>

Especifica la función de generación de máscaras.

nota

La función hash de la función de generación de máscaras debe coincidir con la función hash del mecanismo de firma.

Valores válidos:

  • mgf1-sha1

  • mgf1-sha224

  • mgf1-sha256

  • mgf1-sha384

  • mgf1-sha512

Obligatorio: sí

<SIGNATURE>

Firma codificada en Base64.

Obligatorio: Sí (a menos que se proporcione por la ruta de firmas)

<SIGNATURE_PATH>

Especifica la ubicación de la firma.

Obligatorio: Sí (a menos que se proporcione por la ruta de firmas)

Temas relacionados de