Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.
Genera o verifica un CVV per una determinata carta
CVV o CVV1 è un valore tradizionalmente incorporato nella banda magnetica di una scheda. Non è lo stesso di CVV2 (visibile al titolare della carta e utilizzabile per gli acquisti online).
Il primo passo è creare una chiave. Per questo tutorial, crei una chiave CVK 3DES (2KEY TDES) a doppia lunghezza.
Nota
CVV CVV2 e iCVV utilizzano tutti algoritmi simili se non identici, ma variano i dati di input. Tutti utilizzano lo stesso tipo di chiave TR31 _C0_CARD_VERIFICATION_KEY, ma si consiglia di utilizzare chiavi separate per ogni scopo. Questi possono essere distinti utilizzando tag alias come nell'esempio seguente. and/or
Crea la chiave
$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"}]'
La risposta richiama i parametri della richiesta, tra cui un ARN per le chiamate successive e un Key Check Value (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" } }
Prendi nota di KeyArn ciò che rappresenta la chiave, ad esempio arn:aws:payment-cryptography:us-east- 2:111122223333:key/r52o3wbqxyf6qlqr. Ne hai bisogno nel passaggio successivo.
Genera un CVV
Esempio
In questo esempio, genereremo un CVV per un determinato PAN con gli input diPAN, un codice di servizio (come definito da ISO/IEC 7813) di 121 e la data di scadenza della carta.
Per tutti i parametri disponibili, vedi CardVerificationValue1 nella guida di riferimento dell'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" }
Convalida CVV
Esempio
In questo esempio, verificheremo un CVV per un determinato PAN inserendo un CVK, un codice di servizio 121PAN, la data di scadenza della carta e il CVV fornito durante la transazione per la convalida.
Nota
CVV non è un valore inserito dall'utente (come CVV2), ma in genere è incorporato in una banda magnetica. Si dovrebbe valutare se debba sempre essere convalidato quando fornito.
$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" }