سجلّ شفافية وحدات Android Mainline

يستخدم سجلّ الشفافية في وحدات Android Mainline هياكل بيانات يمكن التحقّق منها لضمان سلامة وحدات Mainline.

وقد أثبتت مشاريع مثل شفافية البرامج الثنائية في Pixel وشهادة الشفافية فائدة سجلّات الشفافية.

تستند سجلّات الشفافية إلى أشجار ميركل. تفترض هذه الصفحة معرفة عامة بأشجار ميركل والشفافية الثنائية. يمكنك الاطّلاع على بُنى البيانات القابلة للتحقّق للحصول على نظرة عامة حول أشجار ميركل والصفحة الرئيسية للحصول على نظرة عامة حول جهود شفافية البرامج الثنائية في Android.

تسجيل عملية التنفيذ

يتم تنفيذ سجلّ الشفافية لوحدات Android Mainline باستخدام Tessera ويلتزم بمواصفات tlog-tiles بارتفاع مربّع يبلغ 8 (يحتوي كل مربّع أو حزمة على 28 كحد أقصى = 256 عنصرًا).

يتم عرض جذر محتوى السجلّ على الرابط: https://www.gstatic.com/android/binary_transparency/mainline/2026/02/tile/entries/

يتم عرض جذر محتوى المربّع على: https://www.gstatic.com/android/binary_transparency/mainline/2026/02/tile/

يُرجى العِلم أنّ عناوين URL هذه ليست صفحات ويب عادية. بدلاً من ذلك، يجب الوصول إلى إدخالات السجلّ في أدلّته الفرعية آليًا باستخدام أدوات مثل Tessera أو مكتبة Tlog في Golang SumDB.

  • مربّعات الشجرة: يتم عرض تجزئات العُقد الداخلية والورقية لشجرة Merkle ضمن tile/<level>/<path> (مثل tile/0/000 وtile/1/000).
  • مجموعات الإدخالات: يتم تنظيم حمولات أوراق السجلّ في مجموعات إدخالات ضمن tile/entries/<path> (مثل tile/entries/000 وtile/entries/001)، وتحتوي كل مجموعة على ما يصل إلى 256 إدخالاً مدمجًا.

يُرجى الرجوع إلى محتوى السجلّ للحصول على وصف لما يحتويه كل إدخال.

يتم عرض تجزئة جذر شجرة Merkle للسجلّ، والمضمّنة في نقطة التحقّق، على الرابط https://www.gstatic.com/android/binary_transparency/mainline/2026/02/checkpoint بتنسيق نقطة التحقّق. مصدر نقطة التحقّق هو android.transparency.goog/mainline/modules/2026/1.

يتم إنشاء توقيعات نقاط التحقّق باستخدام خوارزمية التوقيع Ed25519. يمكن التحقّق من توقيع نقطة التحقّق باستخدام المفتاح العام التالي إما بتنسيق أداة التحقّق من الملاحظات (كما هو محدّد في golang.org/x/mod/sumdb/note) أو بتنسيق PEM العادي:

  • تنسيق أداة التحقّق من الملاحظات (<name>+<key_hash>+<public_key_bytes>):
android.transparency.goog/mainline/modules/2026/1+1a8e4064+AfwnHm59rNQTJICchMd7a2W5PQa7nC5h2gTEfq3fhCEI
  • تنسيق PEM‏ (SubjectPublicKeyInfo):
-----BEGIN PUBLIC KEY-----
MCowBQYDK2VwAyEA/Ccebn2s1BMkgJyEx3trZbk9BrucLmHaBMR+rd+EIQg=
-----END PUBLIC KEY-----

سجلّ مؤرشف (الإصدار 1)

قبل تحديث الربع الثالث من عام 2026، كان السجلّ يعمل بموجب إصدار سابق من V1 باستخدام توقيعات ECDSA (NIST P-256 مع SHA-256). يتم أرشفة سجلّ V1 ويصبح متاحًا للقراءة فقط، ولكن يظل متاحًا للجميع للتحقّق من الإدخالات السابقة:

-----BEGIN PUBLIC KEY-----
MFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEr6nPds8eKCYU42avidXNM1GDCtQ/
66GjGuIpUcZjqQNngwRFVCFZDpWuvDnqXzhJRxqccL9lbeEVVZGpa4x6pg==
-----END PUBLIC KEY-----

بما أنّ وحدات Mainline تشبه ملفات APK، تنطبق هنا أيضًا طرق التحقّق الموضّحة في صفحة التحقّق من ملفات APK من Google. يمكنك استخدام الطرق الموضّحة هناك للتحقّق من المطالبات المقدَّمة في نموذج المدّعي.