گزارش شفافیت ماژولهای اصلی اندروید از ساختارهای داده قابل تأیید برای اطمینان از یکپارچگی ماژولهای اصلی استفاده میکند.
کاربرد گزارشهای شفافیت توسط پروژههایی مانند Pixel Binary Transparency و Certificate Transparency اثبات شده است.
گزارشهای شفافیت بر اساس درختهای مرکل ساخته میشوند. این صفحه دانش عمومی در مورد درختهای مرکل و شفافیت دودویی را فرض میکند. برای مرور کلی درختهای مرکل به ساختارهای داده قابل تأیید و برای مرور کلی تلاشهای شفافیت دودویی در اندروید به صفحه اصلی مراجعه کنید.
پیادهسازی لاگ
گزارش شفافیت ماژولهای اصلی اندروید (Android Mainline Modules Transparency Log) به صورت یک درخت مرکل مبتنی بر کاشی (tile-based Merkle tree) با ارتفاع ۸ پیادهسازی شده است. ریشه محتوای کاشی در https://gstatic.com/android/binary_transparency/mainline/2026/01/tile/ قرار دارد. توجه داشته باشید که این URL یک صفحه وب استاندارد نیست. در عوض، ورودیهای گزارش در زیرشاخههای آن باید به صورت برنامهنویسی شده و با استفاده از ابزارهایی مانند کتابخانه Golang SumDB Tlog قابل دسترسی باشند.
برای شرح محتویات هر ورودی، به «محتوای گزارش» مراجعه کنید.
هش ریشه درخت مرکل مربوط به گزارش، که در یک نقطه کنترل قرار دارد، در آدرس https://gstatic.com/android/binary_transparency/mainline/2026/01/checkpoint.txt با فرمت نقطه کنترل ارائه میشود. برگهای داده این درخت مرکل به صورت یک فایل واحد در آدرس https://gstatic.com/android/binary_transparency/mainline/2026/01/module_info.txt ارائه میشوند. امضای نقطه کنترل را میتوان با کلید عمومی زیر تأیید کرد:
-----BEGIN PUBLIC KEY-----
MFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEr6nPds8eKCYU42avidXNM1GDCtQ/
66GjGuIpUcZjqQNngwRFVCFZDpWuvDnqXzhJRxqccL9lbeEVVZGpa4x6pg==
-----END PUBLIC KEY-----
از آنجا که ماژولهای Mainline مشابه APKها هستند، روشهای تأیید شرح داده شده در صفحه تأیید APKهای گوگل در اینجا نیز اعمال میشوند. میتوانید از روشهای موجود در آنجا برای تأیید ادعاهای مطرح شده در مدل مدعی استفاده کنید.