を検証EMVARQCして を生成する ARPC - AWS Payment Cryptography

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

を検証EMVARQCして を生成する ARPC

ARQC (認証リクエスト暗号) は、 EMV (チップ) カードによって生成され、トランザクションの詳細と承認されたカードの使用を検証するために使用される暗号文です。カード、ターミナル、トランザクション自体からのデータが組み込まれています。

バックエンドの検証時に、 AWS Payment Cryptography に同じ入力が提供され、暗号文が内部で再作成され、トランザクションで指定された値と比較されます。この意味では、 に似ていますMAC。EMV 4.4 Book 2 では、この関数の 3 つの側面として、1 回限りのトランザクションキーを生成するキー取得メソッド (共通セッションキー - と呼ばれるCSK)、最小ペイロード、レスポンスを生成するメソッド () を定義しますARPC。

個々のカードスキームでは、追加するトランザクションフィールドを指定するか、それらのフィールドが表示される順序を指定できます。他の (一般的に非推奨の) スキーム固有の派生スキームも存在し、このドキュメントの他の箇所で説明されています。

詳細については、 APIガイドVerifyCardValidationDataの「」を参照してください。

キーを作成する

$ 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"}]'

レスポンスは、後続の呼び出しARNの やキーチェック値 () など、リクエストパラメータをエコーバックします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" } }

キーKeyArnを表す を書き留めます。例えば、arn:aws: Payment-cryptography:us-east-2:111122223333:key/pw3s6nl62t5ushfk です。これは次のステップで行います。

の生成 ARQC

ARQC はEMVカードによってのみ生成されます。そのため、 AWS Payment Cryptography にはそのようなペイロードを生成する機能はありません。テスト目的では、さまざまなスキームによって一般的に提供される既知の値だけでなく、適切なペイロードを生成できる多数のライブラリがオンラインで利用できます。

の検証 ARQC

AWS Payment Cryptography が を検証できる場合ARQC、http/200 が返されます。ARPC (レスポンス) はオプションで提供でき、 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" }