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.

“It's the best VPN app I've ever used.”

Checks (re-run on this request)

Proof data

Record hash (SHA-256)
0fb18e03713e6d2482ceed5870e8237e6ad83f72fea17dbfb297bc8176890b15
Signature (Ed25519, base64)
k88vHxOW+dNW3QEV92gDyFOMWRacgS2FgtZ4P/Z/lck1yPWwAQ/LZiJkLFF9BxxMD0R6s1FwqfJlo3cwPQtdBw==
Merkle root
acdf1cdd0bdd2a199677e85dbc5991dc48c1e518ed6d2c5233af5991b4186e6d
Merkle path
["0fb455be0723e7768e74c1e872802214f30f034af025ebc93453c087aef41fa8","c9a05f5c8190c2728f19717d20a3bd8d7c97216c6be43cbbeea99b44cb316c29","80313b6545222fac936a9094806273fdf74e9d50357ef176d5f45c049e4536f0","98aa69c46fcd0f74a8672496221b8c8d96353b0c733c3bd648c3017bf37b709b","f8f115547113d59f26cd9a17c5c5885d794d843b3aa8818f7a9916c7830b175e","ceceac6788e180932406afa42d9f2aedddf0cae9d4af9d333340ea41c96f05c8","38fa208acf61a0ecd8728ad6f95dae42c64db62e941147f0094a58f6f07c682e","24c326b72bbd947d346b19f60ef55698aebe60cb1b80b04cfe9e97c42529c8b7","ba020256895f645d5d48b910c4374040cabe519f59aa07d4e218854542043344","73d6a5f97eaf1616b9bd44936a074ad66bc5599f8f3854d952ae37997b9eacbc","3554381ef325c11a65e28a6fee6c643b4b4b2a56a591e341afd0295f9f2664ef","e6d320b1a1c165cb3f510accf419016e8f913615cccc12cf3280df561ab3fc0b","5be1ed0db4a168c968a9338cf99a259771d41cd5263b972d09b2723267155cfc","f88b7eb537a26a67b92d1223a237ed8f66b05121bed134a4e98a9efb344eda0f","abbe7f57eef4397ffabc67ae858dc9e10b74d761241655f8d4d6e91a3ed19782"]
Anchored
2026-08-31
Public log entry
search.sigstore.dev, log index 2657398434 · entry 108e9186e8c5677a2042…
Expected log hash
654fbf62fc5d4d889ecdda697456043b4d29831eb78c01e70ea2a4db22de7769 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":"v1788145268703","kind":"published-quote","locale":"en","page":"subtheme:proton/quality/vpn-speed-servers/en","quote":"It's the best VPN app I've ever used.","rating":5,"review_date":"2026-08-13","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 (acdf1cdd0bdd…), 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.