AWS Payment Cryptography Exemplos de planos de dados usando AWS CLI - AWS Command Line Interface

As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.

AWS Payment Cryptography Exemplos de planos de dados usando AWS CLI

Os exemplos de código a seguir mostram como realizar ações e implementar cenários comuns usando o AWS Command Line Interface com AWS Payment Cryptography Data Plane.

Ações são trechos de código de programas maiores e devem ser executadas em contexto. Embora as ações mostrem como chamar funções de serviço individuais, você pode ver as ações no contexto em seus cenários relacionados.

Cada exemplo inclui um link para o código-fonte completo, onde você pode encontrar instruções sobre como configurar e executar o código no contexto.

Tópicos

Ações

O código de exemplo a seguir mostra como usar decrypt-data.

AWS CLI

Para decifrar texto cifrado

O decrypt-data exemplo a seguir decodifica dados de texto cifrado usando uma chave simétrica. Para essa operação, a chave deve ter sido KeyModesOfUse definida como Decrypt e KeyUsage definida comoTR31_D0_SYMMETRIC_DATA_ENCRYPTION_KEY.

aws payment-cryptography-data decrypt-data \ --key-identifier arn:aws:payment-cryptography:us-east-2:123456789012:key/kwapwa6qaifllw2h \ --cipher-text 33612AB9D6929C3A828EB6030082B2BD \ --decryption-attributes 'Symmetric={Mode=CBC}'

Saída:

{ "KeyArn": "arn:aws:payment-cryptography:us-east-2:123456789012:key/kwapwa6qaifllw2h", "KeyCheckValue": "71D7AE", "PlainText": "31323334313233343132333431323334" }

Para obter mais informações, consulte Descriptografar dados no Guia do usuário de criptografia AWS de pagamento.

  • Para API obter detalhes, consulte DecryptDatana Referência de AWS CLI Comandos.

O código de exemplo a seguir mostra como usar encrypt-data.

AWS CLI

Para criptografar dados

O encrypt-data exemplo a seguir criptografa dados em texto simples usando uma chave simétrica. Para essa operação, a chave deve ter sido KeyModesOfUse definida como Encrypt e KeyUsage definida comoTR31_D0_SYMMETRIC_DATA_ENCRYPTION_KEY.

aws payment-cryptography-data encrypt-data \ --key-identifier arn:aws:payment-cryptography:us-east-2:123456789012:key/kwapwa6qaifllw2h \ --plain-text 31323334313233343132333431323334 \ --encryption-attributes 'Symmetric={Mode=CBC}'

Saída:

{ "KeyArn": "arn:aws:payment-cryptography:us-east-2:123456789012:key/kwapwa6qaifllw2h", "KeyCheckValue": "71D7AE", "CipherText": "33612AB9D6929C3A828EB6030082B2BD" }

Para obter mais informações, consulte Criptografar dados no Guia do usuário AWS de criptografia de pagamento.

  • Para API obter detalhes, consulte EncryptDatana Referência de AWS CLI Comandos.

O código de exemplo a seguir mostra como usar generate-card-validation-data.

AWS CLI

Para gerar um CVV

O generate-card-validation-data exemplo a seguir gera umCVV/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-attributes CardVerificationValue2={CardExpiryDate=0123}

Saída:

{ "KeyArn": "arn:aws:payment-cryptography:us-east-2:123456789012:key/kwapwa6qaifllw2h", "KeyCheckValue": "CADDA1", "ValidationData": "801" }

Para obter mais informações, consulte Gerar dados do cartão no Guia do usuário da criptografia de AWS pagamento.

O código de exemplo a seguir mostra como usar generate-mac.

AWS CLI

Para gerar um MAC

O generate-card-validation-data exemplo a seguir gera um Código de Autenticação de Mensagem Baseado em Hash (HMAC) para autenticação de dados do cartão usando o algoritmo HMAC _ SHA256 e uma chave de HMAC criptografia. A chave deve estar KeyUsage configurada como TR31_M7_HMAC_KEY e KeyModesOfUse paraGenerate.

aws payment-cryptography-data generate-mac \ --key-identifier arn:aws:payment-cryptography:us-east-2:123456789012:key/kwapwa6qaifllw2h \ --message-data "3b313038383439303031303733393431353d32343038323236303030373030303f33" \ --generation-attributes Algorithm=HMAC_SHA256

Saída:

{ "KeyArn": "arn:aws:payment-cryptography:us-east-2:123456789012:key/kwapwa6qaifllw2h, "KeyCheckValue": "2976E7", "Mac": "ED87F26E961C6D0DDB78DA5038AA2BDDEA0DCE03E5B5E96BDDD494F4A7AA470C" }

Para obter mais informações, consulte Generate MAC no Guia do usuário da criptografia de AWS pagamento.

  • Para API obter detalhes, consulte GenerateMacna Referência de AWS CLI Comandos.

O código de exemplo a seguir mostra como usar generate-pin-data.

AWS CLI

Para gerar um PIN

O generate-card-validation-data exemplo a seguir gera um novo aleatório PIN usando o 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-identifier arn:aws:payment-cryptography:us-east-2:111122223333:key/ivi5ksfsuplneuyt \ --primary-account-number 171234567890123 \ --pin-block-format ISO_FORMAT_0 \ --generation-attributes VisaPin={PinVerificationKeyIndex=1}

Saída:

{ "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 obter mais informações, consulte Gerar PIN dados no Guia do usuário da criptografia de AWS pagamento.

  • Para API obter detalhes, consulte GeneratePinDatana Referência de AWS CLI Comandos.

O código de exemplo a seguir mostra como usar re-encrypt-data.

AWS CLI

Para criptografar novamente os dados com uma chave diferente

O re-encrypt-data exemplo a seguir descriptografa o texto cifrado que foi criptografado usando uma chave AES simétrica e o recriptografa usando uma chave chave exclusiva derivada por transação (). DUKPT

aws payment-cryptography-data re-encrypt-data \ --incoming-key-identifier arn:aws:payment-cryptography:us-west-2:111122223333:key/hyvv7ymboitd4vfy \ --outgoing-key-identifier arn:aws:payment-cryptography:us-west-2:111122223333:key/jl6ythkcvzesbxen \ --cipher-text 4D2B0BDBA192D5AEFEAA5B3EC28E4A65383C313FFA25140101560F75FE1B99F27192A90980AB9334 \ --incoming-encryption-attributes "Dukpt={Mode=ECB,KeySerialNumber=0123456789111111}" \ --outgoing-encryption-attributes '{"Symmetric": {"Mode": "ECB"}}'

Saída:

{ "CipherText": "F94959DA30EEFF0C035483C6067667CF6796E3C1AD28C2B61F9CFEB772A8DD41C0D6822931E0D3B1", "KeyArn": "arn:aws:payment-cryptography:us-west-2:111122223333:key/jl6ythkcvzesbxen", "KeyCheckValue": "2E8CD9" }

Para obter mais informações, consulte Criptografar e descriptografar dados no Guia do usuário de criptografia de AWS pagamento.

  • Para API obter detalhes, consulte ReEncryptDatana Referência de AWS CLI Comandos.

O código de exemplo a seguir mostra como usar translate-pin-data.

AWS CLI

Para traduzir PIN dados

O translate-pin-data exemplo a seguir traduz a PEK TDES criptografia PIN de um usando o PIN bloco ISO 0 para um PIN bloco AES ISO 4 usando o DUKPT algoritmo.

aws payment-cryptography-data translate-pin-data \ --encrypted-pin-block "AC17DC148BDA645E" \ --incoming-translation-attributes=IsoFormat0='{PrimaryAccountNumber=171234567890123}' \ --incoming-key-identifier arn:aws:payment-cryptography:us-east-2:111122223333:key/ivi5ksfsuplneuyt \ --outgoing-key-identifier arn:aws:payment-cryptography:us-east-2:111122223333:key/4pmyquwjs3yj4vwe \ --outgoing-translation-attributes IsoFormat4="{PrimaryAccountNumber=171234567890123}" \ --outgoing-dukpt-attributes KeySerialNumber="FFFF9876543210E00008"

Saída:

{ "PinBlock": "1F4209C670E49F83E75CC72E81B787D9", "KeyArn": "arn:aws:payment-cryptography:us-east-2:111122223333:key/ivi5ksfsuplneuyt "KeyCheckValue": "7CC9E2" }

Para obter mais informações, consulte Translate PIN data no Guia do usuário da criptografia de AWS pagamento.

  • Para API obter detalhes, consulte TranslatePinDatana Referência de AWS CLI Comandos.

O código de exemplo a seguir mostra como usar verify-auth-request-cryptogram.

AWS CLI

Para verificar uma solicitação de autenticação

O verify-auth-request-cryptogram exemplo a seguir verifica um criptograma de solicitação de autorização ()ARQC.

aws payment-cryptography-data verify-auth-request-cryptogram \ --auth-request-cryptogram F6E1BD1E6037FB3E \ --auth-response-attributes '{"ArpcMethod1": {"AuthResponseCode": "1111"}}' \ --key-identifier arn: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"

Saída:

{ "AuthResponseValue": "D899B8C6FBF971AA", "KeyArn": "arn:aws:payment-cryptography:us-west-2:111122223333:key/pboipdfzd4mdklya", "KeyCheckValue": "985792" }

Para obter mais informações, consulte Verify auth request (ARQC) criptograma no Guia do usuário AWS de criptografia de pagamento.

O código de exemplo a seguir mostra como usar verify-card-validation-data.

AWS CLI

Para validar um CVV

O verify-card-validation-data exemplo a seguir valida umCVV/CVV2para a. PAN

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-attributes CardVerificationValue2={CardExpiryDate=0123} \ --validation-data 801

Saída:

{ "KeyArn": "arn:aws:payment-cryptography:us-east-2:111122223333:key/tqv5yij6wtxx64pi", "KeyCheckValue": "CADDA1" }

Para obter mais informações, consulte Verificar dados do cartão no Guia do usuário da criptografia de AWS pagamento.

O código de exemplo a seguir mostra como usar verify-mac.

AWS CLI

Para verificar um MAC

O verify-mac exemplo a seguir verifica um Código de Autenticação de Mensagem Baseado em Hash (HMAC) para autenticação de dados do cartão usando o algoritmo HMAC _ SHA256 e uma chave de HMAC criptografia.

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' \ --mac ED87F26E961C6D0DDB78DA5038AA2BDDEA0DCE03E5B5E96BDDD494F4A7AA470C

Saída:

{ "KeyArn": "arn:aws:payment-cryptography:us-east-2:111122223333:key/qnobl5lghrzunce6, "KeyCheckValue": "2976E7", }

Para obter mais informações, consulte Verificar MAC no Guia do usuário da criptografia de AWS pagamento.

  • Para API obter detalhes, consulte VerifyMacna Referência de AWS CLI Comandos.

O código de exemplo a seguir mostra como usar verify-pin-data.

AWS CLI

Para verificar um PIN

O verify-pin-data exemplo a seguir valida a PIN para a. PAN

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 \ --verification-attributes VisaPin="{PinVerificationKeyIndex=1,VerificationValue=5507}" \ --encrypted-pin-block AC17DC148BDA645E

Saída:

{ "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 obter mais informações, consulte Verificar PIN dados no Guia do usuário da criptografia de AWS pagamento.

  • Para API obter detalhes, consulte VerifyPinDatana Referência de AWS CLI Comandos.