View a markdown version of this page

EMV ARQC 확인 및 ARPC 생성 - AWS 결제 암호화

기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.

EMV ARQC 확인 및 ARPC 생성

ARQC(Authorization Request Cryptogram)는 EMV(칩) 카드에서 생성한 암호로, 트랜잭션 세부 정보와 승인된 카드 사용을 검증하는 데 사용됩니다. 카드, 터미널 및 트랜잭션 자체의 데이터를 통합합니다.

백엔드의 검증 시 동일한 입력이 AWS Payment Cryptography에 제공되고, 암호가 내부적으로 다시 생성되며, 트랜잭션과 함께 제공된 값과 비교됩니다. 이러한 의미에서 MAC와 유사합니다. EMV 4.4 Book 2는이 함수의 세 가지 측면, 즉 일회성 트랜잭션 키를 생성하기 위한 키 유도 방법(일반 세션 키 - 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" } }

arn:aws:payment-cryptography:us-east-2:111122223333:key/pw3s6nl62t5ushfk와 같이 키를 KeyArn 나타내는를 기록해 둡니다. 다음 단계에서 이 작업을 수행합니다.

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