

As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.

# Verificar uma assinatura assinada com o mecanismo RSA-PKCS na CloudHSM CLI
<a name="cloudhsm_cli-crypto-verify-rsa-pkcs"></a>

Use o comando **crypto verify rsa-pkcs** na CloudHSM CLI para concluir as seguintes operações:
+ Confirme se um arquivo foi assinado no HSM por uma determinada chave pública.
+ Verifique se a assinatura foi gerada usando o mecanismo de assinatura `RSA-PKCS`.
+ Compare um arquivo assinado com um arquivo de origem e determina se os dois estão criptograficamente relacionados com base em uma determinada chave pública RSA e em um mecanismo de assinatura.

Para usar o **crypto verify rsa-pkcs** comando, primeiro você deve ter uma chave pública RSA em seu AWS CloudHSM cluster.

**nota**  
Você pode gerar uma assinatura usando a CloudHSM CLI com os subcomandos contidos em [A categoria de assinatura criptográfica na CLI do CloudHSM](cloudhsm_cli-crypto-sign.md).

## Tipo de usuário
<a name="cloudhsm_cli-crypto-verify-rsa-pkcs-userType"></a>

Os seguintes tipos de usuários podem executar este comando.
+ Usuários de criptomoedas (CUs)

## Requisitos
<a name="cloudhsm_cli-crypto-verify-rsa-pkcs-requirements"></a>
+ Para executar esse comando, você deve estar registrado(a) como um CU.

## Sintaxe
<a name="cloudhsm_cli-crypto-verify-rsa-pkcs-syntax"></a>

```
aws-cloudhsm > help crypto verify rsa-pkcs
Verify with the RSA-PKCS mechanism

Usage: crypto verify rsa-pkcs --key-filter [<KEY_FILTER>...] --hash-function <HASH_FUNCTION> <--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
      --data-type <DATA_TYPE>
          The type of data passed in, either raw or digest [possible values: raw, digest]
  -h, --help
          Print help
```

## Exemplo
<a name="cloudhsm_cli-crypto-verify-rsa-pkcs-examples"></a>

Esses exemplos mostram como usar **crypto verify rsa-pkcs** para verificar uma assinatura que foi gerada usando o mecanismo de assinatura RSA-PKCS e a função hash `SHA256`. Esse comando usa uma chave pública no HSM.

**Example Exemplo: verificar uma assinatura codificada em Base64 com dados codificados em Base64**  

```
aws-cloudhsm > crypto verify rsa-pkcs --hash-function sha256 --key-filter attr.label=rsa-public --data YWJjMTIz --signature XJ7mRyHnDRYrDWTQuuNb+5mhoXx7VTsPMjgOQW4iMN7E42eNHj2Q0oovMmBdHUEH0F4HYG8FBJOBhvGuM8J/z6y41GbowVpUT6WzjnIQs79K9i7i6oR1TYjLnIS3r/zkimuXcS8/ZxyDzru+GO9BUT9FFU/of9cvu4Oyn6a5+IXuCbKNQs19uASuFARUTZ0a0Ny1CB1MulxUpqGTmI91J6evlP7k/2khwDmJ5E8FEar5/Cvbn9t21p3Uj561ngTXrYbIZ2KHpef9jQh/cEIvFLG61sexJjQi8EdTxeDA+I3ITO0qrvvESvA9+Sj7kdG2ceIicFS8/8LwyxiIC31UHQ==
{
  "error_code": 0,
  "data": {
    "message": "Signature verified successfully"
  }
}
```

**Example Exemplo: verificar um arquivo de assinatura com um arquivo de dados**  

```
aws-cloudhsm > crypto verify rsa-pkcs --hash-function sha256 --key-filter attr.label=rsa-public --data-path data.txt --signature-path signature-file
{
  "error_code": 0,
  "data": {
    "message": "Signature verified successfully"
  }
}
```

**Example Exemplo: provar relacionamento de assinatura falso**  
Esse comando verifica se os dados inválidos foram assinados por uma chave pública com o rótulo `rsa-public` usando o mecanismo de assinatura RSAPKCS para produzir a assinatura localizada em `/home/signature`. Como os argumentos fornecidos não formam um relacionamento de assinatura verdadeiro, o comando retorna uma mensagem de erro.  

```
aws-cloudhsm > crypto verify rsa-pkcs --hash-function sha256 --key-filter attr.label=rsa-public --data aW52YWxpZA== --signature XJ7mRyHnDRYrDWTQuuNb+5mhoXx7VTsPMjgOQW4iMN7E42eNHj2Q0oovMmBdHUEH0F4HYG8FBJOBhvGuM8J/z6y41GbowVpUT6WzjnIQs79K9i7i6oR1TYjLnIS3r/zkimuXcS8/ZxyDzru+GO9BUT9FFU/of9cvu4Oyn6a5+IXuCbKNQs19uASuFARUTZ0a0Ny1CB1MulxUpqGTmI91J6evlP7k/2khwDmJ5E8FEar5/Cvbn9t21p3Uj561ngTXrYbIZ2KHpef9jQh/cEIvFLG61sexJjQi8EdTxeDA+I3ITO0qrvvESvA9+Sj7kdG2ceIicFS8/8LwyxiIC31UHQ==
{
  "error_code": 1,
  "data": "Signature verification failed"
}
```

## Argumentos
<a name="cloudhsm_cli-crypto-verify-rsa-pkcs-arguments"></a>

***<CLUSTER\$1ID>***  
O ID do cluster em que essa operação será executada.  
Obrigatório: se vários clusters tiverem sido [configurados.](cloudhsm_cli-configs-multi-cluster.md)

***<DATA>***  
Dados codificados em Base64 a serem assinados.  
Obrigatório: sim (a menos que seja fornecido por meio do caminho de dados)

***<DATA\$1PATH>***  
Especifica o local dos dados a serem assinados.  
Obrigatório: sim (a menos que seja fornecido por meio do caminho de dados)

***<HASH\$1FUNCTION>***  
Especifica a função hash.   
Valores válidos:  
+ sha1
+ sha224
+ sha256
+ sha384
+ sha512
Obrigatório: Sim

***<KEY\$1FILTER>***  
Referência de chave (por exemplo, `key-reference=0xabc`) ou lista separada por espaços de atributos de chave na forma de `attr.KEY_ATTRIBUTE_NAME=KEY_ATTRIBUTE_VALUE` selecionar uma chave correspondente.  
Para obter uma lista dos atributos de chave compatíveis com a CloudHSM CLI, consulte Atributos de chave da CloudHSM CLI.  
Obrigatório: Sim

***<SIGNATURE>***  
Assinatura codificada em Base64.  
Obrigatório: sim (a menos que seja fornecido por meio do caminho da assinatura)

***<SIGNATURE\$1PATH>***  
Especifica o local da assinatura.  
Obrigatório: sim (a menos que seja fornecido por meio do caminho da assinatura)

***<DATA\$1TYPE>***  
 Especifica se o valor do parâmetro de dados deve ser criptografado com hash como parte do algoritmo de assinatura. Use `raw` para dados sem hash; use `digest` para resumos, que já estão criptografados com hash.   
Em relação a RSA-PKCS, os dados devem ser passados no formato codificado DER, conforme especificado na [RFC 8017, Seção 9.2](https://www.rfc-editor.org/rfc/rfc8017#section-9.2)  
Valores válidos:  
+ bruto
+ resumo

## Tópicos relacionados
<a name="cloudhsm_cli-crypto-verify-rsa-pkcs-seealso"></a>
+ [A categoria de assinatura criptográfica na CLI do CloudHSM](cloudhsm_cli-crypto-sign.md)
+ [A categoria de verificação de criptografia na CLI do CloudHSM](cloudhsm_cli-crypto-verify.md)