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á.
Criar chaves
Você pode criar chaves AWS de criptografia de pagamento usando a operação da CreateKey API. Ao criar uma chave, você especifica atributos como o algoritmo da chave, o uso da chave, as operações permitidas e se ela é exportável. Você não pode alterar essas propriedades depois de criar a chave AWS de criptografia de pagamento.
nota
Se a replicação de chaves multirregionais estiver habilitada para você Conta da AWS e você criar uma chave de criptografia de pagamento, essa chave se tornará automaticamente uma chave de região primária (PRK). O PRK é replicado mesmo se você não especificar o --replication-regions parâmetro no CreateKey comando. Para obter mais informações, consulte Como funciona a replicação de chaves em várias regiões.
Exemplos
Criando uma chave de derivação de base TDES de 3 chaves
exemplo
Esse comando cria uma chave de derivação TDES de 3 chaves que será replicada nas regiões Leste dos EUA (Ohio) e Oeste dos EUA (Oregon). A resposta inclui os parâmetros da solicitação, um Amazon Resource Name (ARN) para chamadas subsequentes e um Key Check Value (KCV).
$aws payment-cryptography create-key --exportable --key-attributes \ "KeyUsage=TR31_B0_BASE_DERIVATION_KEY, \ KeyClass=SYMMETRIC_KEY,KeyAlgorithm=TDES_3KEY, \ KeyModesOfUse={NoRestrictions=true}" \ --replication-regions us-east-2 --region us-west-2
Resultado do exemplo:
{ "Key": { "CreateTimestamp": "2022-10-26T16:04:11.642000-07:00", "Enabled": true, "Exportable": true, "KeyArn": "FE23D3", "KeyAttributes": { "KeyAlgorithm": "TDES_3KEY", "KeyClass": "SYMMETRIC_KEY", "KeyModesOfUse": { "Decrypt": false, "DeriveKey": true, "Encrypt": false, "Generate": false, "NoRestrictions": false, "Sign": false, "Unwrap": false, "Verify": true, "Wrap": false }, "KeyUsage": "TR31_B0_BASE_DERIVATION_KEY" }, "KeyCheckValue": "FE23D3", "KeyCheckValueAlgorithm": "ANSI_X9_24", "KeyOrigin": "AWS_PAYMENT_CRYPTOGRAPHY", "KeyState": "CREATE_COMPLETE", "UsageStartTimestamp": "2022-10-26T16:04:11.559000-07:00" }
Criando uma chave TDES 2KEY para CVV/ CVV2
exemplo
Esse comando cria uma chave TDES 2KEY para gerar e verificar valores CVV/. CVV2 A resposta inclui os parâmetros da solicitação, um Amazon Resource Name (ARN) para chamadas subsequentes e um Key Check Value (KCV).
$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}'
Resultado do exemplo:
{ "Key": { "CreateTimestamp": "2022-10-26T16:04:11.642000-07:00", "Enabled": true, "Exportable": true, "KeyArn": "arn:aws:payment-cryptography:us-east-2:111122223333:key/7f7g4spf3xcklhzu", "KeyAttributes": { "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 }, "KeyUsage": "TR31_C0_CARD_VERIFICATION_KEY" }, "KeyCheckValue": "AEA5CD", "KeyCheckValueAlgorithm": "ANSI_X9_24", "KeyOrigin": "AWS_PAYMENT_CRYPTOGRAPHY", "KeyState": "CREATE_COMPLETE", "UsageStartTimestamp": "2022-10-26T16:04:11.559000-07:00" } }
Criando uma chave HMAC
exemplo
As chaves HMAC são usadas para gerar ou verificar códigos de autenticação de mensagens hash (HMAC). Com as chaves HMAC, o tipo de hash é atribuído no momento da criação da chave (como HMAC_ SHA224 e HMAC_SHA512) e não pode ser modificado.
$aws payment-cryptography create-key --exportable --key-attributes KeyAlgorithm=HMAC_SHA512,KeyUsage=TR31_M7_HMAC_KEY,KeyClass=SYMMETRIC_KEY,KeyModesOfUse='{Generate = true,Verify = true}'
Resultado do exemplo:
{ "Key": { "KeyArn": "arn:aws:payment-cryptography:us-east-2:111122223333:key/qnobl5lghrzunce6", "KeyAttributes": { "KeyUsage": "TR31_M7_HMAC_KEY", "KeyClass": "SYMMETRIC_KEY", "KeyAlgorithm": "HMAC_SHA512", "KeyModesOfUse": { "Encrypt": false, "Decrypt": false, "Wrap": false, "Unwrap": false, "Generate": true, "Sign": false, "Verify": true, "DeriveKey": false, "NoRestrictions": false } }, "KeyCheckValue": "2976E7", "KeyCheckValueAlgorithm": "HMAC", "Enabled": true, "Exportable": true, "KeyState": "CREATE_COMPLETE", "KeyOrigin": "AWS_PAYMENT_CRYPTOGRAPHY", "CreateTimestamp": "2025-07-30T10:06:12.142000-07:00", "UsageStartTimestamp": "2025-07-30T10:06:12.128000-07:00" } }
Criando uma chave AES-256
exemplo
Esse comando cria uma chave simétrica AES-256 para criptografia e decodificação de dados. As chaves AES fornecem criptografia forte para dados confidenciais e são comumente usadas no processamento de pagamentos para criptografar dados do titular do cartão e outras informações confidenciais. No entanto, o TDES é mais comumente usado em casos de uso de emissores, como EMV.
$aws payment-cryptography create-key --exportable --key-attributes KeyAlgorithm=AES_256,KeyUsage=TR31_D0_SYMMETRIC_DATA_ENCRYPTION_KEY,KeyClass=SYMMETRIC_KEY,KeyModesOfUse='{Encrypt=true,Decrypt=true,Wrap=true,Unwrap=true}'
Resultado do exemplo:
{ "Key": { "CreateTimestamp": "2025-02-02T10:15:30.142000-08:00", "Enabled": true, "Exportable": true, "KeyArn": "arn:aws:payment-cryptography:us-east-1:111122223333:key/kwapwa6qaifllw2h", "KeyAttributes": { "KeyAlgorithm": "AES_256", "KeyClass": "SYMMETRIC_KEY", "KeyModesOfUse": { "Decrypt": true, "DeriveKey": false, "Encrypt": true, "Generate": false, "NoRestrictions": false, "Sign": false, "Unwrap": true, "Verify": false, "Wrap": true }, "KeyUsage": "TR31_D0_SYMMETRIC_DATA_ENCRYPTION_KEY" }, "KeyCheckValue": "2976F5", "KeyCheckValueAlgorithm": "CMAC", "KeyOrigin": "AWS_PAYMENT_CRYPTOGRAPHY", "KeyState": "CREATE_COMPLETE", "UsageStartTimestamp": "2025-02-02T10:15:30.128000-08:00" } }
Criando uma chave de criptografia PIN (PEK)
exemplo
Esse comando cria uma chave TDES de 3 teclas para criptografar valores de PIN, embora as chaves de PIN também possam ser AES, dependendo da sua necessidade de interoperabilidade. Você pode usar essa chave para armazenar PINs ou descriptografar com segurança PINs durante a verificação, como em uma transação. A resposta inclui os parâmetros da solicitação, um ARN para chamadas subsequentes e um KCV.
$aws payment-cryptography create-key --exportable --key-attributes \ KeyAlgorithm=TDES_3KEY,KeyUsage=TR31_P0_PIN_ENCRYPTION_KEY, \ KeyClass=SYMMETRIC_KEY,KeyModesOfUse='{Encrypt=true,Decrypt=true,Wrap=true,Unwrap=true}'
Resultado do exemplo:
{ "Key": { "CreateTimestamp": "2022-10-27T08:27:51.795000-07:00", "Enabled": true, "Exportable": true, "KeyArn": "arn:aws:payment-cryptography:us-east-2:111122223333:key/ivi5ksfsuplneuyt", "KeyAttributes": { "KeyAlgorithm": "TDES_3KEY", "KeyClass": "SYMMETRIC_KEY", "KeyModesOfUse": { "Decrypt": true, "DeriveKey": false, "Encrypt": true, "Generate": false, "NoRestrictions": false, "Sign": false, "Unwrap": true, "Verify": false, "Wrap": true }, "KeyUsage": "TR31_P0_PIN_ENCRYPTION_KEY" }, "KeyCheckValue": "7CC9E2", "KeyCheckValueAlgorithm": "ANSI_X9_24", "KeyOrigin": "AWS_PAYMENT_CRYPTOGRAPHY", "KeyState": "CREATE_COMPLETE", "UsageStartTimestamp": "2022-10-27T08:27:51.753000-07:00" } }
Criação de uma chave assimétrica (RSA)
exemplo
Esse comando gera um novo par de chaves RSA assimétrico de 2048 bits. Ele cria uma nova chave privada e sua chave pública correspondente. Você pode recuperar a chave pública usando a getPublicCertificateAPI.
$aws payment-cryptography create-key --exportable \ --key-attributes KeyAlgorithm=RSA_2048,KeyUsage=TR31_D1_ASYMMETRIC_KEY_FOR_DATA_ENCRYPTION, \ KeyClass=ASYMMETRIC_KEY_PAIR,KeyModesOfUse='{Encrypt=true, Decrypt=True,Wrap=True,Unwrap=True}'
Resultado do exemplo:
{ "Key": { "CreateTimestamp": "2022-11-15T11:15:42.358000-08:00", "Enabled": true, "Exportable": true, "KeyArn": "arn:aws:payment-cryptography:us-east-2:111122223333:key/nsq2i3mbg6sn775f", "KeyAttributes": { "KeyAlgorithm": "RSA_2048", "KeyClass": "ASYMMETRIC_KEY_PAIR", "KeyModesOfUse": { "Decrypt": true, "DeriveKey": false, "Encrypt": true, "Generate": false, "NoRestrictions": false, "Sign": false, "Unwrap": true, "Verify": false, "Wrap": true }, "KeyUsage": "TR31_D1_ASYMMETRIC_KEY_FOR_DATA_ENCRYPTION" }, "KeyCheckValue": "40AD487F", "KeyCheckValueAlgorithm": "SHA-1", "KeyOrigin": "AWS_PAYMENT_CRYPTOGRAPHY", "KeyState": "CREATE_COMPLETE", "UsageStartTimestamp": "2022-11-15T11:15:42.182000-08:00" } }
Criando uma chave de valor de verificação de PIN (PVV)
exemplo
Esse comando cria uma chave TDES de 3 teclas para gerar valores de PVV. Você pode usar essa chave para gerar um PVV que pode ser comparado com um PVV calculado posteriormente. A resposta inclui os parâmetros da solicitação, um ARN para chamadas subsequentes e um KCV.
$aws payment-cryptography create-key --exportable \ --key-attributes KeyAlgorithm=TDES_3KEY,KeyUsage=TR31_V2_VISA_PIN_VERIFICATION_KEY, \ KeyClass=SYMMETRIC_KEY,KeyModesOfUse='{Generate=true,Verify=true}'
Resultado do exemplo:
{ "Key": { "CreateTimestamp": "2022-10-27T10:22:59.668000-07:00", "Enabled": true, "Exportable": true, "KeyArn": "arn:aws:payment-cryptography:us-east-2:111122223333:key/37y2tsl45p5zjbh2", "KeyAttributes": { "KeyAlgorithm": "TDES_3KEY", "KeyClass": "SYMMETRIC_KEY", "KeyModesOfUse": { "Decrypt": false, "DeriveKey": false, "Encrypt": false, "Generate": true, "NoRestrictions": false, "Sign": false, "Unwrap": false, "Verify": true, "Wrap": false }, "KeyUsage": "TR31_V2_VISA_PIN_VERIFICATION_KEY" }, "KeyCheckValue": "7F2363", "KeyCheckValueAlgorithm": "ANSI_X9_24", "KeyOrigin": "AWS_PAYMENT_CRYPTOGRAPHY", "KeyState": "CREATE_COMPLETE", "UsageStartTimestamp": "2022-10-27T10:22:59.614000-07:00" } }
Criando uma chave ECC assimétrica
exemplo
Esse comando gera um par de chaves ECC para estabelecer um acordo de chaves ECDH (Elliptic Curve Diffie-Hellman) entre duas partes. Com o ECDH, cada parte gera seu próprio par de chaves ECC com a finalidade da chave K3 e o modo de uso X, e elas trocam chaves públicas. Ambas as partes então usam sua chave privada e a chave pública recebida para estabelecer uma chave derivada compartilhada.
Para manter o princípio de uso único de chaves criptográficas em pagamentos, recomendamos não reutilizar pares de chaves ECC para várias finalidades, como derivação e assinatura de chaves ECDH.
$aws payment-cryptography create-key --exportable \ --key-attributes KeyAlgorithm=ECC_NIST_P256,KeyUsage=TR31_K3_ASYMMETRIC_KEY_FOR_KEY_AGREEMENT, \ KeyClass=ASYMMETRIC_KEY_PAIR,KeyModesOfUse='{DeriveKey=true}'
Resultado do exemplo:
{ "Key": { "CreateTimestamp": "2024-10-17T01:31:55.908000+00:00", "Enabled": true, "Exportable": true, "KeyArn": "arn:aws:payment-cryptography:us-east-2:111122223333:key/wc3rjsssguhxtilv", "KeyAttributes": { "KeyAlgorithm": "ECC_NIST_P256", "KeyClass": "ASYMMETRIC_KEY_PAIR", "KeyModesOfUse": { "Decrypt": false, "DeriveKey": true, "Encrypt": false, "Generate": false, "NoRestrictions": false, "Sign": false, "Unwrap": false, "Verify": false, "Wrap": false }, "KeyUsage": "TR31_K3_ASYMMETRIC_KEY_FOR_KEY_AGREEMENT" }, "KeyCheckValue": "7E34F19F", "KeyCheckValueAlgorithm": "SHA-1", "KeyOrigin": "AWS_PAYMENT_CRYPTOGRAPHY", "KeyState": "CREATE_COMPLETE", "UsageStartTimestamp": "2024-10-17T01:31:55.866000+00:00" } }