

Sono disponibili altri esempi AWS SDK nel repository [AWS Doc SDK](https://github.com/awsdocs/aws-doc-sdk-examples) Examples. GitHub 

Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.

# AWS Payment Cryptography Esempi di Data Plane utilizzando AWS CLI
<a name="cli_2_payment-cryptography-data_code_examples"></a>

I seguenti esempi di codice mostrano come eseguire azioni e implementare scenari comuni utilizzando AWS Command Line Interface with AWS Payment Cryptography Data Plane.

Le *azioni* sono estratti di codice da programmi più grandi e devono essere eseguite nel contesto. Sebbene le azioni mostrino come richiamare le singole funzioni del servizio, è possibile visualizzarle contestualizzate negli scenari correlati.

Ogni esempio include un link al codice sorgente completo, in cui vengono fornite le istruzioni su come configurare ed eseguire il codice nel contesto.

**Topics**
+ [Azioni](#actions)

## Azioni
<a name="actions"></a>

### `decrypt-data`
<a name="payment-cryptography-data_DecryptData_cli_2_topic"></a>

Il seguente esempio di codice mostra come utilizzare`decrypt-data`.

**AWS CLI**  
**Come decrittografare il testo criptato**  
L’esempio `decrypt-data` seguente decrittografa i dati di testo criptato utilizzando una chiave simmetrica. Per questa operazione, la chiave deve avere `KeyModesOfUse` impostato su `Decrypt` e `KeyUsage` impostato su `TR31_D0_SYMMETRIC_DATA_ENCRYPTION_KEY`.  

```
aws payment-cryptography-data decrypt-data \
    --key-identifier arn:aws:payment-cryptography:us-east-2:123456789012:key/kwapwa6qaifllw2h \
    --cipher-text 33612AB9D6929C3A828EB6030082B2BD \
    --decryption-attributes 'Symmetric={Mode=CBC}'
```
Output:  

```
{
    "KeyArn": "arn:aws:payment-cryptography:us-east-2:123456789012:key/kwapwa6qaifllw2h",
    "KeyCheckValue": "71D7AE",
    "PlainText": "31323334313233343132333431323334"
}
```
Per ulteriori informazioni, consulta [Decriptare i dati](https://docs.aws.amazon.com/payment-cryptography/latest/userguide/decrypt-data.html) nella *Guida per l’utente di AWS Payment Cryptography (APC)*.  
+  Per i dettagli sull'API, consulta [DecryptData AWS CLI](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/payment-cryptography-data/decrypt-data.html)*Command Reference*. 

### `encrypt-data`
<a name="payment-cryptography-data_EncryptData_cli_2_topic"></a>

Il seguente esempio di codice mostra come utilizzare`encrypt-data`.

**AWS CLI**  
**Come crittografare i dati**  
L’esempio `encrypt-data` seguente crittografa i dati in chiaro utilizzando una chiave simmetrica. Per questa operazione, la chiave deve avere `KeyModesOfUse` impostato su `Encrypt` e `KeyUsage` impostato su `TR31_D0_SYMMETRIC_DATA_ENCRYPTION_KEY`.  

```
aws payment-cryptography-data encrypt-data \
    --key-identifier arn:aws:payment-cryptography:us-east-2:123456789012:key/kwapwa6qaifllw2h \
    --plain-text 31323334313233343132333431323334 \
    --encryption-attributes 'Symmetric={Mode=CBC}'
```
Output:  

```
{
    "KeyArn": "arn:aws:payment-cryptography:us-east-2:123456789012:key/kwapwa6qaifllw2h",
    "KeyCheckValue": "71D7AE",
    "CipherText": "33612AB9D6929C3A828EB6030082B2BD"
}
```
Per ulteriori informazioni, consulta [Crittografare i dati](https://docs.aws.amazon.com/payment-cryptography/latest/userguide/encrypt-data.html) nella *Guida per l’utente di AWS Payment Cryptography (APC)*.  
+  Per i dettagli sull'API, consulta [EncryptData AWS CLI](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/payment-cryptography-data/encrypt-data.html)*Command Reference*. 

### `generate-card-validation-data`
<a name="payment-cryptography-data_GenerateCardValidationData_cli_2_topic"></a>

Il seguente esempio di codice mostra come utilizzare`generate-card-validation-data`.

**AWS CLI**  
**Come generare un CVV**  
L'`generate-card-validation-data`esempio seguente genera un CVV/CVV2.  

```
aws payment-cryptography-data generate-card-validation-data \
    --key-identifier arn:aws:payment-cryptography:us-east-2:123456789012:key/kwapwa6qaifllw2h \
    --primary-account-number=171234567890123 \
    --generation-attributes CardVerificationValue2={CardExpiryDate=0123}
```
Output:  

```
{
    "KeyArn": "arn:aws:payment-cryptography:us-east-2:123456789012:key/kwapwa6qaifllw2h",
    "KeyCheckValue": "CADDA1",
    "ValidationData": "801"
}
```
Per ulteriori informazioni, consulta [Generare i dati della carta](https://docs.aws.amazon.com/payment-cryptography/latest/userguide/generate-card-data.html) nella *Guida per l’utente di AWS Payment Cryptography (APC)*.  
+  *Per i dettagli sull'API, vedere [GenerateCardValidationData](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/payment-cryptography-data/generate-card-validation-data.html)in AWS CLI Command Reference.* 

### `generate-mac`
<a name="payment-cryptography-data_GenerateMac_cli_2_topic"></a>

Il seguente esempio di codice mostra come utilizzare`generate-mac`.

**AWS CLI**  
**Come generare un MAC**  
L'`generate-card-validation-data`esempio seguente genera un Hash-Based Message Authentication Code (HMAC) per l'autenticazione dei dati delle carte utilizzando l'algoritmo HMAC\$1 SHA256 e una chiave di crittografia HMAC. La chiave deve avere `KeyUsage` impostato su `TR31_M7_HMAC_KEY` e `KeyModesOfUse` su `Generate`.  

```
aws payment-cryptography-data generate-mac \
    --key-identifier arn:aws:payment-cryptography:us-east-2:123456789012:key/kwapwa6qaifllw2h \
    --message-data "3b313038383439303031303733393431353d32343038323236303030373030303f33" \
    --generation-attributes Algorithm=HMAC_SHA256
```
Output:  

```
{
    "KeyArn": "arn:aws:payment-cryptography:us-east-2:123456789012:key/kwapwa6qaifllw2h,
    "KeyCheckValue": "2976E7",
    "Mac": "ED87F26E961C6D0DDB78DA5038AA2BDDEA0DCE03E5B5E96BDDD494F4A7AA470C"
}
```
Per ulteriori informazioni, consulta [Generare l’indirizzo MAC](https://docs.aws.amazon.com/payment-cryptography/latest/userguide/generate-mac.html) nella *Guida per l’utente di AWS Payment Cryptography (APC)*.  
+  *Per i dettagli sull'API, vedere in Command Reference. [GenerateMac](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/payment-cryptography-data/generate-mac.html)AWS CLI * 

### `generate-pin-data`
<a name="payment-cryptography-data_GeneratePinData_cli_2_topic"></a>

Il seguente esempio di codice mostra come utilizzare`generate-pin-data`.

**AWS CLI**  
**Come generare un PIN**  
L’esempio `generate-card-validation-data` seguente genera un nuovo PIN casuale utilizzando lo schema PIN Visa.  

```
aws payment-cryptography-data generate-pin-data \
    --generation-key-identifier arn:aws:payment-cryptography:us-east-2:111122223333:key/37y2tsl45p5zjbh2 \
    --encryption-key-identifier arn:aws:payment-cryptography:us-east-2:111122223333:key/ivi5ksfsuplneuyt \
    --primary-account-number 171234567890123 \
    --pin-block-format ISO_FORMAT_0 \
    --generation-attributes VisaPin={PinVerificationKeyIndex=1}
```
Output:  

```
{
    "GenerationKeyArn": "arn:aws:payment-cryptography:us-east-2:111122223333:key/37y2tsl45p5zjbh2",
    "GenerationKeyCheckValue": "7F2363",
    "EncryptionKeyArn": "arn:aws:payment-cryptography:us-east-2:111122223333:key/ivi5ksfsuplneuyt",
    "EncryptionKeyCheckValue": "7CC9E2",
    "EncryptedPinBlock": "AC17DC148BDA645E",
    "PinData": {
        "VerificationValue": "5507"
    }
}
```
Per ulteriori informazioni, consulta [Generare i dati del PIN](https://docs.aws.amazon.com/payment-cryptography/latest/userguide/generate-pin-data.html) nella *Guida per l’utente di AWS Payment Cryptography (APC)*.  
+  Per i dettagli sull'API, consulta [GeneratePinData AWS CLI](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/payment-cryptography-data/generate-pin-data.html)*Command Reference*. 

### `re-encrypt-data`
<a name="payment-cryptography-data_ReEncryptData_cli_2_topic"></a>

Il seguente esempio di codice mostra come utilizzare`re-encrypt-data`.

**AWS CLI**  
**Come crittografare nuovamente i dati con una chiave diversa**  
L’esempio `re-encrypt-data` seguente decrittografa il testo cifrato che è stato crittografato utilizzando una chiave simmetrica AES e lo cripta nuovamente utilizzando una chiave Derived Unique Key Per Transaction (DUKPT).  

```
aws payment-cryptography-data re-encrypt-data \
    --incoming-key-identifier arn:aws:payment-cryptography:us-west-2:111122223333:key/hyvv7ymboitd4vfy \
    --outgoing-key-identifier arn:aws:payment-cryptography:us-west-2:111122223333:key/jl6ythkcvzesbxen \
    --cipher-text 4D2B0BDBA192D5AEFEAA5B3EC28E4A65383C313FFA25140101560F75FE1B99F27192A90980AB9334 \
    --incoming-encryption-attributes "Dukpt={Mode=ECB,KeySerialNumber=0123456789111111}" \
    --outgoing-encryption-attributes '{"Symmetric": {"Mode": "ECB"}}'
```
Output:  

```
{
    "CipherText": "F94959DA30EEFF0C035483C6067667CF6796E3C1AD28C2B61F9CFEB772A8DD41C0D6822931E0D3B1",
    "KeyArn": "arn:aws:payment-cryptography:us-west-2:111122223333:key/jl6ythkcvzesbxen",
    "KeyCheckValue": "2E8CD9"
}
```
Per ulteriori informazioni, consulta [Crittografia e decrittografia dei dati](https://docs.aws.amazon.com/payment-cryptography/latest/userguide/crypto-ops.encryptdecrypt.html) nella *Guida per l’utente di AWS Payment Cryptography (APC)*.  
+  Per i dettagli sull'API, consulta [ReEncryptData AWS CLI](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/payment-cryptography-data/re-encrypt-data.html)*Command Reference*. 

### `translate-pin-data`
<a name="payment-cryptography-data_TranslatePinData_cli_2_topic"></a>

Il seguente esempio di codice mostra come utilizzare`translate-pin-data`.

**AWS CLI**  
**Come tradurre i dati PIN**  
L’esempio `translate-pin-data` seguente traduce un PIN dalla crittografia PEK TDES utilizzando un blocco PIN ISO 0 in un blocco PIN AES ISO 4 utilizzando l’algoritmo DUKPT.  

```
aws payment-cryptography-data translate-pin-data \
    --encrypted-pin-block "AC17DC148BDA645E" \
    --incoming-translation-attributes=IsoFormat0='{PrimaryAccountNumber=171234567890123}' \
    --incoming-key-identifier arn:aws:payment-cryptography:us-east-2:111122223333:key/ivi5ksfsuplneuyt \
    --outgoing-key-identifier arn:aws:payment-cryptography:us-east-2:111122223333:key/4pmyquwjs3yj4vwe \
    --outgoing-translation-attributes IsoFormat4="{PrimaryAccountNumber=171234567890123}" \
    --outgoing-dukpt-attributes KeySerialNumber="FFFF9876543210E00008"
```
Output:  

```
{
    "PinBlock": "1F4209C670E49F83E75CC72E81B787D9",
    "KeyArn": "arn:aws:payment-cryptography:us-east-2:111122223333:key/ivi5ksfsuplneuyt
    "KeyCheckValue": "7CC9E2"
}
```
Per ulteriori informazioni, consulta [Tradurre i dati del PIN](https://docs.aws.amazon.com/payment-cryptography/latest/userguide/translate-pin-data.html) nella *Guida per l’utente di AWS Payment Cryptography (APC)*.  
+  Per i dettagli sull'API, consulta [TranslatePinData AWS CLI](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/payment-cryptography-data/translate-pin-data.html)*Command Reference*. 

### `verify-auth-request-cryptogram`
<a name="payment-cryptography-data_VerifyAuthRequestCryptogram_cli_2_topic"></a>

Il seguente esempio di codice mostra come utilizzare`verify-auth-request-cryptogram`.

**AWS CLI**  
**Come verificare una richiesta di autenticazione**  
L’esempio `verify-auth-request-cryptogram` seguente verifica un Authorization Request Cryptogram (ARQC).  

```
aws payment-cryptography-data verify-auth-request-cryptogram \
    --auth-request-cryptogram F6E1BD1E6037FB3E \
    --auth-response-attributes '{"ArpcMethod1": {"AuthResponseCode": "1111"}}' \
    --key-identifier arn:aws:payment-cryptography:us-west-2:111122223333:key/pboipdfzd4mdklya \
    --major-key-derivation-mode "EMV_OPTION_A" \
    --session-key-derivation-attributes '{"EmvCommon": {"ApplicationTransactionCounter": "1234","PanSequenceNumber": "01","PrimaryAccountNumber": "471234567890123"}}' \
    --transaction-data "123456789ABCDEF"
```
Output:  

```
{
    "AuthResponseValue": "D899B8C6FBF971AA",
    "KeyArn": "arn:aws:payment-cryptography:us-west-2:111122223333:key/pboipdfzd4mdklya",
    "KeyCheckValue": "985792"
}
```
*Per ulteriori informazioni, consulta [Crittogramma di verifica della richiesta di autorizzazione (ARQC)](https://docs.aws.amazon.com/payment-cryptography/latest/userguide/data-operations.verifyauthrequestcryptogram.html) nella Guida per l’utente di AWS Payment Cryptography (APC)*.  
+  Per i dettagli sull'API, consulta [VerifyAuthRequestCryptogram AWS CLI](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/payment-cryptography-data/verify-auth-request-cryptogram.html)*Command Reference*. 

### `verify-card-validation-data`
<a name="payment-cryptography-data_VerifyCardValidationData_cli_2_topic"></a>

Il seguente esempio di codice mostra come utilizzare`verify-card-validation-data`.

**AWS CLI**  
**Come convalidare un CVV**  
L'`verify-card-validation-data`esempio seguente convalida un CVV/ CVV2 per un PAN.  

```
aws payment-cryptography-data verify-card-validation-data \
    --key-identifier arn:aws:payment-cryptography:us-east-2:111122223333:key/tqv5yij6wtxx64pi \
    --primary-account-number=171234567890123 \
    --verification-attributes CardVerificationValue2={CardExpiryDate=0123} \
    --validation-data 801
```
Output:  

```
{
    "KeyArn": "arn:aws:payment-cryptography:us-east-2:111122223333:key/tqv5yij6wtxx64pi",
    "KeyCheckValue": "CADDA1"
}
```
Per ulteriori informazioni, consulta [Verificare i dati della carta](https://docs.aws.amazon.com/payment-cryptography/latest/userguide/verify-card-data.html) nella *Guida per l’utente di AWS Payment Cryptography (APC)*.  
+  *Per i dettagli sull'API, vedere [VerifyCardValidationData](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/payment-cryptography-data/verify-card-validation-data.html)in Command Reference.AWS CLI * 

### `verify-mac`
<a name="payment-cryptography-data_VerifyMac_cli_2_topic"></a>

Il seguente esempio di codice mostra come utilizzare`verify-mac`.

**AWS CLI**  
**Come verificare un MAC**  
L'`verify-mac`esempio seguente verifica un codice di autenticazione dei messaggi basato su hash (HMAC) per l'autenticazione dei dati delle carte utilizzando l'algoritmo HMAC\$1 SHA256 e una chiave di crittografia HMAC.  

```
aws payment-cryptography-data verify-mac \
    --key-identifier arn:aws:payment-cryptography:us-east-2:111122223333:key/qnobl5lghrzunce6 \
    --message-data "3b343038383439303031303733393431353d32343038323236303030373030303f33" \
    --verification-attributes='Algorithm=HMAC_SHA256' \
    --mac ED87F26E961C6D0DDB78DA5038AA2BDDEA0DCE03E5B5E96BDDD494F4A7AA470C
```
Output:  

```
{
    "KeyArn": "arn:aws:payment-cryptography:us-east-2:111122223333:key/qnobl5lghrzunce6,
    "KeyCheckValue": "2976E7",
}
```
Per ulteriori informazioni, consulta [Verificare l’indirizzo MAC](https://docs.aws.amazon.com/payment-cryptography/latest/userguide/verify-mac.html) nella *Guida per l’utente di AWS Payment Cryptography (APC)*.  
+  *Per i dettagli sull'API, vedere in Command Reference. [VerifyMac](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/payment-cryptography-data/verify-mac.html)AWS CLI * 

### `verify-pin-data`
<a name="payment-cryptography-data_VerifyPinData_cli_2_topic"></a>

Il seguente esempio di codice mostra come utilizzare`verify-pin-data`.

**AWS CLI**  
**Come verificare un PIN**  
L’esempio `verify-pin-data` seguente convalida un PIN per un PAN.  

```
aws payment-cryptography-data verify-pin-data \
    --verification-key-identifier arn:aws:payment-cryptography:us-east-2:111122223333:key/37y2tsl45p5zjbh2 \
    --encryption-key-identifier arn:aws:payment-cryptography:us-east-2:111122223333:key/ivi5ksfsuplneuyt \
    --primary-account-number 171234567890123 \
    --pin-block-format ISO_FORMAT_0 \
    --verification-attributes VisaPin="{PinVerificationKeyIndex=1,VerificationValue=5507}" \
    --encrypted-pin-block AC17DC148BDA645E
```
Output:  

```
{
    "VerificationKeyArn": "arn:aws:payment-cryptography:us-east-2:111122223333:key/37y2tsl45p5zjbh2",
    "VerificationKeyCheckValue": "7F2363",
    "EncryptionKeyArn": "arn:aws:payment-cryptography:us-east-2:111122223333:key/ivi5ksfsuplneuyt",
    "EncryptionKeyCheckValue": "7CC9E2",
}
```
Per ulteriori informazioni, consulta [Verificare i dati del PIN](https://docs.aws.amazon.com/payment-cryptography/latest/userguide/verify-pin-data.html) nella *Guida per l’utente di AWS Payment Cryptography*.  
+  Per i dettagli sull'API, consulta [VerifyPinData AWS CLI](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/payment-cryptography-data/verify-pin-data.html)*Command Reference*. 