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 signed up for the free version a year ago”

Checks (re-run on this request)

Proof data

Record hash (SHA-256)
0cdc1b8c6d9075ef7ecedd5bc887c2416fad0db0ec79d6810beae49be5dbf6d1
Signature (Ed25519, base64)
YxJW5K/oQv72WQbz4k3dbRl9pC7vItDfyB+jk+mHjEbG2wSgD0HBoSI/JIJam83wuvKba1omGhWjtxvEERT3DQ==
Merkle root
1ee209bed1b4afeeee81ef09190ce0d3b99a421ee0d9b4b532771d9d3d94cb97
Merkle path
["0cdb3604db7d972fa9ac6aafa80e5eb337d517c94b78c4b1e6c93d079c8af10e","7314f9b7bf21ffc270a22889643f8118bb67b0c4057535395b99827a1539e6bf","f2b15b35126d15ddf28b8b17ece8aa16cadab12d5617e4a699758bee0ac3f473","9e1794930f7abbb5b815d07e0dd1986cc50df8ead091d63f0c4f9fea96fc0420","9801e83befb281b9227c8c4fe2a4df57a507c2edf8d3873f8c1a0cc93149abb8","186b8a5c2ab9ec5bd19fcf2b332f78f2c043ecb9a6cfa6576339429c20c52987","61f2820cd1a3ad875169f1ac323becf7948b3e05a7ac062b61dd2bcbb9c4dad6","820665b690e2e9a03f2e30df9f26b2ac93907f77aa902ee7a0f01e39a09a2e30","91992be66fca19d9bdb72f496741d14b200df5eea955f2f82c0f6e78f4398f32","2be8ad43e6b65cf9200529ecb35961c2c92ab601effeb291c5da788f89380761","a87294e2d2638764ecd8054e425b8ed8fda7e26420ecd48b7f4b1bc9ca3aa79b","be717d82336b8a702823d0e7af4f2ae950108670f84436b6f309cf0c6c06e1f6","6e8057b232d63636c1f7dae5369f2ce496d13ac0298d4e729a4f5fea7d1d003c","228372f289d42aa4e04ea339823d2801b30ff06ea98e88b25dedfab148039385","5ec5da736cacffa4888d1200ba9c58ec751132aada3e6a09e36cdbe25e528522"]
Anchored
2026-08-28
Public log entry
search.sigstore.dev, log index 2621931690 · entry 108e9186e8c5677aeade…
Expected log hash
d994a621bbbd8dc49979b621c8ed37c232baaf4093de999a10f35ab0baca4376 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":"v1787892752320","kind":"published-quote","locale":"en","page":"subtheme:proton/ordering/free-plan-upgrades/en","quote":"i signed up for the free version a year ago","rating":1,"review_date":"2026-08-11","source":"Google Play","source_url":"https://play.google.com/store/apps/details?id=ch.protonvpn.android","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 (1ee209bed1b4…), 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.