Fungsi spesifik American Express - AWS Kriptografi Pembayaran

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

Fungsi spesifik American Express

CSC1

CSC Versi 1 juga dikenal sebagai Algoritma CSC Klasik. Layanan ini dapat menyediakannya sebagai angka 3,4 atau 5 digit.

Untuk semua parameter yang tersedia, lihat AmexCardSecurityCodeVersion1 di panduan referensi API.

Buat kunci

$ 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":"CSC1"},{"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/esh6hn7pxdtttzgq", "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": "8B5077", "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/esh6hn7pxdtttzgq. Anda membutuhkannya di langkah berikutnya.

Menghasilkan CSC1

$ aws payment-cryptography-data generate-card-validation-data --key-identifier arn:aws:payment-cryptography:us-east-2:111122223333:key/esh6hn7pxdtttzgq --primary-account-number=344131234567848 --generation-attributes AmexCardSecurityCodeVersion1='{CardExpiryDate=1224}' --validation-data-length 4
{ "KeyArn": "arn:aws:payment-cryptography:us-east-2:111122223333:key/esh6hn7pxdtttzgq", "KeyCheckValue": "8B5077", "ValidationData": "3938" }

Validasi CSC1

Dalam contoh ini, kami akan memvalidasi a CSC1.

Jika Kriptografi AWS Pembayaran dapat memvalidasi, http/200 dikembalikan. Jika nilai tidak divalidasi, itu akan mengembalikan respon http/400.

$ aws payment-cryptography-data verify-card-validation-data --key-identifier arn:aws:payment-cryptography:us-east-2:111122223333:key/esh6hn7pxdtttzgq --primary-account-number=344131234567848 --verification-attributes AmexCardSecurityCodeVersion1='{CardExpiryDate=1224}'' --validation-data 3938
{ "KeyArn": "arn:aws:payment-cryptography:us-east-2:111122223333:key/esh6hn7pxdtttzgq", "KeyCheckValue": "8B5077" }

CSC2

CSC Version 2 juga dikenal sebagai Enhanced CSC Algorithm. Layanan ini dapat menyediakannya sebagai angka 3,4 atau 5 digit.

Untuk semua parameter yang tersedia, lihat AmexCardSecurityCodeVersion2 di panduan referensi API.

Buat kunci

$ 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":"CSC1"},{"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/erlm445qvunmvoda", "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": "BF1077", "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 KeyArn yang mewakili kunci, misalnya arn:aws:payment-cryptography:us-east- 2:111122223333:key/erlm445qvunmvoda. Anda membutuhkannya di langkah berikutnya.

Menghasilkan CSC2

Dalam contoh ini, kita akan menghasilkan a CSC2 dengan panjang 4. CSC dapat dihasilkan dengan panjang 3,4 atau 5. Untuk American Express, PANs harus 15 digit dan mulai dengan 34 atau 37.

$ aws payment-cryptography-data generate-card-validation-data --key-identifier arn:aws:payment-cryptography:us-east-2:111122223333:key/erlm445qvunmvoda --primary-account-number=344131234567848 --generation-attributes AmexCardSecurityCodeVersion2='{CardExpiryDate=1224,ServiceCode=999}' --validation-data-length 4
{ "KeyArn": "arn:aws:payment-cryptography:us-east-2:111122223333:key/erlm445qvunmvoda", "KeyCheckValue": "BF1077", "ValidationData": "3982" }

Validasi CSC2

Dalam contoh ini, kami akan memvalidasi a CSC2.

Jika Kriptografi AWS Pembayaran dapat memvalidasi, http/200 dikembalikan. Jika nilai tidak divalidasi, itu akan mengembalikan respon http/400.

$ aws payment-cryptography-data verify-card-validation-data --key-identifier arn:aws:payment-cryptography:us-east-2:111122223333:key/erlm445qvunmvoda --primary-account-number=344131234567848 --verification-attributes AmexCardSecurityCodeVersion2='{CardExpiryDate=1224,ServiceCode=999}' --validation-data 3982
{ "KeyArn": "arn:aws:payment-cryptography:us-east-2:111122223333:key/erlm445qvunmvoda", "KeyCheckValue": "BF1077" }

ICSc

ICSC juga dikenal sebagai Algoritma CSC statis dan dihitung menggunakan CSC Versi 2. Layanan ini dapat menyediakannya sebagai angka 3,4 atau 5 digit.

Gunakan kode layanan 999 untuk menghitung ICSC untuk kartu kontak. Gunakan kode layanan 702 untuk menghitung ICSC untuk kartu nirkontak.

Untuk semua parameter yang tersedia, lihat AmexCardSecurityCodeVersion2 di panduan referensi API.

Buat kunci

$ 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":"CSC1"},{"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-1:111122223333:key/7vrybrbvjcvwtunv", "KeyAttributes": { "KeyUsage": "TR31_C0_CARD_VERIFICATION_KEY" "KeyAlgorithm": "TDES_2KEY", "KeyClass": "SYMMETRIC_KEY", "KeyModesOfUse": { "Decrypt": false, "DeriveKey": false, "Encrypt": false, "Generate": true, "NoRestrictions": false, "Sign": false, "Unwrap": false, "Verify": true, "Wrap": false }, }, "KeyCheckValue": "7121C7", "KeyCheckValueAlgorithm": "ANSI_X9_24", "Enabled": true, "Exportable": true, "KeyOrigin": "AWS_PAYMENT_CRYPTOGRAPHY", "KeyState": "CREATE_COMPLETE", "CreateTimestamp": "2025-01-29T09:19:21.209000-05:00", "UsageStartTimestamp": "2025-01-29T09:19:21.192000-05:00" } }

Perhatikan KeyArn yang mewakili kunci, misalnya arn:aws:payment-cryptography:us-east- 1:111122223333:key/7vrybrbvjcvwtunv. Anda membutuhkannya di langkah berikutnya.

Menghasilkan ICSc

Dalam contoh ini, kami akan menghasilkan ICSC dengan panjang 4, untuk kartu nirkontak menggunakan kode layanan 702. CSC dapat dihasilkan dengan panjang 3,4 atau 5. Untuk American Express, PANs harus 15 digit dan mulai dengan 34 atau 37.

$ aws payment-cryptography-data generate-card-validation-data --key-identifier arn:aws:payment-cryptography:us-east-1:111122223333:key/7vrybrbvjcvwtunv --primary-account-number=344131234567848 --generation-attributes AmexCardSecurityCodeVersion2='{CardExpiryDate=1224,ServiceCode=702}' --validation-data-length 4
{ "KeyArn": arn:aws:payment-cryptography:us-east-1:111122223333:key/7vrybrbvjcvwtunv, "KeyCheckValue": 7121C7, "ValidationData": "2365" }

Validasi ICSC

Dalam contoh ini, kami akan memvalidasi ICSc.

Jika Kriptografi AWS Pembayaran dapat memvalidasi, http/200 dikembalikan. Jika nilai tidak divalidasi, itu akan mengembalikan respon http/400.

$ aws payment-cryptography-data verify-card-validation-data --key-identifier arn:aws:payment-cryptography:us-east-1:111122223333:key/7vrybrbvjcvwtunv --primary-account-number=344131234567848 --verification-attributes AmexCardSecurityCodeVersion2='{CardExpiryDate=1224,ServiceCode=702}' --validation-data 2365
{ "KeyArn": arn:aws:payment-cryptography:us-east-1:111122223333:key/7vrybrbvjcvwtunv, "KeyCheckValue": 7121C7 }