Hay más AWS SDK ejemplos disponibles en el GitHub repositorio de AWS Doc SDK Examples
Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.
AWS Payment Cryptography Ejemplos de planos de datos que utilizan AWS CLI
Los siguientes ejemplos de código muestran cómo realizar acciones e implementar escenarios comunes mediante el AWS Command Line Interface uso de AWS Payment Cryptography Data Plane.
Las acciones son extractos de código de programas más grandes y deben ejecutarse en contexto. Mientras las acciones muestran cómo llamar a las funciones de servicio individuales, es posible ver las acciones en contexto en los escenarios relacionados.
Cada ejemplo incluye un enlace al código fuente completo, donde puede encontrar instrucciones sobre cómo configurar y ejecutar el código en su contexto.
Temas
Acciones
En el siguiente ejemplo de código se muestra cómo usar decrypt-data
.
- AWS CLI
-
Para descifrar el texto cifrado
En el siguiente
decrypt-data
ejemplo, se descifran los datos de texto cifrado mediante una clave simétrica. Para esta operación, la clave debe estar establecida en yKeyModesOfUse
establecida en.Decrypt
KeyUsage
TR31_D0_SYMMETRIC_DATA_ENCRYPTION_KEY
aws payment-cryptography-data decrypt-data \ --key-identifier
arn:aws:payment-cryptography:us-east-2:123456789012:key/kwapwa6qaifllw2h
\ --cipher-text33612AB9D6929C3A828EB6030082B2BD
\ --decryption-attributes 'Symmetric={Mode=CBC}
'Salida:
{ "KeyArn": "arn:aws:payment-cryptography:us-east-2:123456789012:key/kwapwa6qaifllw2h", "KeyCheckValue": "71D7AE", "PlainText": "31323334313233343132333431323334" }
Para obtener más información, consulte Descifrar datos en la Guía del usuario AWS de criptografía de pagos.
-
Para API obtener más información, consulte la Referencia DecryptData
de AWS CLI comandos.
-
En el siguiente ejemplo de código se muestra cómo usar encrypt-data
.
- AWS CLI
-
Para cifrar datos
En el siguiente
encrypt-data
ejemplo, se cifran los datos de texto sin formato mediante una clave simétrica. Para esta operación, la clave debe estar establecida enEncrypt
yKeyModesOfUse
KeyUsage
establecida en.TR31_D0_SYMMETRIC_DATA_ENCRYPTION_KEY
aws payment-cryptography-data encrypt-data \ --key-identifier
arn:aws:payment-cryptography:us-east-2:123456789012:key/kwapwa6qaifllw2h
\ --plain-text31323334313233343132333431323334
\ --encryption-attributes 'Symmetric={Mode=CBC}
'Salida:
{ "KeyArn": "arn:aws:payment-cryptography:us-east-2:123456789012:key/kwapwa6qaifllw2h", "KeyCheckValue": "71D7AE", "CipherText": "33612AB9D6929C3A828EB6030082B2BD" }
Para obtener más información, consulte Cifrar datos en la Guía del usuario AWS de criptografía de pagos.
-
Para API obtener más información, consulte la Referencia EncryptData
de AWS CLI comandos.
-
En el siguiente ejemplo de código se muestra cómo usar generate-card-validation-data
.
- AWS CLI
-
Para generar un CVV
El siguiente
generate-card-validation-data
ejemplo genera unCVV/CVV2.aws payment-cryptography-data generate-card-validation-data \ --key-identifier
arn:aws:payment-cryptography:us-east-2:123456789012:key/kwapwa6qaifllw2h
\ --primary-account-number=171234567890123 \ --generation-attributesCardVerificationValue2={CardExpiryDate=0123}
Salida:
{ "KeyArn": "arn:aws:payment-cryptography:us-east-2:123456789012:key/kwapwa6qaifllw2h", "KeyCheckValue": "CADDA1", "ValidationData": "801" }
Para obtener más información, consulte Generar datos de tarjetas en la Guía del usuario AWS de criptografía de pagos.
-
Para API obtener más información, consulte GenerateCardValidationData
la Referencia de AWS CLI comandos.
-
En el siguiente ejemplo de código se muestra cómo usar generate-mac
.
- AWS CLI
-
Para generar un MAC
El siguiente
generate-card-validation-data
ejemplo genera un código de autenticación de mensajes basado en hash (HMAC) para la autenticación de los datos de la tarjeta mediante el algoritmo HMAC _ SHA256 y una clave de HMAC cifrado. La clave debe estarKeyUsage
configurada enTR31_M7_HMAC_KEY
yKeyModesOfUse
en.Generate
aws payment-cryptography-data generate-mac \ --key-identifier
arn:aws:payment-cryptography:us-east-2:123456789012:key/kwapwa6qaifllw2h
\ --message-data"3b313038383439303031303733393431353d32343038323236303030373030303f33"
\ --generation-attributesAlgorithm=HMAC_SHA256
Salida:
{ "KeyArn": "arn:aws:payment-cryptography:us-east-2:123456789012:key/kwapwa6qaifllw2h, "KeyCheckValue": "2976E7", "Mac": "ED87F26E961C6D0DDB78DA5038AA2BDDEA0DCE03E5B5E96BDDD494F4A7AA470C" }
Para obtener más información, consulte Generar MAC en la Guía del usuario AWS de criptografía de pagos.
-
Para API obtener más información, consulte GenerateMac
la Referencia de AWS CLI comandos.
-
En el siguiente ejemplo de código se muestra cómo usar generate-pin-data
.
- AWS CLI
-
Para generar un PIN
En el siguiente
generate-card-validation-data
ejemplo, se genera un nuevo aleatorio PIN mediante el PIN esquema Visa.aws payment-cryptography-data generate-pin-data \ --generation-key-identifier
arn: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}
Salida:
{ "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" } }
Para obtener más información, consulte Generar PIN datos en la Guía del usuario AWS de criptografía de pagos.
-
Para API obtener más información, consulte GeneratePinData
la Referencia de AWS CLI comandos.
-
En el siguiente ejemplo de código se muestra cómo usar re-encrypt-data
.
- AWS CLI
-
Para volver a cifrar los datos con una clave diferente
En el siguiente
re-encrypt-data
ejemplo, se descifra el texto cifrado con una clave AES simétrica y se vuelve a cifrar con una clave única derivada por transacción (). DUKPTaws payment-cryptography-data re-encrypt-data \ --incoming-key-identifier
arn: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"}}
'Salida:
{ "CipherText": "F94959DA30EEFF0C035483C6067667CF6796E3C1AD28C2B61F9CFEB772A8DD41C0D6822931E0D3B1", "KeyArn": "arn:aws:payment-cryptography:us-west-2:111122223333:key/jl6ythkcvzesbxen", "KeyCheckValue": "2E8CD9" }
Para obtener más información, consulte Cifrar y descifrar datos en la Guía del usuario de criptografía de pagos.AWS
-
Para API obtener más información, consulte la Referencia de ReEncryptData
comandos AWS CLI .
-
En el siguiente ejemplo de código se muestra cómo usar translate-pin-data
.
- AWS CLI
-
Para traducir PIN datos
El siguiente
translate-pin-data
ejemplo traduce un PEK TDES cifrado PIN del PIN bloque ISO 0 al PIN bloque AES ISO 4 mediante el DUKPT algoritmo.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"Salida:
{ "PinBlock": "1F4209C670E49F83E75CC72E81B787D9", "KeyArn": "arn:aws:payment-cryptography:us-east-2:111122223333:key/ivi5ksfsuplneuyt "KeyCheckValue": "7CC9E2" }
Para obtener más información, consulte Traducir PIN datos en la Guía del usuario AWS de criptografía de pagos.
-
Para API obtener más información, consulte TranslatePinData
la Referencia de AWS CLI comandos.
-
En el siguiente ejemplo de código se muestra cómo usar verify-auth-request-cryptogram
.
- AWS CLI
-
Para verificar una solicitud de autenticación
El siguiente
verify-auth-request-cryptogram
ejemplo verifica un criptograma de solicitud de autorización (). ARQCaws payment-cryptography-data verify-auth-request-cryptogram \ --auth-request-cryptogram
F6E1BD1E6037FB3E
\ --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"
Salida:
{ "AuthResponseValue": "D899B8C6FBF971AA", "KeyArn": "arn:aws:payment-cryptography:us-west-2:111122223333:key/pboipdfzd4mdklya", "KeyCheckValue": "985792" }
Para obtener más información, consulte Verificar el criptograma de la solicitud de autenticación (ARQC) en la Guía del usuario de criptografía de AWS pagos.
-
Para API obtener más información, consulte la Referencia de VerifyAuthRequestCryptogram
comandos AWS CLI .
-
En el siguiente ejemplo de código se muestra cómo usar verify-card-validation-data
.
- AWS CLI
-
Para validar un CVV
El siguiente
verify-card-validation-data
ejemplo valida unCVV/CVV2para aPAN.aws payment-cryptography-data verify-card-validation-data \ --key-identifier
arn:aws:payment-cryptography:us-east-2:111122223333:key/tqv5yij6wtxx64pi
\ --primary-account-number=171234567890123 \ --verification-attributesCardVerificationValue2={CardExpiryDate=0123}
\ --validation-data801
Salida:
{ "KeyArn": "arn:aws:payment-cryptography:us-east-2:111122223333:key/tqv5yij6wtxx64pi", "KeyCheckValue": "CADDA1" }
Para obtener más información, consulte Verificar los datos de la tarjeta en la Guía del usuario AWS de criptografía de pagos.
-
Para API obtener más información, consulte VerifyCardValidationData
la Referencia de AWS CLI comandos.
-
En el siguiente ejemplo de código se muestra cómo usar verify-mac
.
- AWS CLI
-
Para verificar un MAC
El siguiente
verify-mac
ejemplo verifica un código de autenticación de mensajes basado en hash (HMAC) para la autenticación de los datos de la tarjeta mediante el algoritmo HMAC _ SHA256 y una clave de HMAC cifrado.aws payment-cryptography-data verify-mac \ --key-identifier
arn:aws:payment-cryptography:us-east-2:111122223333:key/qnobl5lghrzunce6
\ --message-data"3b343038383439303031303733393431353d32343038323236303030373030303f33"
\ --verification-attributes='Algorithm=HMAC_SHA256' \ --macED87F26E961C6D0DDB78DA5038AA2BDDEA0DCE03E5B5E96BDDD494F4A7AA470C
Salida:
{ "KeyArn": "arn:aws:payment-cryptography:us-east-2:111122223333:key/qnobl5lghrzunce6, "KeyCheckValue": "2976E7", }
Para obtener más información, consulte Verificar MAC en la Guía del usuario de criptografía AWS de pagos.
-
Para API obtener más información, consulte VerifyMac
la Referencia de AWS CLI comandos.
-
En el siguiente ejemplo de código se muestra cómo usar verify-pin-data
.
- AWS CLI
-
Para verificar un PIN
El siguiente
verify-pin-data
ejemplo valida a PIN para aPAN.aws payment-cryptography-data verify-pin-data \ --verification-key-identifier
arn: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-blockAC17DC148BDA645E
Salida:
{ "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", }
Para obtener más información, consulte Verificar PIN datos en la Guía del usuario AWS de criptografía de pagos.
-
Para API obtener más información, consulte VerifyPinData
la Referencia de AWS CLI comandos.
-