Quote verification

This proves the quote below is recorded by Citatio exactly as displayed and has not been altered since it was committed and anchored. It documents Citatio's crawl observation; it does not imply endorsement by the source platform. The quote links to the original review.

“ZERO advertisements”

Checks (re-run on this request)

Proof data

Record hash (SHA-256)
17c57fae0d930a60f4c0b3bf9ea20429ecdb59be20624aa98db2b20e47823252
Signature (Ed25519, base64)
2seYOi8d2BKRd/TjksI8ameijM6EoTd/4UsTbBxbyjddI1nVkjEB4gZtAkiwwnVK1gLmUOmFa8QkZec6D4akCw==
Merkle root
eee462924587f8024361bc8d60043805cf5210f8bd2ef7667df06d093552f9e6
Merkle path
["17be9020696e0bf77305f63a3167eaecf20fe29ba2be6d7030aa7845fe49a412","51338c9b7d790e9fed51ac569554e1e45d6d45a23c635cbfd21684cad0292bca","f72992ed760df79ecf7997e6054a0c8fb7d331460a9524cb71cfe99e1e59c209","30008a88677c38eefafef034318961028cfb51e6f99f15db8e5f9affff2d5d34","1106d41fceb97df606d9666a9be83bf35e5a8578eea37a42c9ed5de68e5f9886","8d31278b20388f9ef32abeb026d12cb4d56e49b105361d3e7ce51084332bf2be","122270ddab2c4f2a0ee308a87493d26acb6d7a80d5be32acaa112b86dbd0d32e","9f53442722cbd6676251231049170e5f9a5257553c8f433c9b3de6f5e4fd463d","667bf00ecdf23856cf04e1581f186e235ded541fa60f7c6bdd8001e71680f450","45a341dbf2b164e43cc9b834c112f624ad62804b3851b6da41d3dcf6d5edd2f7","64ea0a98d3502e2409bfab63314088d374e763408e939b5355b3196a90401df5","9a818f1045e037b5c81556d7f6ec6165a24143565f78e16f2e84828d0670eecc","2671ebca141255a0c11a3bc51354d8cd008634f7e59a58a3f3f9dc756141bb9c","a445a39a48770a8fbc5d87a405ed660d401fa810eac6fbd1d284a96f8c7d5503","452f4fcbca19997a15e6a6869c50e026ff02cb90a6ef21da106ee0457e55941a"]
Anchored
2026-10-10
Public log entry
search.sigstore.dev, log index 3178600936 · entry 108e9186e8c5677a6a91…
Expected log hash
f3dccf508afcb5e89d56dabc8c5aead85de215b1b896d057d463ea1c1bdb13a3 The log entry's spec.data.hash.value must equal this value: the SHA-256 of the Merkle root string above. Recompute it yourself from the root to confirm.
Canonical record
{"dataset_version":"v1791606586319","kind":"published-quote","locale":"en","page":"brand:xodo","quote":"ZERO advertisements","rating":5,"review_date":"2026-06-01","source":"Google Play","source_url":"https://play.google.com/store/apps/details?id=com.xodo.pdf.reader","v":1}

Verify in the public log

  1. Open the Rekor entry (pre-filled with this proof's log index).
  2. In the entry, compare spec.data.hash.value with the "Expected log hash" above: it is the SHA-256 of the Merkle root string (eee462924587…), which ties this proof's root to the log entry.
  3. Decode spec.signature.publicKey.content from base64: it must equal Citatio's published key at /.well-known/citatio-signing.json.
  4. The entry's integratedTime is the independent timestamp: the root, and with it this quote, existed no later than that moment.
  5. Locally, without any Citatio infrastructure: SHA-256 the canonical record (must equal the record hash), verify the Ed25519 signature against the public key, and fold the hash through the Merkle path (sorted-pair SHA-256) to reach the anchored root.