Hasz klucza zasobu
Hasz klucza zasobu to mechanizm umożliwiający Google weryfikację integralności
opakowane klucze szyfrowania bez dostępu do nich.
Generowanie hasza klucza zasobu wymaga dostępu do rozpakowanego klucza z
DEK, resource_name
i perimeter_id
określone w kluczu
zawijania tekstu.
Używamy funkcji kryptograficznej HMAC-SHA256 z kluczem unwrapped_dek
i
łączenie metadanych jako danych
("ResourceKeyDigest:", resource_name, ":", perimeter_id)
Elementy resource_name
i perimeter_id
powinny być ciągami zakodowanymi w formacie UTF-8.
Jeśli na przykład resource_name = "my_resource"
,
perimeter_id = "my_perimeter"
i unwrapped_dek = 0xf00d
, klucz zasobu
hasz to:
echo -n "ResourceKeyDigest:my_resource:my_perimeter" | openssl sha256 -mac HMAC -macopt hexkey:f00d -binary
O ile nie stwierdzono inaczej, treść tej strony jest objęta licencją Creative Commons – uznanie autorstwa 4.0, a fragmenty kodu są dostępne na licencji Apache 2.0. Szczegółowe informacje na ten temat zawierają zasady dotyczące witryny Google Developers. Java jest zastrzeżonym znakiem towarowym firmy Oracle i jej podmiotów stowarzyszonych.
Ostatnia aktualizacja: 2024-08-22 UTC.
[null,null,["Ostatnia aktualizacja: 2024-08-22 UTC."],[[["The resource key hash ensures Google can verify the integrity of wrapped encryption keys without needing access to the actual keys."],["Generating the hash requires the unwrapped key, resource name, and perimeter ID used during key wrapping."],["It utilizes HMAC-SHA256, using the unwrapped key as the key and a concatenation of resource details as data for the hash calculation."],["The resource name and perimeter ID need to be UTF-8 encoded strings for the hash generation."]]],[]]