ข้อมูลทั่วไปเกี่ยวกับความโปร่งใสของไบนารีของ Android มีอยู่ในหน้าความโปร่งใสของไบนารีหลัก
หน้านี้มีรายละเอียดเพิ่มเติมเกี่ยวกับรูปแบบของไฟล์ในไดเรกทอรี tile/ ต่างๆ
ไฟล์เหล่านี้ประกอบด้วยแฮชของโหนด Merkle Tree ที่แสดงบันทึกความโปร่งใสแบบไบนารีสำหรับรูปภาพใน Pixel Factory นอกจากนี้ แฮชเหล่านี้ยังได้รับการจัดแพ็กเกจเป็นไทล์ ดูภาพรวมของวิธีแบ่งต้นไม้ออกเป็นส่วนๆ ได้ที่การแบ่งบันทึกเป็นส่วนๆ
ในบันทึกนี้ ระบบจะแฮชโหนดโดยใช้ SHA256 เราใช้ไลบรารี tlog เพื่อเขียนการ์ดที่มีเฉพาะความสูงของการ์ด 1 ซึ่งหมายความว่าแต่ละไทล์จะมีแฮชได้สูงสุด 2^height = 2 รายการ โดยแต่ละรายการมีความยาว 32 ไบต์
ดูรายละเอียดการสร้างเส้นทางไทล์ได้ในเอกสารเกี่ยวกับไทล์ tlog
รูทของการ์ดสําหรับบันทึกแต่ละรายการจะแสดงที่
- บันทึกความโปร่งใสของ Pixel
https://developers.google.com/android/binary_transparency/tile
- บันทึกความโปร่งใสของ APK ของระบบ Google
https://developers.google.com/android/binary_transparency/google1p/tile/
ตัวอย่างการคํานวณด้วยไทล์
มาดูตัวอย่างการใช้บันทึกความโปร่งใสของ Pixel เพื่อให้เข้าใจวิธีการทำงานของการ์ดได้ดียิ่งขึ้น
สมมติว่าต้นไม้มีขนาด 8 หากคุณกําลังดูรายการที่ดัชนี 3 อยู่ รายการดังกล่าวจะเป็นแฮชแรกในไทล์ t(0, 1) เส้นทางสำหรับชิ้นส่วนมีรูปแบบเป็น
tile/H/L/NNN[.p/W] ดังนั้น เส้นทางสำหรับไทล์ t(0, 1) จะเป็น https://developers.google.com/android/binary_transparency/tile/1/0/001
รูทของต้นไม้จะอยู่ในแอตทริบิวต์ t(3, 0)/1 ซึ่งเป็นเส้นทาง https://developers.google.com/android/binary_transparency/tile/1/3/000.p/1