Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.
Buat atau verifikasi CVV untuk kartu tertentu
CVV atau CVV1 merupakan nilai yang secara tradisional tertanam dalam strip magnetik kartu. Ini tidak sama dengan CVV2 (terlihat oleh pemegang kartu dan untuk digunakan untuk pembelian online).
Langkah pertama adalah membuat kunci. Untuk tutorial ini, Anda membuat kunci 3DES (2KEY TDES) panjang ganda CVK.
catatan
CVV, CVV2 dan iCVV semuanya menggunakan algoritma yang serupa jika tidak identik tetapi memvariasikan data input. Semua menggunakan jenis kunci yang sama TR31 _C0_CARD_VERIFICATION_KEY tetapi disarankan untuk menggunakan kunci terpisah untuk setiap tujuan. Ini dapat dibedakan menggunakan alias dan/atau tag seperti pada contoh di bawah ini.
Buat kuncinya
$
aws payment-cryptography create-key --exportable --key-attributes KeyAlgorithm=TDES_2KEY,KeyUsage=TR31_C0_CARD_VERIFICATION_KEY,KeyClass=SYMMETRIC_KEY,KeyModesOfUse='{Generate=true,Verify=true}' --tags='[{"Key":"KEY_PURPOSE","Value":"CVV"},{"Key":"CARD_BIN","Value":"12345678"}]'
Respons menggemakan kembali parameter permintaan, termasuk ARN untuk panggilan berikutnya serta Nilai Pemeriksaan Kunci (KCV).
{ "Key": { "KeyArn": "arn:aws:payment-cryptography:us-east-2:111122223333:key/r52o3wbqxyf6qlqr", "KeyAttributes": { "KeyUsage": "TR31_C0_CARD_VERIFICATION_KEY", "KeyClass": "SYMMETRIC_KEY", "KeyAlgorithm": "TDES_2KEY", "KeyModesOfUse": { "Encrypt": false, "Decrypt": false, "Wrap": false, "Unwrap": false, "Generate": true, "Sign": false, "Verify": true, "DeriveKey": false, "NoRestrictions": false } }, "KeyCheckValue": "DE89F9", "KeyCheckValueAlgorithm": "ANSI_X9_24", "Enabled": true, "Exportable": true, "KeyState": "CREATE_COMPLETE", "KeyOrigin": "AWS_PAYMENT_CRYPTOGRAPHY", "CreateTimestamp": "2023-06-05T06:41:46.648000-07:00", "UsageStartTimestamp": "2023-06-05T06:41:46.626000-07:00" } }
Perhatikan yang mewakili kunci, misalnya KeyArn
arn:aws:payment-cryptography:us-east - 2:111122223333:key/r52o3wbqxyf6qlqr. Anda membutuhkannya di langkah berikutnya.
Menghasilkan CVV
Dalam contoh ini, kami akan menghasilkan CVV untuk PAN tertentu dengan inputPAN
, kode layanan (seperti yang didefinisikan oleh ISO/IEC 7813) dari 121 dan tanggal kedaluwarsa kartu.
Untuk semua parameter yang tersedia, lihat CardVerificationValue1 di panduan referensi API.
$
aws payment-cryptography-data generate-card-validation-data --key-identifier arn:aws:payment-cryptography:us-east-2:111122223333:key/r52o3wbqxyf6qlqr --primary-account-number=171234567890123 --generation-attributes CardVerificationValue1='{CardExpiryDate=1127,ServiceCode=121}'
{ "KeyArn": "arn:aws:payment-cryptography:us-east-2:111122223333:key/r52o3wbqxyf6qlqr", "KeyCheckValue": "DE89F9", "ValidationData": "801" }
Validasi CVV
Dalam contoh ini, kami akan memverifikasi CVV untuk PAN tertentu dengan input CVK,, kode layanan 121PAN
, tanggal kedaluwarsa kartu dan CVV yang disediakan selama transaksi untuk divalidasi.
Untuk semua parameter yang tersedia, lihat, CardVerificationValue1 di panduan referensi API.
catatan
CVV bukan nilai yang dimasukkan pengguna (seperti CVV2) tetapi biasanya disematkan pada magstripe. Pertimbangan harus diberikan apakah harus selalu memvalidasi saat disediakan.
$
aws payment-cryptography-data verify-card-validation-data --key-identifier arn:aws:payment-cryptography:us-east-2:111122223333:key/r52o3wbqxyf6qlqr --primary-account-number=171234567890123 --verification-attributes CardVerificationValue1='{CardExpiryDate=1127,ServiceCode=121} --validation-data 801
{ "KeyArn": "arn:aws:payment-cryptography:us-east-2:111122223333:key/r52o3wbqxyf6qlqr", "KeyCheckValue": "DE89F9", "ValidationData": "801" }