เกี่ยวกับการ์ด

ข้อมูลทั่วไปเกี่ยวกับความโปร่งใสของไบนารีของ 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