El registro de transparencia de aplicaciones de productos de Google aprovecha la tecnología de registro de transparencia.
La utilidad de los registros de transparencia se demostró en proyectos como Pixel Binary Transparency y también Certificado de transparencia.
Los registros de transparencia se implementan con árboles Merkle. En esta página, se supone que tienes conocimientos generales sobre los árboles Merkle y la transparencia binaria. Consulta Estructuras de datos verificables para obtener una descripción general de los árboles Merkle y la página principal para obtener una descripción general del esfuerzo de transparencia binaria en Android.
Implementación de registros
El registro de transparencia de aplicaciones de productos de Google se implementa con Tessera y cumple con la especificación tlog-tiles con una altura de mosaico de 8 (cada mosaico o paquete contiene como máximo 28 = 256 elementos).
La raíz del contenido del registro se entrega en https://gstatic.com/android/binary_transparency/google1p/apk/2026/02/tile/entries/.
La raíz del contenido del mosaico se entrega en https://gstatic.com/android/binary_transparency/google1p/apk/2026/02/tile/.
Ten en cuenta que no son páginas web normales: las entradas de registro contenidas en los
subdirectorios se deben leer de forma programática con una biblioteca tlog-tiles cliente (como Tessera o la biblioteca Golang SumDB Tlog) y no
a través de un navegador. Indicamos el vínculo aquí para mayor claridad.
- Mosaicos de árbol: Los hashes de nodos interiores y hoja del árbol Merkle se entregan en
tile/<level>/<path>(p.ej.,tile/0/000,tile/1/000). - Paquetes de entrada: Las cargas útiles de hojas de registro se organizan en paquetes de entrada en
tile/entries/<path>(p.ej.,tile/entries/000,tile/entries/001), y cada paquete contiene hasta 256 entradas concatenadas.
Consulta Contenido del registro para obtener una descripción de lo que contiene cada entrada.
El hash raíz del árbol Merkle del registro, contenido en un punto de control, se entrega
en https://gstatic.com/android/binary_transparency/google1p/apk/2026/02/checkpoint
en el formato de punto de control.
El origen del punto de control es android.transparency.goog/google1p/apk/2026/1.
Las firmas de puntos de control se generan con el algoritmo de firma Ed25519.
La firma del punto de control se puede verificar con la siguiente clave pública
en formato de verificador de notas (como se define en golang.org/x/mod/sumdb/note)
o en formato PEM estándar:
- Formato de verificador de notas (
<name>+<key_hash>+<public_key_bytes>):
android.transparency.goog/google1p/apk/2026/1+fc654374+ATr9NQE0gvOtVfj5cCStUzdlflEp3oZoNHD8pImzPj5O
- Formato PEM (SubjectPublicKeyInfo):
-----BEGIN PUBLIC KEY-----
MCowBQYDK2VwAyEAOv01ATSC861V+PlwJK1TN2V+USnehmg0cPykibM+Pk4=
-----END PUBLIC KEY-----
Registro archivado (V1)
Antes de la actualización del tercer trimestre de 2026, el registro funcionaba con una implementación anterior de la versión 1 que usaba firmas ECDSA (NIST P-256 con SHA-256). El registro de la versión 1 está archivado y es de solo lectura, pero sigue siendo accesible públicamente para verificar las entradas históricas:
- Tamaño del árbol: 1,797,152 entradas (en el momento del archivo)
- Hash raíz:
IkmuYB2xKKEOLiaQkIho1o9/uGjrKDbk8xa3xXaFeHY= - Punto de control: https://gstatic.com/android/binary_transparency/google1p/apk/2026/01/checkpoint.txt
- Hojas de datos: Debido a las limitaciones de tamaño de archivo individual y almacenamiento en
gstatic.com(que limita los archivos estáticos individuales a 200 MiB), las cargas útiles de hojas para el registro archivado completo se particionan en dos archivos secuenciales:- Parte 1 (entradas 0 a 1,714,860): https://gstatic.com/android/binary_transparency/google1p/apk/2026/01/package_info.txt
- Parte 2 (entradas 1,714,861 a 1,797,151): https://gstatic.com/android/binary_transparency/google1p/apk/2026/01/package_info2.txt
- Raíz del mosaico:
https://gstatic.com/android/binary_transparency/google1p/apk/2026/01/tile/ - Clave pública (formato PEM, ECDSA P-256):
-----BEGIN PUBLIC KEY-----
MFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEaP7xodTP5/teDOUYFAUHF0MqvOXt
+jamtcDYWxTjY99hyYczpB/cF2fxHhIqEznNpLcI2Vorl+iEchWhZ0y3Mg==
-----END PUBLIC KEY-----
Verifica las declaraciones de registro
En la página de verificación, se describe con más detalle cómo se usan los distintos componentes del registro para verificar las declaraciones que se realizan en el modelo de reclamante.