Überprüfen Sie eine EMV ARQC und generieren Sie eine ARPC - AWS Kryptografie für Zahlungen

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.

Überprüfen Sie eine EMV ARQC und generieren Sie eine ARPC

ARQC(Autorisierungsanforderungs-Kryptogramm) ist ein Kryptogramm, das mit einer EMV (Chip-) Karte generiert und zur Validierung der Transaktionsdetails sowie der Verwendung einer autorisierten Karte verwendet wird. Es beinhaltet Daten von der Karte, dem Terminal und der Transaktion selbst.

Bei der Validierung im Backend werden dieselben Eingaben für AWS Payment Cryptography bereitgestellt. Das Kryptogramm wird intern neu erstellt und mit dem Wert verglichen, der mit der Transaktion bereitgestellt wurde. In diesem Sinne ähnelt es einem. MAC EMV4.4 Buch 2 definiert drei Aspekte dieser Funktion: Methoden zur Schlüsselableitung (bekannt als gemeinsamer SitzungsschlüsselCSK) zur Generierung einmaliger Transaktionsschlüssel, eine Mindestnutzlast und Methoden zur Generierung einer Antwort (ARPC).

Einzelne Kartensysteme können zusätzliche Transaktionsfelder angeben, die aufgenommen werden sollen, oder die Reihenfolge, in der diese Felder angezeigt werden. Es gibt auch andere (allgemein veraltete) schemaspezifische Ableitungsschemata, die an anderer Stelle in dieser Dokumentation behandelt werden.

Weitere Informationen finden Sie VerifyCardValidationDatain der Anleitung. API

Erstellen Sie den Schlüssel

$ aws payment-cryptography create-key --exportable --key-attributes KeyAlgorithm=TDES_2KEY,KeyUsage=TR31_E0_EMV_MKEY_APP_CRYPTOGRAMS,KeyClass=SYMMETRIC_KEY,KeyModesOfUse='{DeriveKey=true}' --tags='[{"Key":"KEY_PURPOSE","Value":"CVN18"},{"Key":"CARD_BIN","Value":"12345678"}]'

Die Antwort gibt die Anforderungsparameter zurück, einschließlich eines ARN für nachfolgende Aufrufe sowie eines Key Check Value (KCV).

{ "Key": { "KeyArn": "arn:aws:payment-cryptography:us-east-2:111122223333:key/pw3s6nl62t5ushfk", "KeyAttributes": { "KeyUsage": "TR31_E0_EMV_MKEY_APP_CRYPTOGRAMS", "KeyClass": "SYMMETRIC_KEY", "KeyAlgorithm": "TDES_2KEY", "KeyModesOfUse": { "Encrypt": false, "Decrypt": false, "Wrap": false, "Unwrap": false, "Generate": false, "Sign": false, "Verify": false, "DeriveKey": true, "NoRestrictions": false } }, "KeyCheckValue": "08D7B4", "KeyCheckValueAlgorithm": "ANSI_X9_24", "Enabled": true, "Exportable": true, "KeyState": "CREATE_COMPLETE", "KeyOrigin": "AWS_PAYMENT_CRYPTOGRAPHY", "CreateTimestamp": "2024-03-07T06:41:46.648000-07:00", "UsageStartTimestamp": "2024-03-07T06:41:46.626000-07:00" } }

Notieren Sie sich den, der den Schlüssel darstelltKeyArn, zum Beispiel arn:aws:payment-cryptography:us-east - 2:111122223333:key/pw3s6nl62t5ushfk. Das benötigen Sie im nächsten Schritt.

Generieren Sie eine ARQC

Das ARQC wird ausschließlich durch eine EMV Karte generiert. Daher bietet AWS Payment Cryptography keine Möglichkeit, eine solche Nutzlast zu generieren. Zu Testzwecken stehen online eine Reihe von Bibliotheken zur Verfügung, die sowohl eine entsprechende Nutzlast als auch bekannte Werte generieren können, die im Allgemeinen von den verschiedenen Schemata bereitgestellt werden.

Validieren Sie eine ARQC

Wenn AWS Payment Cryptography das validieren kannARQC, wird ein http/200 zurückgegeben. Eine ARPC (Antwort) kann optional bereitgestellt und nach der Validierung in die Antwort aufgenommen werden. ARQC

$ aws payment-cryptography-data verify-auth-request-cryptogram --auth-request-cryptogram 61EDCC708B4C97B4 --key-identifier arn:aws:payment-cryptography:us-east-2:111122223333:key/pw3s6nl62t5ushfk --major-key-derivation-mode EMV_OPTION_A --transaction-data 00000000170000000000000008400080008000084016051700000000093800000B1F2201030000000000000000000000000000000000000000000000000000008000000000000000 --session-key-derivation-attributes='{"EmvCommon":{"ApplicationTransactionCounter":"000B", "PanSequenceNumber":"01","PrimaryAccountNumber":"9137631040001422"}}' --auth-response-attributes='{"ArpcMethod2":{"CardStatusUpdate":"12345678"}}'
{ "KeyArn": "arn:aws:payment-cryptography:us-east-2:111122223333:key/pw3s6nl62t5ushfk", "KeyCheckValue": "08D7B4", "AuthResponseValue":"2263AC85" }