本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
KEK 驗證
當您的服務 (node1) 連線到 node2 時,每一端都會確保使用相同的 KEK 進行後續操作,並使用稱為 KEK 驗證的程序。
1。驗證第一個金鑰的步驟
- 1.1 接收 KRs
-
Node2 KRs,並將其作為登入程序的一部分傳送給您。他們可以使用 AWS 付款密碼編譯來產生此值或其他解決方案。
- 1.2 產生 KEK 驗證回應
-
您的節點將產生 KEK 驗證回應,並將輸入做為步驟 1 中提供的 KEK(r) 和 KRs。
範例
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 傳回計算的 KRr
-
將計算的 KRr 傳回至 node2。該節點會將其與步驟 1 的計算值進行比較。
2.驗證第二個金鑰的步驟
- 2.1 產生 KRr KRs
-
您的節點將使用 AWS 付款密碼編譯產生隨機值和此值的反轉 (反轉) 副本。服務會輸出這兩個由 KEK 包裝的值 (KEK)。這些稱為 KR(s) 和 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 將 KRs傳送至 node2
-
將 KRs傳送至 node2。保留 KRr 以供稍後驗證。
- 2.3 Node2 產生 KEK 驗證回應
-
Node2 使用 KEKr KRs、產生 KRr 並將其傳回給您的服務。
- 2.4 驗證回應
-
比較步驟 1 的 KRr 和步驟 3 傳回的值。如果相符,請繼續。