Der Ressourcenschlüssel-Hash ist ein Mechanismus, mit dem Google die Integrität der verpackten Verschlüsselungsschlüssel prüfen kann, ohne auf die Schlüssel zugreifen zu müssen.
Zum Generieren des Ressourcenschlüssel-Hash ist Zugriff auf den entpackten Schlüssel erforderlich, einschließlich des DEK, resource_name
und perimeter_id
, die während der Schlüsselverpackung angegeben wurden.
Wir verwenden die kryptografische Funktion HMAC-SHA256 mit unwrapped_dek
als Schlüssel und der Verkettung von Metadaten als Daten ("ResourceKeyDigest:", resource_name, ":", perimeter_id)
.
resource_name
und perimeter_id
sollten UTF-8-codierte Strings sein.
Bei resource_name = "my_resource"
, perimeter_id = "my_perimeter"
und unwrapped_dek = 0xf00d
lautet der Hash des Ressourcenschlüssels beispielsweise:
echo -n "ResourceKeyDigest:my_resource:my_perimeter" | openssl sha256 -mac HMAC -macopt hexkey:f00d -binary