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.

“I used the last version on this store.”

Checks (re-run on this request)

Proof data

Record hash (SHA-256)
096a6961e41f4cebd4aec1d4b75280af54474602eed14e7402437fd6588bfc42
Signature (Ed25519, base64)
srxPzDTPwZsJHTclbXQRF+e2wFRAUIoVKeVieANN5QXl0SOwo3fb4Xw1/qt1be9sHCHLDmlOfNlEpItPvjkQDw==
Merkle root
c35385e3159410853b606ace3c93abcb561dc35874bbfae2272c5b0050f06a48
Merkle path
["096cd8a59c70d6e230bb410acbd491c004c91463df6e04b4f129a084bb001d27","b22a4003716408b042492fbb909494fda86f6e3d309bf0af54e2caf25517dc16","cc67da60fa9421f51e9ef04de69c8a10383133d4411ccaf6e4797b6814f77afb","4a9edfe76d44b5dad63e0488d29bb01c3a58b290d9cca2ff9fe799fde8af0e86","7205365e02c31aa73dfeea20517b0ff29c356c169211a4adcce1006723b618a4","925512c4c7926a9f6f737ad41e5abf20ec50e6eefbdae37958c892af1935c56d","76b464f9b26dbfaf533bb39f78a7182550064da5ac53292fafb2c721224f8c85","b03a6101d8c58a26a922c5e41aaa966d4190ba072b95be45e69b1814628af2d7","459b1a18d3338572bbf4b81963e26b1a38e70a5d8abf4554bb582892fb65b5e5","10a688be2d68b5c85e84c217ff76e136975d86bea80e740f76fbd37f57297f6c","bc703747791aebe627643a5e26436245d626120d8d1e30518dc7becec0f2017a","d5b1417f0735caf720f0245fb0f2b38ff3b2c6cac50548cbc860e0e4bd82c2ac","483af28031f8b50597d7da26c72f1abe6cb7a0a31c33e2294be9fc7d8e6d06d2","b0eaaaf0554356daf48535f981c97bcdfd635e531452842df23420c0f264e90b","19399f0af13a2147dd8ceb83692caff2214adce3d49571e366dcfb3633df2667"]
Anchored
2026-08-19
Public log entry
search.sigstore.dev, log index 2514083622 · entry 108e9186e8c5677a81ef…
Expected log hash
eb47f42546fcc705387579993679cd6250c0b995d01bbd10805cb4c8d66efe2c 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":"v1787123762743","kind":"published-quote","locale":"en","page":"theme:proton/service/en","quote":"I used the last version on this store.","rating":1,"review_date":"2026-08-13","source":"Google Play","source_url":"https://play.google.com/store/apps/details?id=proton.android.authenticator","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 (c35385e31594…), 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.