View a markdown version of this page

Validación del KEK - AWS Payment Cryptography

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.

Validación del KEK

Ejemplo de diagrama de red de alto nivel para aplicaciones de PIN que utilizan criptografía AWS de pagos

Cuando su servicio (nodo1) se conecte al nodo2, cada una de las partes se asegurará de utilizar la misma KEK para las operaciones posteriores mediante un proceso denominado validación de KEK.

1. Pasos para validar la primera clave

1.1 Reciba los KRs

Node2 generará un KRs y se lo enviará como parte del proceso de inicio de sesión. Pueden usar la criptografía AWS de pagos para generar este valor u otra solución.

1.2 Generar una respuesta de validación de KEK

Su nodo generará una respuesta de validación de la KEK con entradas como la KEK (r) y los KRs proporcionados en el paso 1.

ejemplo
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 La rentabilidad calculada (kRR)

Devuelve el kRR calculado al nodo2. Ese nodo lo comparará con el valor calculado en el paso 1.

2. Pasos para validar la segunda clave

2.1 Genere los KRr y los KRs

Tu nodo generará un valor aleatorio y una copia invertida (invertida) de este valor mediante AWS criptografía de pagos. El servicio generará ambos valores envueltos en las KEK. Estos se conocen como KR (s) y KR (r).

ejemplo
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 los KRs al nodo2

Envía los KRs al nodo2. Conserve el kRR para su posterior validación.

2.3 El nodo 2 genera la respuesta de validación de la KEK

Node2 usa el KEKr y los KRs, genera el KRr y lo envía de vuelta a su servicio.

2.4 Valida la respuesta

Compare el kRR del paso 1 con el valor devuelto en el paso 3. Si coinciden, continúe.