Dziennik przejrzystości modułów magistrali Androida

Dziennik przejrzystości modułów Mainline na Androidzie korzysta z weryfikowalnych struktur danych, aby zapewnić integralność modułów Mainline.

Użyteczność dzienników przejrzystości została udowodniona w projektach takich jak Pixel Binary TransparencyCertificate Transparency.

Dzienniki przejrzystości są oparte na drzewach Merkle. Zakładamy, że użytkownik ma ogólną wiedzę na temat drzew Merkle i przejrzystości binarnej. Więcej informacji o drzewach Merkle’a znajdziesz w artykule Verifiable Data Structures, a o działaniach związanych z przejrzystością binarną w Androidzie – na stronie głównej.

Implementacja logowania

Dziennik przejrzystości modułów Mainline Androida jest zaimplementowany jako drzewo Merkle oparte na kafelkach o wysokości 8. Główna część treści kafelka jest wyświetlana pod adresem https://gstatic.com/android/binary_transparency/mainline/2026/01/tile/. Pamiętaj, że ten adres URL nie jest standardową stroną internetową. Zamiast tego do wpisów w dzienniku w jego podkatalogach należy uzyskiwać dostęp programowo za pomocą narzędzi takich jak biblioteka Tlog Golang SumDB.

Opis zawartości poszczególnych wpisów znajdziesz w sekcji Log Content (Zawartość dziennika).

Główny skrót drzewa Merkle dziennika, zawarty w punkcie kontrolnym, jest udostępniany pod adresem https://gstatic.com/android/binary_transparency/mainline/2026/01/checkpoint.txtformacie punktu kontrolnego. Liście danych tego drzewa Merkle są udostępniane jako pojedynczy plik pod adresem https://gstatic.com/android/binary_transparency/mainline/2026/01/module_info.txt. Podpis punktu kontrolnego można zweryfikować za pomocą tego klucza publicznego:

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

Moduły Mainline są podobne do plików APK, więc metody weryfikacji opisane na stronie weryfikacji plików APK Google mają zastosowanie również w tym przypadku. Możesz użyć tych metod, aby zweryfikować roszczenia zawarte w modelu zgłaszającego roszczenie.