О плитках

Общая информация о прозрачности двоичного кода Android доступна на главной странице, посвященной прозрачности двоичного кода .

На этой странице представлена ​​более подробная информация о формате файлов, расположенных в различных tile/ .

Эти файлы содержат хеши узлов дерева Меркла, представляющих бинарный журнал прозрачности для изображений Pixel Factory. Кроме того, эти хеши упакованы в тайлы. Обзор того, как разделить дерево на тайлы, см. в разделе «Разбиение журнала на тайлы» .

В этом журнале узлы хешируются с использованием SHA256. Мы используем библиотеку tlog для записи тайлов с высотой 1. Это означает, что каждый тайл содержит не более 2^высоты = 2 хеша, каждый из которых занимает 32 байта .

Однако для последующих (более новых) записей высота тайлов устанавливается на уровне 8. Это означает, что каждый тайл содержит не более 2^8 = 256 хешей.

Подробности о построении дорожек из плиток можно найти в документации tlog Tile .

Корневой каталог плитки для каждого бревна обслуживается по адресу:

  • Журнал прозрачности пикселей
    • https://developers.google.com/android/binary_transparency/tile
  • Журнал прозрачности кода Google
    • https://www.gstatic.com/android/binary_transparency/google1p/jwt/2026/01/package_info.txt
  • Журнал прозрачности продуктовых приложений Google
    • https://www.gstatic.com/android/binary_transparency/google1p/apk/2026/01/package_info.txt
  • Журнал прозрачности основного модуля
    • https://www.gstatic.com/android/binary_transparency/mainline/2026/01/module_info.txt

Пример вычислений с использованием тайлов

Чтобы лучше понять, как работают тайлы, рассмотрим пример с использованием 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 .