درباره کاشی

اطلاعات کلی درباره شفافیت باینری اندروید در صفحه اصلی شفافیت باینری موجود است.

این صفحه حاوی جزئیات بیشتری در مورد فرمت فایل های زیر tile/ دایرکتوری های مختلف است.

این فایل‌ها حاوی هش‌های گره‌های Merkle Tree هستند که گزارش شفافیت باینری را برای تصاویر کارخانه پیکسل نشان می‌دهند. علاوه بر این، این هش ها در کاشی ها بسته بندی می شوند. برای یک نمای کلی از نحوه تقسیم درخت به کاشی به کاشی کاری سیاهه مراجعه کنید.

در این لاگ، گره ها با استفاده از SHA256 هش می شوند. ما از کتابخانه tlog برای نوشتن کاشی ها به طور خاص با ارتفاع کاشی 1 استفاده می کنیم. این بدان معناست که هر کاشی حداکثر دارای 2^height = 2 هش است که هر کدام 32 بایت است.

جزئیات ساخت و سازهای مسیر کاشی را می توان در tlog Tile docs یافت.

ریشه کاشی برای هر سیاهه مربوط به زیر ارائه می شود:

  • گزارش شفافیت پیکسل
    • https://developers.google.com/android/binary_transparency/tile
  • گزارش شفافیت APK سیستم Google
    • https://developers.google.com/android/binary_transparency/google1p/tile/

مثالی از محاسبات با کاشی

برای درک بهتر نحوه کار کاشی‌ها، نمونه‌ای را با استفاده از Pixel Transparency Log مرور می‌کنیم. بیایید درختی به اندازه 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 است.