גיבוב (hash) של מפתח משאב
הגיבוב של מפתח המשאב הוא מנגנון שמאפשר ל-Google לאמת את התקינות של
את מפתחות ההצפנה העטופים בלי לקבל גישה למפתחות.
כדי ליצור גיבוב של מפתח המשאב, נדרשת גישה למפתח שלא ארוז, כולל
ה-DEK, resource_name
וה-perimeter_id
שצוינו במהלך המפתח
פעולת אריזה.
אנחנו משתמשים בפונקציה הקריפטוגרפית HMAC-SHA256 עם unwrapped_dek
בתור מפתח
שרשור מטא-נתונים כנתונים
("ResourceKeyDigest:", resource_name, ":", perimeter_id)
.
המחרוזת resource_name
ו-perimeter_id
צריכות להיות בקידוד UTF-8.
לדוגמה, כאשר resource_name = "my_resource"
,
perimeter_id = "my_perimeter"
ו-unwrapped_dek = 0xf00d
, מפתח המשאב
הגיבוב הוא:
echo -n "ResourceKeyDigest:my_resource:my_perimeter" | openssl sha256 -mac HMAC -macopt hexkey:f00d -binary
אלא אם צוין אחרת, התוכן של דף זה הוא ברישיון Creative Commons Attribution 4.0 ודוגמאות הקוד הן ברישיון Apache 2.0. לפרטים, ניתן לעיין במדיניות האתר Google Developers. Java הוא סימן מסחרי רשום של חברת Oracle ו/או של השותפים העצמאיים שלה.
עדכון אחרון: 2024-08-22 (שעון UTC).
[null,null,["עדכון אחרון: 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."]]],["The core mechanism is generating a resource key hash to verify wrapped encryption key integrity. This involves using HMAC-SHA256 with the unwrapped DEK as the key and a specific concatenation of metadata as data. The metadata consists of \"ResourceKeyDigest:\", the UTF-8 encoded `resource_name`, \":\", and the UTF-8 encoded `perimeter_id`. An example shows generating the hash using `openssl` with a sample `resource_name`, `perimeter_id`, and `unwrapped_dek`.\n"]]