AWS Payment Cryptography Beispiele für Datenebenen mit AWS CLI - AWS SDKCode-Beispiele

Weitere AWS SDK Beispiele sind im Repo AWS Doc SDK Examples GitHub verfügbar.

Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.

AWS Payment Cryptography Beispiele für Datenebenen mit AWS CLI

Die folgenden Codebeispiele zeigen Ihnen, wie Sie mithilfe von AWS Command Line Interface with AWS Payment Cryptography Data Plane Aktionen ausführen und allgemeine Szenarien implementieren.

Aktionen sind Codeauszüge aus größeren Programmen und müssen im Kontext ausgeführt werden. Aktionen zeigen Ihnen zwar, wie Sie einzelne Servicefunktionen aufrufen, aber Sie können Aktionen in den zugehörigen Szenarien im Kontext sehen.

Jedes Beispiel enthält einen Link zum vollständigen Quellcode, in dem Sie Anweisungen zum Einrichten und Ausführen des Codes im Kontext finden.

Themen

Aktionen

Das folgende Codebeispiel zeigt die Verwendungdecrypt-data.

AWS CLI

Um Chiffretext zu entschlüsseln

Im folgenden decrypt-data Beispiel werden Chiffretextdaten mithilfe eines symmetrischen Schlüssels entschlüsselt. Für diesen Vorgang muss der Schlüssel auf und auf KeyModesOfUse gesetzt seinDecrypt. 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}'

Ausgabe:

{ "KeyArn": "arn:aws:payment-cryptography:us-east-2:123456789012:key/kwapwa6qaifllw2h", "KeyCheckValue": "71D7AE", "PlainText": "31323334313233343132333431323334" }

Weitere Informationen finden Sie unter Daten entschlüsseln im AWS Payment Cryptography User Guide.

  • APIEinzelheiten finden Sie DecryptDatain der AWS CLI Befehlsreferenz.

Das folgende Codebeispiel zeigt die Verwendungencrypt-data.

AWS CLI

Um Daten zu verschlüsseln

Im folgenden encrypt-data Beispiel werden Klartextdaten mit einem symmetrischen Schlüssel verschlüsselt. Für diesen Vorgang muss der Schlüssel auf Encrypt und KeyUsage auf KeyModesOfUse gesetzt sein. 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}'

Ausgabe:

{ "KeyArn": "arn:aws:payment-cryptography:us-east-2:123456789012:key/kwapwa6qaifllw2h", "KeyCheckValue": "71D7AE", "CipherText": "33612AB9D6929C3A828EB6030082B2BD" }

Weitere Informationen finden Sie unter Daten verschlüsseln im AWS Payment Cryptography User Guide.

  • APIEinzelheiten finden Sie EncryptDatain der AWS CLI Befehlsreferenz.

Das folgende Codebeispiel zeigt die Verwendunggenerate-card-validation-data.

AWS CLI

Um eine zu generieren CVV

Das folgende generate-card-validation-data Beispiel generiert einCVV/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}

Ausgabe:

{ "KeyArn": "arn:aws:payment-cryptography:us-east-2:123456789012:key/kwapwa6qaifllw2h", "KeyCheckValue": "CADDA1", "ValidationData": "801" }

Weitere Informationen finden Sie unter Generieren von Kartendaten im AWS Payment Cryptography User Guide.

Das folgende Codebeispiel zeigt die Verwendunggenerate-mac.

AWS CLI

Um eine zu generieren MAC

Im folgenden generate-card-validation-data Beispiel wird ein Hash-Based Message Authentication Code (HMAC) für die Kartendatenauthentifizierung mithilfe des Algorithmus HMAC _ SHA256 und eines HMAC Verschlüsselungsschlüssels generiert. Der Schlüssel muss auf TR31_M7_HMAC_KEY und auf KeyUsage gesetzt KeyModesOfUse seinGenerate.

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

Ausgabe:

{ "KeyArn": "arn:aws:payment-cryptography:us-east-2:123456789012:key/kwapwa6qaifllw2h, "KeyCheckValue": "2976E7", "Mac": "ED87F26E961C6D0DDB78DA5038AA2BDDEA0DCE03E5B5E96BDDD494F4A7AA470C" }

Weitere Informationen finden Sie unter Generate MAC im AWS Payment Cryptography User Guide.

  • APIEinzelheiten finden Sie GenerateMacin der AWS CLI Befehlsreferenz.

Das folgende Codebeispiel zeigt die Verwendunggenerate-pin-data.

AWS CLI

Um eine zu generieren PIN

Im folgenden generate-card-validation-data Beispiel wird PIN mithilfe des PIN Visa-Schemas ein neues Zufallsprinzip generiert.

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}

Ausgabe:

{ "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" } }

Weitere Informationen finden Sie unter Generieren von PIN Daten im AWS Payment Cryptography User Guide.

  • APIEinzelheiten finden Sie GeneratePinDatain der AWS CLI Befehlsreferenz.

Das folgende Codebeispiel zeigt die Verwendungre-encrypt-data.

AWS CLI

Um Daten mit einem anderen Schlüssel erneut zu verschlüsseln

Im folgenden re-encrypt-data Beispiel wird Chiffriertext, der mit einem AES symmetrischen Schlüssel verschlüsselt wurde, entschlüsselt und mit einem Derived Unique Key Per Transaction () -Schlüssel erneut verschlüsselt. 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"}}'

Ausgabe:

{ "CipherText": "F94959DA30EEFF0C035483C6067667CF6796E3C1AD28C2B61F9CFEB772A8DD41C0D6822931E0D3B1", "KeyArn": "arn:aws:payment-cryptography:us-west-2:111122223333:key/jl6ythkcvzesbxen", "KeyCheckValue": "2E8CD9" }

Weitere Informationen finden Sie unter Daten verschlüsseln und entschlüsseln im Payment Cryptography User Guide.AWS

  • APIEinzelheiten finden Sie unter Befehlsreferenz ReEncryptData.AWS CLI

Das folgende Codebeispiel zeigt die Verwendungtranslate-pin-data.

AWS CLI

Um PIN Daten zu übersetzen

Im folgenden translate-pin-data Beispiel wird mithilfe des DUKPT Algorithmus eine PIN PEK TDES Von-Verschlüsselung mit einem ISO PIN 0-Block in eine AES ISO PIN 4-Block-Verschlüsselung übersetzt.

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"

Ausgabe:

{ "PinBlock": "1F4209C670E49F83E75CC72E81B787D9", "KeyArn": "arn:aws:payment-cryptography:us-east-2:111122223333:key/ivi5ksfsuplneuyt "KeyCheckValue": "7CC9E2" }

Weitere Informationen finden Sie unter PINDaten Translate im AWS Payment Cryptography User Guide.

Das folgende Codebeispiel zeigt die Verwendungverify-auth-request-cryptogram.

AWS CLI

Um eine Authentifizierungsanfrage zu überprüfen

Im folgenden verify-auth-request-cryptogram Beispiel wird ein Autorisierungsanforderungs-Kryptogramm () verifiziert. 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"

Ausgabe:

{ "AuthResponseValue": "D899B8C6FBF971AA", "KeyArn": "arn:aws:payment-cryptography:us-west-2:111122223333:key/pboipdfzd4mdklya", "KeyCheckValue": "985792" }

Weitere Informationen finden Sie unter Verify Auth Request (ARQC) -Kryptogramm im AWS Payment Cryptography User Guide.

Das folgende Codebeispiel zeigt die Verwendungverify-card-validation-data.

AWS CLI

Um eine zu validieren CVV

Im folgenden verify-card-validation-data Beispiel wird einCVV/CVV2für ein PAN validiert.

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

Ausgabe:

{ "KeyArn": "arn:aws:payment-cryptography:us-east-2:111122223333:key/tqv5yij6wtxx64pi", "KeyCheckValue": "CADDA1" }

Weitere Informationen finden Sie unter Kartendaten verifizieren im AWS Payment Cryptography User Guide.

Das folgende Codebeispiel zeigt die Verwendungverify-mac.

AWS CLI

Um ein zu verifizieren MAC

Im folgenden verify-mac Beispiel wird ein Hash-Based Message Authentication Code (HMAC) für die Kartendatenauthentifizierung mithilfe des Algorithmus HMAC _ SHA256 und eines HMAC Verschlüsselungsschlüssels verifiziert.

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

Ausgabe:

{ "KeyArn": "arn:aws:payment-cryptography:us-east-2:111122223333:key/qnobl5lghrzunce6, "KeyCheckValue": "2976E7", }

Weitere Informationen finden Sie unter Verify MAC im AWS Payment Cryptography User Guide.

  • APIEinzelheiten finden Sie VerifyMacin der AWS CLI Befehlsreferenz.

Das folgende Codebeispiel zeigt die Verwendungverify-pin-data.

AWS CLI

Um ein zu verifizieren PIN

Das folgende verify-pin-data Beispiel validiert a PIN für a. 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

Ausgabe:

{ "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", }

Weitere Informationen finden Sie unter PINDaten verifizieren im AWS Payment Cryptography User Guide.

  • APIEinzelheiten finden Sie VerifyPinDatain der AWS CLI Befehlsreferenz.