แฮชคีย์แหล่งข้อมูลเป็นกลไกที่ทำให้ 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