关于功能块

如需了解 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 系统 APK 代码公开透明日志
    • https://www.gstatic.com/android/binary_transparency/google1p/jwt/2026/01/tile
  • Google 产品应用透明度日志
    • https://www.gstatic.com/android/binary_transparency/google1p/apk/2026/02/tile
  • Android Mainline 模块透明度日志
    • https://www.gstatic.com/android/binary_transparency/mainline/2026/02/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。