Nhật ký minh bạch về ứng dụng sản phẩm của Google tận dụng công nghệ nhật ký minh bạch.
Tiện ích của nhật ký minh bạch đã được chứng minh bằng các dự án như Tính minh bạch của tệp nhị phân Pixel và Tính minh bạch của chứng chỉ.
Nhật ký minh bạch được triển khai bằng cây Merkle. Trang này giả định rằng bạn có kiến thức chung về cây Merkle và tính minh bạch nhị phân. Hãy xem Cấu trúc dữ liệu có thể xác minh để biết thông tin tổng quan về cây Merkle và trang chính để biết thông tin tổng quan về nỗ lực minh bạch nhị phân trong Android.
Triển khai nhật ký
Nhật ký minh bạch về ứng dụng sản phẩm của Google được triển khai bằng Tessera và tuân thủ quy cách tlog-tiles với chiều cao ô là 8 (mỗi ô hoặc gói chứa tối đa 28 = 256 mục).
Thư mục gốc của nội dung nhật ký được phân phát tại:
https://gstatic.com/android/binary_transparency/google1p/apk/2026/02/tile/entries/
Thư mục gốc của nội dung thẻ thông tin được phân phát tại:
https://gstatic.com/android/binary_transparency/google1p/apk/2026/02/tile/
Xin lưu ý rằng đây không phải là các trang web thông thường: các mục nhật ký có trong thư mục con phải được đọc theo phương thức lập trình bằng thư viện ứng dụng tlog-tiles (chẳng hạn như Tessera hoặc thư viện Tlog Golang SumDB) chứ không phải thông qua trình duyệt. Chúng tôi nêu rõ đường liên kết tại đây để cho rõ ràng.
- Tree Tiles: Băm nút lá và nút bên trong của cây Merkle được phân phát trong
tile/<level>/<path>(ví dụ:tile/0/000,tile/1/000). - Gói mục nhập: Tải trọng của nút lá nhật ký được sắp xếp thành các gói mục nhập trong
tile/entries/<path>(ví dụ:tile/entries/000,tile/entries/001), trong đó mỗi gói chứa tối đa 256 mục nhập được nối.
Hãy tham khảo phần Nội dung nhật ký để biết nội dung của từng mục.
Giá trị băm gốc của cây Merkle trong nhật ký, có trong một điểm kiểm tra, được phân phát tại https://gstatic.com/android/binary_transparency/google1p/apk/2026/02/checkpoint theo định dạng điểm kiểm tra.
Nguồn gốc của điểm kiểm tra là android.transparency.goog/google1p/apk/2026/1.
Chữ ký điểm kiểm tra được tạo bằng thuật toán chữ ký Ed25519.
Bạn có thể xác minh chữ ký của điểm kiểm tra bằng khoá công khai sau đây ở định dạng trình xác minh ghi chú (như được xác định trong golang.org/x/mod/sumdb/note) hoặc định dạng PEM tiêu chuẩn:
- Định dạng trình xác minh ghi chú (
<name>+<key_hash>+<public_key_bytes>):
android.transparency.goog/google1p/apk/2026/1+fc654374+ATr9NQE0gvOtVfj5cCStUzdlflEp3oZoNHD8pImzPj5O
- Định dạng PEM (SubjectPublicKeyInfo):
-----BEGIN PUBLIC KEY-----
MCowBQYDK2VwAyEAOv01ATSC861V+PlwJK1TN2V+USnehmg0cPykibM+Pk4=
-----END PUBLIC KEY-----
Nhật ký lưu trữ (Phiên bản 1)
Trước bản cập nhật quý 3 năm 2026, nhật ký này hoạt động theo một quy trình triển khai V1 trước đó bằng cách sử dụng chữ ký ECDSA (NIST P-256 với SHA-256). Nhật ký V1 được lưu trữ và ở chế độ chỉ đọc, nhưng vẫn có thể truy cập công khai để xác minh các mục trong quá khứ:
- Kích thước cây: 1.797.152 mục (tại thời điểm lưu trữ)
- Root Hash:
IkmuYB2xKKEOLiaQkIho1o9/uGjrKDbk8xa3xXaFeHY= - Checkpoint: https://gstatic.com/android/binary_transparency/google1p/apk/2026/01/checkpoint.txt
- Nút dữ liệu: Do hạn chế về kích thước tệp riêng lẻ và bộ nhớ trên
gstatic.com(giới hạn tệp tĩnh đơn ở mức 200 MiB), tải trọng nút cho nhật ký lưu trữ hoàn chỉnh được phân vùng trên hai tệp tuần tự:- Phần 1 (mục 0 – 1.714.860): https://gstatic.com/android/binary_transparency/google1p/apk/2026/01/package_info.txt
- Phần 2 (mục 1.714.861 – 1.797.151): https://gstatic.com/android/binary_transparency/google1p/apk/2026/01/package_info2.txt
- Thư mục gốc của ô:
https://gstatic.com/android/binary_transparency/google1p/apk/2026/01/tile/ - Khoá công khai (định dạng PEM, ECDSA P-256):
-----BEGIN PUBLIC KEY-----
MFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEaP7xodTP5/teDOUYFAUHF0MqvOXt
+jamtcDYWxTjY99hyYczpB/cF2fxHhIqEznNpLcI2Vorl+iEchWhZ0y3Mg==
-----END PUBLIC KEY-----
Xác minh thông tin xác nhận quyền sở hữu trong nhật ký
Trang xác minh mô tả chi tiết hơn về cách các thành phần khác nhau của nhật ký được dùng để xác minh các tuyên bố trong Mô hình bên yêu cầu.