Validação do KEK - AWS Criptografia de pagamento

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á.

Validação do KEK

Exemplo de diagrama de rede de alto nível para aplicativos de PIN usando criptografia AWS de pagamento

Quando seu serviço (node1) se conecta ao node2, cada lado garantirá que eles estejam usando o mesmo KEK para operações subsequentes usando um processo chamado KEK Validation.

1. Etapas para validar a primeira chave

1.1 Receber KRs

O Node2 gerará um KRs e o enviará para você como parte do processo de login. Eles podem usar criptografia AWS de pagamento para gerar esse valor ou outra solução.

1.2 Gerar resposta de validação KEK

Seu nó gerará uma resposta de validação KEK com entradas como KEK (r) e as KRs fornecidas na etapa 1.

cat >> generate-kek-validation-response.json { "KekValidationType": { "KekValidationResponse": { "RandomKeySend": "9217DC67B8763BABCFDF3DADFCD0F84A" } }, "RandomKeySendVariantMask": "VARIANT_MASK_82", "KeyIdentifier": "arn:aws:payment-cryptography:us-east-2:111122223333:key/ov6icy4ryas4zcza" }
$ aws payment-cryptography-data generate-as2805-kek-validation --cli-input-json file://generate-kek-validation-response.json
{ "KeyArn": "arn:aws:payment-cryptography:us-east-2:111122223333:key/ov6icy4ryas4zcza", "KeyCheckValue": "0A3674", "RandomKeyReceive": "A4B7E249C40C98178C1B856DB7FB76EB", "RandomKeySend": "9217DC67B8763BABCFDF3DADFCD0F84A" }
1.3 Retorno calculado KRr

Retorne o calculado KRr para node2. Esse nó o comparará com o valor calculado da etapa 1.

2. Etapas para validar a segunda chave

2.1 Gerar KRr e KRs

Seu nó gerará um valor aleatório e uma cópia invertida (revertida) desse valor usando criptografia de AWS pagamento. O serviço produzirá esses dois valores agrupados pelo (s) KEK (s). Eles são conhecidos como KR (s) e KR (r).

cat >> generate-kek-validation-request.json { "KekValidationType": { "KekValidationRequest": { "DeriveKeyAlgorithm": "TDES_2KEY" } }, "RandomKeySendVariantMask": "VARIANT_MASK_82", "KeyIdentifier": "arn:aws:payment-cryptography:us-east-2:111122223333:key/rhfm6tenpxapkmrv" }
$ aws payment-cryptography-data generate-as2805-kek-validation --cli-input-json file://generate-kek-validation-request.json
{ "KeyArn": "arn:aws:payment-cryptography:us-east-2:111122223333:key/rhfm6tenpxapkmrv", "KeyCheckValue": "DC1081", "RandomKeyReceive": "A4B7E249C40C98178C1B856DB7FB76EB", "RandomKeySend": "9217DC67B8763BABCFDF3DADFCD0F84A" }
2.2 Enviar KRs para o node2

Envie o KRs para o node2. Guarde o KRr para validação posterior.

2.3 O Node2 gera uma resposta de validação KEK

O Node2 usa o KEKr e KRs, gera o KRr e o envia de volta ao seu serviço.

2.4 Validar a resposta

Compare KRr a etapa 1 com o valor retornado da etapa 3. Se coincidirem, prossiga.