AWS Payment Cryptography Esempi di Data Plane utilizzando AWS CLI - Esempi di codice dell'AWS SDK

Ci sono altri AWS SDK esempi disponibili nel repository AWS Doc SDK 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

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 operazioni sono estratti di codice da programmi più grandi e devono essere eseguite nel contesto. Sebbene le azioni mostrino come richiamare le singole funzioni di servizio, è possibile visualizzare le azioni nel contesto negli scenari correlati.

Ogni esempio include un collegamento al codice sorgente completo, in cui è possibile trovare istruzioni su come configurare ed eseguire il codice nel contesto.

Argomenti

Azioni

Il seguente esempio di codice mostra come utilizzaredecrypt-data.

AWS CLI

Per decrittografare il testo cifrato

L'decrypt-dataesempio seguente decrittografa i dati di testo cifrato utilizzando una chiave simmetrica. Per questa operazione, la chiave deve essere impostata e impostata su. KeyModesOfUse Decrypt KeyUsage 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 nella AWS Payment Cryptography User Guide.

  • Per API i dettagli, consulta Command DecryptDataReference AWS CLI .

Il seguente esempio di codice mostra come utilizzareencrypt-data.

AWS CLI

Per crittografare i dati

L'encrypt-dataesempio seguente crittografa i dati in chiaro utilizzando una chiave simmetrica. Per questa operazione, la chiave deve essere impostata su e KeyModesOfUse impostata su. Encrypt KeyUsage 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 la sezione Crittografa i dati nella AWS Payment Cryptography User Guide.

  • Per API i dettagli, consulta AWS CLI Command EncryptDataReference.

Il seguente esempio di codice mostra come utilizzaregenerate-card-validation-data.

AWS CLI

Per generare un CVV

L'generate-card-validation-dataesempio seguente genera unCVV/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 delle carte nella AWS Payment Cryptography User Guide.

Il seguente esempio di codice mostra come utilizzaregenerate-mac.

AWS CLI

Per generare un MAC

L'generate-card-validation-dataesempio seguente genera un codice di autenticazione dei messaggi basato su hash (HMAC) per l'autenticazione dei dati delle carte utilizzando l'algoritmo HMAC _ SHA256 e una chiave di HMAC crittografia. La chiave deve essere KeyUsage impostata su TR31_M7_HMAC_KEY e KeyModesOfUse suGenerate.

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 Generate MAC nella AWS Payment Cryptography User Guide.

Il seguente esempio di codice mostra come utilizzaregenerate-pin-data.

AWS CLI

Per generare un PIN

L'generate-card-validation-dataesempio seguente genera un nuovo ordine casuale PIN utilizzando lo PIN schema 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 PIN dati nella AWS Payment Cryptography User Guide.

Il seguente esempio di codice mostra come utilizzarere-encrypt-data.

AWS CLI

Per crittografare nuovamente i dati con una chiave diversa

L're-encrypt-dataesempio seguente decrittografa il testo cifrato che è stato crittografato utilizzando una chiave AES simmetrica e lo cripta nuovamente utilizzando una chiave derivata unica chiave per transazione (). 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 Crittografare e decrittografare i dati nella Payment Cryptography User Guide.AWS

  • Per i API dettagli, consulta ReEncryptDataCommand Reference.AWS CLI

Il seguente esempio di codice mostra come utilizzaretranslate-pin-data.

AWS CLI

Per tradurre PIN i dati

L'translate-pin-dataesempio seguente traduce un blocco PIN da PEK TDES crittografia utilizzando un PIN blocco ISO 0 a un PIN blocco AES ISO 4 utilizzando l'DUKPTalgoritmo.

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 Translate PIN data nella AWS Payment Cryptography User Guide.

Il seguente esempio di codice mostra come utilizzareverify-auth-request-cryptogram.

AWS CLI

Per verificare una richiesta di autenticazione

L'verify-auth-request-cryptogramesempio seguente verifica un Cryptogram di richiesta di autorizzazione (). 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, vedete il crittogramma Verify auth request (ARQC) nella AWS Payment Cryptography User Guide.

Il seguente esempio di codice mostra come utilizzareverify-card-validation-data.

AWS CLI

Per convalidare un CVV

L'verify-card-validation-dataesempio seguente convalida unCVV/CVV2per a. 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 la sezione Verifica dei dati della carta nella AWS Payment Cryptography User Guide.

Il seguente esempio di codice mostra come utilizzareverify-mac.

AWS CLI

Per verificare un MAC

L'verify-macesempio seguente verifica un codice di autenticazione dei messaggi basato su hash (HMAC) per l'autenticazione dei dati delle carte utilizzando l'algoritmo HMAC _ SHA256 e una chiave di HMAC crittografia.

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 Verify MAC nella AWS Payment Cryptography User Guide.

Il seguente esempio di codice mostra come utilizzareverify-pin-data.

AWS CLI

Per verificare un PIN

L'verify-pin-dataesempio seguente convalida a PIN per aPAN.

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 Verify PIN data nella AWS Payment Cryptography User Guide.