

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á.

# Gerar criptograma de solicitação de autenticação (ARQC)
<a name="data-operations.generateauthrequestcryptogram"></a>

 [A API de geração de criptograma de solicitação de autenticação é usada para gerar ARQC.](terminology.md#terms.arqc) Essa API permite que você gere ARQC usando criptografia de AWS pagamento para fins de desenvolvimento e teste. 

**Importante**  
Essa operação se destina somente a cenários de desenvolvimento e teste. Não é recomendável usar essa operação como um substituto para a geração de criptogramas com base em cartões nos fluxos de pagamento de produção.

Para ver todas as opções disponíveis, consulte [GenerateAuthRequestCryptogram](https://docs.aws.amazon.com/payment-cryptography/latest/DataAPIReference/API_GenerateAuthRequestCryptogram.html)a Referência da API. 

Os criptogramas ARQC normalmente requerem as seguintes entradas (embora isso possa variar de acordo com a implementação): 
+ [PAN](terminology.md#terms.pan) - Especificado no PrimaryAccountNumber campo
+ [Número de sequência PAN (PSN)](terminology.md#terms.psn) - especificado no campo PanSequenceNumber 
+ Método de derivação de chave, como Chave de sessão comum (CSK) - especificado no SessionKeyDerivationAttributes
+ Modo de derivação de chave mestra (como EMV Opção A) - Especificado no MajorKeyDerivationMode
+ Dados da transação - Uma sequência de dados da transação, do terminal e do cartão, como valor e data. Especificado no TransactionData campo.
+ [Chave mestra do emissor](terminology.md#terms.imk) - A chave mestra usada para derivar a chave do criptograma (AC). Essa chave protege transações individuais e é especificada no KeyIdentifier campo.

Para obter mais informações sobre como criar e preencher dados de transações, consulte Criptograma de [verificação de solicitação de autenticação (ARQC)](data-operations.verifyauthrequestcryptogram.md).

**Topics**
+ [Exemplos](#w2aac15c25c10c17)

## Exemplos
<a name="w2aac15c25c10c17"></a>

### Visa CVN10
<a name="w2aac15c25c10c17b3"></a>

**Example**  
O exemplo a seguir gera um ARQC usando o Visa CVN10.  
Se a criptografia AWS de pagamento gerar o ARQC com sucesso, um http/200 será retornado com o criptograma gerado.  

```
$ aws payment-cryptography-data generate-auth-request-cryptogram \
--key-identifier arn:aws:payment-cryptography:us-east-2:111122223333:key/pw3s6nl62t5ushfk \
--major-key-derivation-mode EMV_OPTION_A \
--transaction-data 00000000170000000000000008400080008000084016051700000000093800000B03011203000000 \
--session-key-derivation-attributes='{"Visa":{"PanSequenceNumber":"01", \
"PrimaryAccountNumber":"9137631040001422"}}'
```

```
{
  "KeyArn": "arn:aws:payment-cryptography:us-east-2:111122223333:key/pw3s6nl62t5ushfk",
  "KeyCheckValue": "08D7B4",
  "AuthRequestCryptogram": "D791093C8A921769"
}
```

### Visa CVN18 e Visa CVN22
<a name="w2aac15c25c10c17b5"></a>

**Example**  
O exemplo a seguir gera um ARQC usando Visa CVN18 ou CVN22. As operações criptográficas são as mesmas entre CVN18 e CVN22, mas os dados contidos nos dados da transação variam. Comparado ao CVN10, um criptograma completamente diferente é gerado mesmo com as mesmas entradas.  
Se a criptografia AWS de pagamento gerar o ARQC com sucesso, um http/200 será retornado com o criptograma gerado.  

```
$ aws payment-cryptography-data generate-auth-request-cryptogram \
--key-identifier arn:aws:payment-cryptography:us-east-2:111122223333:key/pw3s6nl62t5ushfk \
--major-key-derivation-mode EMV_OPTION_A \
--transaction-data 00000000170000000000000008400080008000084016051700000000093800000B1F22010300000000000 \
00000000000000000000000000000000000000000008000000000000000 \
--session-key-derivation-attributes='{"EmvCommon":{"ApplicationTransactionCounter":"000B", \
"PanSequenceNumber":"01","PrimaryAccountNumber":"9137631040001422"}}'
```

```
{
  "KeyArn": "arn:aws:payment-cryptography:us-east-2:111122223333:key/pw3s6nl62t5ushfk",
  "KeyCheckValue": "08D7B4",
  "AuthRequestCryptogram": "61EDCC708B4C97B4"
}
```