View a markdown version of this page

Fonctions spécifiques à American Express - 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.

Fonctions spécifiques à American Express

CSC1

La version 1 du CSC est également connue sous le nom d'algorithme CSC classique. Le service peut le fournir sous forme de numéro à 3,4 ou 5 chiffres.

Pour tous les paramètres disponibles, voir AmexCardSecurityCodeVersion1 dans le guide de référence de l'API.

Créer une clé

$ 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"}]'

La réponse renvoie les paramètres de la demande, y compris un ARN pour les appels suivants ainsi qu'une valeur de contrôle clé (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" } }

Prenez note de KeyArn ce qui représente la clé, par exemple arn:aws:payment-cryptography:us-east - 2:111122223333:key/esh6hn7pxdtttzgq. Vous en aurez besoin à l'étape suivante.

Générez un CSC1

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

Validez le CSC1

Exemple

Dans cet exemple, nous allons valider un CSC1.

Si AWS Payment Cryptography est en mesure de valider, un http/200 est renvoyé. Si la valeur n'est pas validée, elle renverra une réponse 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

La version 2 du CSC est également connue sous le nom d'algorithme CSC amélioré. Le service peut le fournir sous forme de numéro à 3,4 ou 5 chiffres. Le code de service pour CSC2 est généralement 000.

Pour tous les paramètres disponibles, reportez-vous à la section AmexCardSecurityCodeVersion2 du guide de référence de l'API.

Créer une clé

$ 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":"CSC2"},{"Key":"CARD_BIN","Value":"12345678"}]'

La réponse renvoie les paramètres de la demande, y compris un ARN pour les appels suivants ainsi qu'une valeur de contrôle clé (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" } }

Prenez note de KeyArn ce qui représente la clé, par exemple arn:aws:payment-cryptography:us-east - 2:111122223333:key/erlm445qvunmvoda. Vous en aurez besoin à l'étape suivante.

Générez un CSC2

Dans cet exemple, nous allons générer un CSC2 avec une longueur de 4. Le CSC peut être généré avec une longueur de 3,4 ou 5. Pour American Express, PANs il doit comporter 15 chiffres et commencer par 34 ou 37. La date d'expiration est généralement au format YYMM. Le code de service peut varier. Consultez votre manuel, mais les valeurs typiques sont 000, 201 ou 702

Exemple
$ 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=2412,ServiceCode=000}' --validation-data-length 4
{ "KeyArn": "arn:aws:payment-cryptography:us-east-2:111122223333:key/erlm445qvunmvoda", "KeyCheckValue": "BF1077", "ValidationData": "3982" }

Validez le CSC2

Exemple

Dans cet exemple, nous allons valider un CSC2.

Si AWS Payment Cryptography est en mesure de valider, un http/200 est renvoyé. Si la valeur n'est pas validée, elle renverra une réponse 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=2412,ServiceCode=000}' --validation-data 3982
{ "KeyArn": "arn:aws:payment-cryptography:us-east-2:111122223333:key/erlm445qvunmvoda", "KeyCheckValue": "BF1077" }

iCSC

L'iCSC est également connu sous le nom d'algorithme CSC statique et est calculé à l'aide de CSC version 2. Le service peut le fournir sous forme de numéro à 3,4 ou 5 chiffres.

Utilisez le code de service 999 pour calculer l'iCSC pour une carte de visite. Utilisez le code de service 702 pour calculer l'iCSC pour une carte sans contact.

Pour tous les paramètres disponibles, reportez-vous à la section AmexCardSecurityCodeVersion2 du guide de référence de l'API.

Créer une clé

$ 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"}]'

La réponse renvoie les paramètres de la demande, y compris un ARN pour les appels suivants ainsi qu'une valeur de contrôle clé (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" } }

Prenez note de KeyArn ce qui représente la clé, par exemple arn:aws:payment-cryptography:us-east- 1:111122223333:key/7vrybrbvjcvwtunv. Vous en aurez besoin à l'étape suivante.

Générer un iCSC

Dans cet exemple, nous allons générer un iCSC d'une longueur de 4, pour une carte sans contact utilisant le code de service 702. Le CSC peut être généré avec une longueur de 3,4 ou 5. Pour American Express, PANs il doit comporter 15 chiffres et commencer par 34 ou 37.

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

Valider l'iCSC

Exemple

Dans cet exemple, nous allons valider un iCSC.

Si AWS Payment Cryptography est en mesure de valider, un http/200 est renvoyé. Si la valeur n'est pas validée, elle renverra une réponse 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 }

3DS AEVV

3DS AEVV (3-D Secure Account Verification Value) est utilisé pour l'authentification 3-D Secure d'American Express. Il utilise le même algorithme, CSC2 mais avec des paramètres d'entrée différents. Le champ de date d'expiration doit être rempli avec un nombre imprévisible (aléatoire), et le code de service se compose du code des résultats de l'authentification AEVV (1 chiffre) et du code d'authentification à deuxième facteur (2 chiffres). La longueur de sortie doit être de 3 chiffres.

Pour tous les paramètres disponibles, reportez-vous à la section AmexCardSecurityCodeVersion2 du guide de référence de l'API.

Créer une clé

$ 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":"3DS_AEVV"},{"Key":"CARD_BIN","Value":"12345678"}]'

La réponse renvoie les paramètres de la demande, y compris un ARN pour les appels suivants ainsi qu'une valeur de contrôle clé (KCV).

{ "Key": { "KeyArn": "arn:aws:payment-cryptography:us-east-2:111122223333:key/kw8djn5qxvfh3ztm", "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": "8F3A21", "KeyCheckValueAlgorithm": "ANSI_X9_24", "Enabled": true, "Exportable": true, "KeyOrigin": "AWS_PAYMENT_CRYPTOGRAPHY", "KeyState": "CREATE_COMPLETE", "CreateTimestamp": "2025-02-02T10:30:15.209000-05:00", "UsageStartTimestamp": "2025-02-02T10:30:15.192000-05:00" } }

Prenez note de KeyArn ce qui représente la clé, par exemple arn:aws:payment-cryptography:us-east - 2:111122223333:key/kw8djn5qxvfh3ztm. Vous en aurez besoin à l'étape suivante.

Générer un 3DS AEVV

Dans cet exemple, nous allons générer un 3DS AEVV d'une longueur de 3. Le champ de date d'expiration contient un nombre imprévisible (aléatoire) (par exemple, 1234), et le code de service se compose du code de résultats d'authentification AEVV (1 chiffre) et du code d'authentification à deuxième facteur (2 chiffres), par exemple 543 où 5 est le code des résultats d'authentification et 43 est le code d'authentification à deuxième facteur. Pour American Express, PANs il doit comporter 15 chiffres et commencer par 34 ou 37.

Exemple
$ aws payment-cryptography-data generate-card-validation-data --key-identifier arn:aws:payment-cryptography:us-east-2:111122223333:key/kw8djn5qxvfh3ztm --primary-account-number=344131234567848 --generation-attributes AmexCardSecurityCodeVersion2='{CardExpiryDate=1234,ServiceCode=543}' --validation-data-length 3
{ "KeyArn": arn:aws:payment-cryptography:us-east-2:111122223333:key/kw8djn5qxvfh3ztm, "KeyCheckValue": 8F3A21, "ValidationData": "921" }

Validez le 3DS AEVV

Exemple

Dans cet exemple, nous allons valider un 3DS AEVV.

Si AWS Payment Cryptography est en mesure de valider, un http/200 est renvoyé. Si la valeur n'est pas validée, elle renverra une réponse http/400.

$ aws payment-cryptography-data verify-card-validation-data --key-identifier arn:aws:payment-cryptography:us-east-2:111122223333:key/kw8djn5qxvfh3ztm --primary-account-number=344131234567848 --verification-attributes AmexCardSecurityCodeVersion2='{CardExpiryDate=1234,ServiceCode=543}' --validation-data 921
{ "KeyArn": arn:aws:payment-cryptography:us-east-2:111122223333:key/kw8djn5qxvfh3ztm, "KeyCheckValue": 8F3A21 }