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 is an excellent VPN app”

Checks (re-run on this request)

Proof data

Record hash (SHA-256)
0f705ac153e66a9cceab67d7924c04805df187f9f9ec2270ead690f57e109bda
Signature (Ed25519, base64)
2GjOGeSo64hNOUjv4SsuKiit1o1gMfeLymgswYqIPz9bdvCvaJIGw0XmCYTVo2oXwATTookVHX97E9w55GzzBg==
Merkle root
d019a962265fd99700bb41421c12bf721bc431ce9725f4e9d547011775ab56ec
Merkle path
["0f7119fe67f0a4d09085a73e924d0ed34b9188202b935a7c48590d35b40a9efc","bd8fde656693ac3105e350014756a65acb9c37a438233b7117a623b1571e0e1b","b1cbb3c4be7ecf55b9a0cbbc16b29181d915983c64f90bc164c30f13211bde85","4461b8358a1049d10f49d7570ceadaa1c0d81d0e8cf93730cab867bbb48091bf","8af4ba42cc8b7e2101c064c891ccceb61906f678f3339f856e14ffc6112d19d5","e9d0403335d2809b0d96157e1471202098a0ec349bfdd3629496a10acb7e8624","0791c11415ed01aacb50250a52ba20aff5478f6cd82448e50d4e65657f71dbd8","698a79d00806ef726952413926f792abe9745dcd105a5f2fce5613acea526935","a8b00d8e6d09371f25eec88e2fd77db2c556efbe626c7456c5b446fa49248d78","4a903d6781907e9dd2f0a329db075206ef2d8e5fa06b900c36068cfde48d2c76","f410755dd9ebf3ef5d42be582ae6cac2b4e9add953f3a80842eedfd245932509","a3af7151d6a244480abe5bc8ada397c9af55b3431df57672865c450809772fd0","8d7f9bb84a33c413af9063341c8f5160bc8725a67ef59bd2d044580fb9f3155b","65b176b4a433b701cea4a24b83deb2fa9ed09be9f26f9fdaada87e8434a57f00","a28f44db157d986c9333d9e3edce8ce71060ce7f7d8f4bff70f57fc26d48546f"]
Anchored
2026-08-31
Public log entry
search.sigstore.dev, log index 2657725656 · entry 108e9186e8c5677adf65…
Expected log hash
b4666dc064e94c6d0ca3a2e9a0c5f9ff5cb70ce3ce9e0a74343a10c712c15a62 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":"v1788147462663","kind":"published-quote","locale":"en","page":"subtheme:proton/quality/vpn-speed-servers/en","quote":"It is an excellent VPN app","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 (d019a962265f…), 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.