Exemples d’utilisation de l’AWS CLI avec le plan de données AWS Payment Cryptography
Les exemples de code suivants montrent comment réaliser des actions et mettre en œuvre des scénarios courants en utilisant l’AWS Command Line Interface avec le plan de données AWS Payment Cryptography.
Les actions sont des extraits de code de programmes plus larges et doivent être exécutées dans leur contexte. Alors que les actions vous indiquent comment appeler des fonctions de service individuelles, vous pouvez les voir en contexte dans leurs scénarios associés.
Chaque exemple inclut un lien vers le code source complet, où vous trouverez des instructions sur la configuration et l’exécution du code en contexte.
Rubriques
Actions
L’exemple de code suivant montre comment utiliser decrypt-data.
- AWS CLI
-
Pour déchiffrer le texte chiffré
L’exemple
decrypt-datasuivant déchiffre des données de texte chiffré à l’aide d’une clé symétrique. Pour cette opération,KeyModesOfUsedoit être réglé surDecryptetKeyUsagesurTR31_D0_SYMMETRIC_DATA_ENCRYPTION_KEY.aws payment-cryptography-data decrypt-data \ --key-identifierarn:aws:payment-cryptography:us-east-2:123456789012:key/kwapwa6qaifllw2h\ --cipher-text33612AB9D6929C3A828EB6030082B2BD\ --decryption-attributes 'Symmetric={Mode=CBC}'Sortie :
{ "KeyArn": "arn:aws:payment-cryptography:us-east-2:123456789012:key/kwapwa6qaifllw2h", "KeyCheckValue": "71D7AE", "PlainText": "31323334313233343132333431323334" }Pour plus d’informations, consultez Déchiffrement des données dans le Guide de l’utilisateur AWS Payment Cryptography.
-
Pour plus de détails sur l’API, consultez DecryptData
dans la Référence des commandes de l’AWS CLI.
-
L’exemple de code suivant montre comment utiliser encrypt-data.
- AWS CLI
-
Pour chiffrer des données
L’exemple
encrypt-datasuivant chiffre des données en texte brut à l’aide d’une clé symétrique. Pour cette opération,KeyModesOfUsedoit être réglé surEncryptetKeyUsagesurTR31_D0_SYMMETRIC_DATA_ENCRYPTION_KEY.aws payment-cryptography-data encrypt-data \ --key-identifierarn:aws:payment-cryptography:us-east-2:123456789012:key/kwapwa6qaifllw2h\ --plain-text31323334313233343132333431323334\ --encryption-attributes 'Symmetric={Mode=CBC}'Sortie :
{ "KeyArn": "arn:aws:payment-cryptography:us-east-2:123456789012:key/kwapwa6qaifllw2h", "KeyCheckValue": "71D7AE", "CipherText": "33612AB9D6929C3A828EB6030082B2BD" }Pour plus d’informations, consultez Chiffrement des données dans le Guide de l’utilisateur AWS Payment Cryptography.
-
Pour plus de détails sur l’API, consultez EncryptData
dans la Référence des commandes de l’AWS CLI.
-
L’exemple de code suivant montre comment utiliser generate-card-validation-data.
- AWS CLI
-
Pour générer un CVV
L’exemple
generate-card-validation-datasuivant génère un CVV/CVV2.aws payment-cryptography-data generate-card-validation-data \ --key-identifierarn:aws:payment-cryptography:us-east-2:123456789012:key/kwapwa6qaifllw2h\ --primary-account-number=171234567890123 \ --generation-attributesCardVerificationValue2={CardExpiryDate=0123}Sortie :
{ "KeyArn": "arn:aws:payment-cryptography:us-east-2:123456789012:key/kwapwa6qaifllw2h", "KeyCheckValue": "CADDA1", "ValidationData": "801" }Pour plus d’informations, consultez Génération de données de carte dans le Guide de l’utilisateur AWS Payment Cryptography.
-
Pour plus de détails sur l’API, consultez GenerateCardValidationData
dans la Référence des commandes de l’AWS CLI.
-
L’exemple de code suivant montre comment utiliser generate-mac.
- AWS CLI
-
Pour générer un MAC
L’exemple
generate-card-validation-datasuivant génère un code d’authentification de message utilisant hash (HMAC) pour l’authentification des données de carte à l’aide de l’algorithme HMAC_SHA256 et d’une clé de chiffrement HMAC. La clé doit avoirKeyUsagedéfini surTR31_M7_HMAC_KEYetKeyModesOfUsesurGenerate.aws payment-cryptography-data generate-mac \ --key-identifierarn:aws:payment-cryptography:us-east-2:123456789012:key/kwapwa6qaifllw2h\ --message-data"3b313038383439303031303733393431353d32343038323236303030373030303f33"\ --generation-attributesAlgorithm=HMAC_SHA256Sortie :
{ "KeyArn": "arn:aws:payment-cryptography:us-east-2:123456789012:key/kwapwa6qaifllw2h, "KeyCheckValue": "2976E7", "Mac": "ED87F26E961C6D0DDB78DA5038AA2BDDEA0DCE03E5B5E96BDDD494F4A7AA470C" }Pour plus d’informations, consultez Génération d’une adresse MAC dans le Guide de l’utilisateur AWS Payment Cryptography.
-
Pour plus de détails sur l’API, consultez GenerateMac
dans la Référence des commandes de l’AWS CLI.
-
L’exemple de code suivant montre comment utiliser generate-pin-data.
- AWS CLI
-
Pour générer un PIN
L’exemple
generate-card-validation-datasuivant génère un nouveau PIN aléatoire à l’aide du schéma PIN Visa.aws payment-cryptography-data generate-pin-data \ --generation-key-identifierarn:aws:payment-cryptography:us-east-2:111122223333:key/37y2tsl45p5zjbh2\ --encryption-key-identifierarn:aws:payment-cryptography:us-east-2:111122223333:key/ivi5ksfsuplneuyt\ --primary-account-number171234567890123\ --pin-block-formatISO_FORMAT_0\ --generation-attributesVisaPin={PinVerificationKeyIndex=1}Sortie :
{ "GenerationKeyArn": "arn:aws:payment-cryptography:us-east-2:111122223333:key/37y2tsl45p5zjbh2", "GenerationKeyCheckValue": "7F2363", "EncryptionKeyArn": "arn:aws:payment-cryptography:us-east-2:111122223333:key/ivi5ksfsuplneuyt", "EncryptionKeyCheckValue": "7CC9E2", "EncryptedPinBlock": "AC17DC148BDA645E", "PinData": { "VerificationValue": "5507" } }Pour plus d’informations, consultez Génération de données PIN dans le Guide de l’utilisateur AWS Payment Cryptography.
-
Pour plus de détails sur l’API, consultez GeneratePinData
dans la Référence des commandes de l’AWS CLI.
-
L’exemple de code suivant montre comment utiliser re-encrypt-data.
- AWS CLI
-
Pour rechiffrer les données avec une autre clé
L’exemple
re-encrypt-datasuivant déchiffre le texte chiffré à l’aide d’une clé symétrique AES et le chiffre à nouveau à l’aide de Derived Unique Key Per Transaction (DUKPT).aws payment-cryptography-data re-encrypt-data \ --incoming-key-identifierarn:aws:payment-cryptography:us-west-2:111122223333:key/hyvv7ymboitd4vfy\ --outgoing-key-identifierarn:aws:payment-cryptography:us-west-2:111122223333:key/jl6ythkcvzesbxen\ --cipher-text4D2B0BDBA192D5AEFEAA5B3EC28E4A65383C313FFA25140101560F75FE1B99F27192A90980AB9334\ --incoming-encryption-attributes"Dukpt={Mode=ECB,KeySerialNumber=0123456789111111}"\ --outgoing-encryption-attributes '{"Symmetric": {"Mode": "ECB"}}'Sortie :
{ "CipherText": "F94959DA30EEFF0C035483C6067667CF6796E3C1AD28C2B61F9CFEB772A8DD41C0D6822931E0D3B1", "KeyArn": "arn:aws:payment-cryptography:us-west-2:111122223333:key/jl6ythkcvzesbxen", "KeyCheckValue": "2E8CD9" }Pour plus d’informations, consultez Chiffrement et déchiffrement des données dans le Guide de l’utilisateur AWS Payment Cryptography.
-
Pour plus de détails sur l’API, consultez ReEncryptData
dans la Référence des commandes de l’AWS CLI.
-
L’exemple de code suivant montre comment utiliser translate-pin-data.
- AWS CLI
-
Pour traduire les données PIN
L’exemple
translate-pin-datasuivant traduit un PIN issu du chiffrement PEK TDES utilisant un bloc PIN ISO 0 en un bloc PIN AES ISO 4 à l’aide de l’algorithme DUKPT.aws payment-cryptography-data translate-pin-data \ --encrypted-pin-block"AC17DC148BDA645E"\ --incoming-translation-attributes=IsoFormat0='{PrimaryAccountNumber=171234567890123}' \ --incoming-key-identifierarn:aws:payment-cryptography:us-east-2:111122223333:key/ivi5ksfsuplneuyt\ --outgoing-key-identifierarn:aws:payment-cryptography:us-east-2:111122223333:key/4pmyquwjs3yj4vwe\ --outgoing-translation-attributes IsoFormat4="{PrimaryAccountNumber=171234567890123}" \ --outgoing-dukpt-attributes KeySerialNumber="FFFF9876543210E00008"Sortie :
{ "PinBlock": "1F4209C670E49F83E75CC72E81B787D9", "KeyArn": "arn:aws:payment-cryptography:us-east-2:111122223333:key/ivi5ksfsuplneuyt "KeyCheckValue": "7CC9E2" }Pour plus d’informations, consultez Traduction des données PIN dans le Guide de l’utilisateur AWS Payment Cryptography.
-
Pour plus de détails sur l’API, consultez TranslatePinData
dans la Référence des commandes de l’AWS CLI.
-
L’exemple de code suivant montre comment utiliser verify-auth-request-cryptogram.
- AWS CLI
-
Pour vérifier une demande d’authentification
L’exemple
verify-auth-request-cryptogramsuivant vérifie un cryptogramme de demande d’autorisation (ARQC).aws payment-cryptography-data verify-auth-request-cryptogram \ --auth-request-cryptogramF6E1BD1E6037FB3E\ --auth-response-attributes '{"ArpcMethod1": {"AuthResponseCode": "1111"}}' \ --key-identifierarn:aws:payment-cryptography:us-west-2:111122223333:key/pboipdfzd4mdklya\ --major-key-derivation-mode"EMV_OPTION_A"\ --session-key-derivation-attributes '{"EmvCommon": {"ApplicationTransactionCounter": "1234","PanSequenceNumber": "01","PrimaryAccountNumber": "471234567890123"}}' \ --transaction-data"123456789ABCDEF"Sortie :
{ "AuthResponseValue": "D899B8C6FBF971AA", "KeyArn": "arn:aws:payment-cryptography:us-west-2:111122223333:key/pboipdfzd4mdklya", "KeyCheckValue": "985792" }Pour plus d’informations, consultez Vérification du cryptogramme de demande d’autorisation (ARQC) dans le Guide de l’utilisateur AWS Payment Cryptography.
-
Pour plus de détails sur l’API, consultez VerifyAuthRequestCryptogram
dans la Référence des commandes de l’AWS CLI.
-
L’exemple de code suivant montre comment utiliser verify-card-validation-data.
- AWS CLI
-
Pour valider un CVV
L’exemple
verify-card-validation-datasuivant valide un CVV/CVV2 pour un PAN.aws payment-cryptography-data verify-card-validation-data \ --key-identifierarn:aws:payment-cryptography:us-east-2:111122223333:key/tqv5yij6wtxx64pi\ --primary-account-number=171234567890123 \ --verification-attributesCardVerificationValue2={CardExpiryDate=0123}\ --validation-data801Sortie :
{ "KeyArn": "arn:aws:payment-cryptography:us-east-2:111122223333:key/tqv5yij6wtxx64pi", "KeyCheckValue": "CADDA1" }Pour plus d’informations, consultez Vérification des données de carte dans le Guide de l’utilisateur AWS Payment Cryptography.
-
Pour plus de détails sur l’API, consultez VerifyCardValidationData
dans la Référence des commandes de l’AWS CLI.
-
L’exemple de code suivant montre comment utiliser verify-mac.
- AWS CLI
-
Pour vérifier un MAC
L’exemple
verify-macsuivant vérifie un code d’authentification de message utilisant hash (HMAC) pour l’authentification des données de carte à l’aide de l’algorithme HMAC_SHA256 et d’une clé de chiffrement HMAC.aws payment-cryptography-data verify-mac \ --key-identifierarn:aws:payment-cryptography:us-east-2:111122223333:key/qnobl5lghrzunce6\ --message-data"3b343038383439303031303733393431353d32343038323236303030373030303f33"\ --verification-attributes='Algorithm=HMAC_SHA256' \ --macED87F26E961C6D0DDB78DA5038AA2BDDEA0DCE03E5B5E96BDDD494F4A7AA470CSortie :
{ "KeyArn": "arn:aws:payment-cryptography:us-east-2:111122223333:key/qnobl5lghrzunce6, "KeyCheckValue": "2976E7", }Pour plus d’informations, consultez Vérification de l’adresse MAC dans le Guide de l’utilisateur AWS Payment Cryptography.
-
Pour plus de détails sur l’API, consultez VerifyMac
dans la Référence des commandes de l’AWS CLI.
-
L’exemple de code suivant montre comment utiliser verify-pin-data.
- AWS CLI
-
Pour vérifier un PIN
L’exemple
verify-pin-datasuivant valide un PIN pour un PAN.aws payment-cryptography-data verify-pin-data \ --verification-key-identifierarn:aws:payment-cryptography:us-east-2:111122223333:key/37y2tsl45p5zjbh2\ --encryption-key-identifierarn:aws:payment-cryptography:us-east-2:111122223333:key/ivi5ksfsuplneuyt\ --primary-account-number171234567890123\ --pin-block-formatISO_FORMAT_0\ --verification-attributes VisaPin="{PinVerificationKeyIndex=1,VerificationValue=5507}" \ --encrypted-pin-blockAC17DC148BDA645ESortie :
{ "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", }Pour plus d’informations, consultez Vérification des données PIN dans le Guide de l’utilisateur AWS Payment Cryptography.
-
Pour plus de détails sur l’API, consultez VerifyPinData
dans la Référence des commandes de l’AWS CLI.
-