View a markdown version of this page

Valider un code PIN par rapport au décalage de broche IBM3624 enregistré précédemment - AWS Cryptographie des paiements

Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.

Valider un code PIN par rapport au décalage de broche IBM3624 enregistré précédemment

Dans cet exemple, vous validez un code PIN fourni par le titulaire de la carte par rapport au décalage du code PIN enregistré auprès de l'émetteur ou du processeur de la carte. Les entrées comprennent la clé de vérification (PVK), la clé de cryptage (PEK), le numéro de compte principal, le code PIN chiffré provenant du terminal de paiement (ou d'un autre fournisseur en amont tel qu'un réseau de cartes) et le décalage de code PIN précédemment enregistré. Si le code PIN correspond, l'API renvoie une HTTP/200 réponse.

Cette commande nécessite que la clé de vérification du code PIN soit de type TR31_V1_IBM3624_PIN_VERIFICATION_KEY et que la clé de chiffrement soit de typeTR31_P0_PIN_ENCRYPTION_KEY.

validation de la longueur du code PIN

Le --pin-data-length paramètre facultatif spécifie la longueur du code PIN à vérifier (4 à 12 chiffres). Si vous ne spécifiez pas ce paramètre, le service valide la longueur totale du code PIN protégée par la valeur de décalage. Si vous ne souhaitez valider qu'une partie du code PIN, utilisez le --pin-data-length paramètre. Par exemple, s'il --pin-data-length est réglé sur 4 mais que le code PIN réel est composé de 6 chiffres, le service valide uniquement les 4 chiffres les plus à droite. Les 2 chiffres restants ne sont pas cochés. Vous pouvez le faire intentionnellement si le code PIN du titulaire de la carte est composé de 6 chiffres mais que le code PIN entrant ne comporte que 4 chiffres, par exemple lorsque le réseau entrant ou le commerçant n'accepte qu'un code PIN à 4 chiffres.

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