Google 제품 애플리케이션 투명성 로그는 투명성 로그 기술을 활용합니다.
투명성 로그의 유용성은 Pixel 바이너리 투명성 및 인증서 투명성과 같은 프로젝트를 통해 입증되었습니다.
투명성 로그는 Merkle 트리를 사용하여 구현됩니다. 이 페이지에서는 Merkle 트리 및 바이너리 투명성에 대한 일반적인 지식을 가정합니다. Merkle 트리에 대한 개요는 검증 가능한 데이터 구조를 참고하고 Android 내 바이너리 투명성 노력에 대한 개요는 기본 페이지를 참고하세요.
로그 구현
Google 제품 애플리케이션 투명성 로그는 Tessera를 사용하여 구현되며 타일 높이가 8인 tlog-tiles 사양을 준수합니다 (각 타일 또는 번들에는 최대 28 = 256개의 항목이 포함됨).
로그 콘텐츠의 루트는 https://gstatic.com/android/binary_transparency/google1p/apk/2026/02/tile/entries/에서 제공됩니다.
타일 콘텐츠의 루트는 https://gstatic.com/android/binary_transparency/google1p/apk/2026/02/tile/에서 제공됩니다.
이러한 항목은 일반 웹페이지가 아닙니다. 하위 디렉터리에 포함된 로그 항목은 브라우저를 통해 읽는 것이 아니라 tlog-tiles 클라이언트 라이브러리 (예: Tessera 또는 Golang SumDB Tlog library)를 사용하여 프로그래매틱 방식으로 읽어야 합니다. 명확성을 위해 링크를 여기에 명시합니다.
- 트리 타일: Merkle 트리 내부 및 리프 노드 해시는
tile/<level>/<path>에서 제공됩니다 (예:tile/0/000,tile/1/000). - 항목 번들: 로그 리프 페이로드는
tile/entries/<path>(예:tile/entries/000,tile/entries/001) 아래의 항목 번들로 구성되며 각 번들에는 최대 256개의 연결된 항목이 포함됩니다.
각 항목에 포함된 내용에 관한 설명은 로그 콘텐츠를 참고하세요.
체크포인트에 포함된 로그의 Merkle 트리 루트 해시는 체크포인트 형식으로 https://gstatic.com/android/binary_transparency/google1p/apk/2026/02/checkpoint에서 제공됩니다.
체크포인트 출처는 android.transparency.goog/google1p/apk/2026/1입니다.
체크포인트 서명은 Ed25519 서명 알고리즘을 사용하여 생성됩니다.
체크포인트의 서명은
golang.org/x/mod/sumdb/note에 정의된 대로 노트 검증 도구 형식 또는 표준 PEM 형식으로 다음 공개 키를 사용하여 확인할 수 있습니다.
- 노트 검증 도구 형식 (
<name>+<key_hash>+<public_key_bytes>):
android.transparency.goog/google1p/apk/2026/1+fc654374+ATr9NQE0gvOtVfj5cCStUzdlflEp3oZoNHD8pImzPj5O
- PEM 형식 (SubjectPublicKeyInfo):
-----BEGIN PUBLIC KEY-----
MCowBQYDK2VwAyEAOv01ATSC861V+PlwJK1TN2V+USnehmg0cPykibM+Pk4=
-----END PUBLIC KEY-----
보관된 로그 (V1)
2026년 3분기 업데이트 이전에는 로그가 ECDSA (SHA-256이 포함된 NIST P-256) 서명을 사용하는 이전 V1 구현에서 작동했습니다. V1 로그는 보관되고 읽기 전용이지만 이전 항목을 확인하기 위해 공개적으로 액세스할 수 있습니다.
- 트리 크기: 1,797,152개의 항목 (보관 시)
- 루트 해시:
IkmuYB2xKKEOLiaQkIho1o9/uGjrKDbk8xa3xXaFeHY= - 체크포인트: https://gstatic.com/android/binary_transparency/google1p/apk/2026/01/checkpoint.txt
- 데이터 리프:
gstatic.com의 개별 파일 크기 및 저장용량 제한 (단일 정적 파일은 200MiB로 제한됨)으로 인해 보관된 전체 로그의 리프 페이로드 는 두 개의 순차적 파일로 분할됩니다.- 1부 (항목 0~1,714,860): https://gstatic.com/android/binary_transparency/google1p/apk/2026/01/package_info.txt
- 2부 (항목 1,714,861~1,797,151): https://gstatic.com/android/binary_transparency/google1p/apk/2026/01/package_info2.txt
- 타일 루트:
https://gstatic.com/android/binary_transparency/google1p/apk/2026/01/tile/ - 공개 키 (PEM 형식, ECDSA P-256):
-----BEGIN PUBLIC KEY-----
MFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEaP7xodTP5/teDOUYFAUHF0MqvOXt
+jamtcDYWxTjY99hyYczpB/cF2fxHhIqEznNpLcI2Vorl+iEchWhZ0y3Mg==
-----END PUBLIC KEY-----
로그 클레임 확인
확인 페이지에서는 로그의 다양한 구성요소를 사용하여 클레임자 모델에서 제기된 클레임을 확인하는 방법을 자세히 설명합니다.