Name Date Size #Lines LOC

..--

cmd/verifier/H25-Apr-2025-148102

internal/H25-Apr-2025-648501

README.mdH A D25-Apr-20251.9 KiB3827

go.modH A D25-Apr-2025242 117

go.sumH A D25-Apr-20251.8 KiB1918

README.md

1# Verifier of Binary Transparency for Pixel Factory Images
2
3This repository contains code to read the transparency log for [Pixel Factory Images Binary Transparency](https://developers.google.com/android/binary_transparency/pixel_overview). See the particular section for this tool [here](https://developers.google.com/android/binary_transparency/pixel_verification#verifying-image-inclusion-inclusion-proof).
4
5## Files and Directories
6* `cmd/verifier/`
7  * Contains the binary to read the transparency log. It is embedded with the public key of the log to verify log identity.
8* `internal/`
9  * Internal libraries for the verifier binary.
10
11## Build
12This module requires Go 1.17. Install [here](https://go.dev/doc/install), and run `go build cmd/verifier/verifier.go`.
13
14An executable named `verifier` should be produced upon successful build.
15
16## Usage
17The verifier uses the checkpoint and the log contents (found at the [tile directory](https://developers.google.com/android/binary_transparency/tile)) to check that your image payload is in the transparency log, i.e. that it is published by Google.
18
19To run the verifier after you have built it in the previous section:
20```
21$ ./verifier --payload_path=${PAYLOAD_PATH}
22```
23
24### Input
25The verifier takes a `payload_path` as input.
26
27Each Pixel Factory image corresponds to a [payload](https://developers.google.com/android/binary_transparency/pixel_overview#log_content) stored in the transparency log, the format of which is:
28```
29<build_fingerprint>\n<vbmeta_digest>\n
30```
31See [here](https://developers.google.com/android/binary_transparency/pixel_verification#construct-the-payload-for-verification) for a few methods detailing how to extract this payload from an image.
32
33### Output
34The output of the command is written to stdout:
35  * `OK` if the image is included in the log, i.e. that this [claim](https://developers.google.com/android/binary_transparency/pixel_overview#claimant_model) is true,
36  * `FAILURE` otherwise.
37
38