关于功能块

如需了解有关 Android 二进制透明度的常规信息,请访问主要的二进制透明度页面

此页面详细介绍了各种 tile/ 目录下的文件格式。

这些文件包含 Merkle 树节点的哈希值,这些节点表示 Pixel 出厂映像的二进制透明度日志。此外,这些哈希值会打包到图块中。如需简要了解如何将树拆分为图块,请参阅平铺日志

在此日志中,节点使用 SHA256 进行哈希处理。我们使用 tlog 库来写入高度为 1 的特定功能块。这意味着,每个图块最多包含 2^height = 2 个哈希,每个哈希的长度为 32 字节

不过,对于后续(较新)日志,图块的高度设置为 8。 这意味着,每个图块最多包含 2^8 = 256 个哈希。

有关图块路径构建的详细信息,请参阅 tlog 图块文档

每个日志的图块根目录位于:

  • Pixel 透明度日志
    • 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
  • Mainline 模块透明度日志
    • https://www.gstatic.com/android/binary_transparency/mainline/2026/01/module_info.txt

使用 Tile 进行计算的示例

为了更好地了解功能块的工作原理,我们将通过一个使用 Pixel 透明度日志的示例进行说明。假设树的大小为 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