View a markdown version of this page

Validasi PIN terhadap offset pin IBM3624 yang disimpan sebelumnya - AWS Kriptografi Pembayaran

Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.

Validasi PIN terhadap offset pin IBM3624 yang disimpan sebelumnya

Dalam contoh ini, Anda memvalidasi PIN yang disediakan pemegang kartu terhadap offset pin yang disimpan dalam file dengan penerbit kartu atau prosesor. Input termasuk kunci verifikasi (PVK), kunci enkripsi (PEK), nomor akun utama, blok PIN terenkripsi dari terminal pembayaran (atau penyedia hulu lainnya seperti jaringan kartu), dan offset pin yang disimpan sebelumnya. Jika PIN cocok, API mengembalikan HTTP/200 respons.

Perintah ini mensyaratkan bahwa kunci verifikasi pin adalah tipe TR31_V1_IBM3624_PIN_VERIFICATION_KEY dan kunci enkripsi adalah tipeTR31_P0_PIN_ENCRYPTION_KEY.

Validasi panjang PIN

--pin-data-lengthParameter opsional menentukan panjang PIN yang diverifikasi (4 hingga 12 digit). Jika Anda tidak menentukan parameter ini, panjang PIN default yang digunakan adalah 4. Sebaiknya setel panjang PIN secara eksplisit untuk memastikan bahwa layanan memvalidasi jumlah digit yang Anda inginkan. Misalnya, jika nilai 4 digunakan tetapi PIN sebenarnya adalah 6 digit, hanya 4 digit paling kanan yang divalidasi dan 2 digit tidak dicentang. Anda dapat melakukan ini dengan sengaja jika PIN pemegang kartu adalah 6 digit tetapi PIN masuk hanya 4 digit, seperti ketika jaringan masuk atau pedagang hanya mendukung PIN 4 digit.

contoh
$ 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 \ --encrypted-pin-block AC17DC148BDA645E \ --pin-data-length 4 \ --verification-attributes Ibm3624PinOffset="{DecimalizationTable=9876543210654321,PinValidationDataPadCharacter=D,PinValidationData=171234567890123,PinOffset=5507}"
{ "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" }