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.

“The best of the best among free VPNs”

Checks (re-run on this request)

Proof data

Record hash (SHA-256)
0846ae9ca842a4e059b4d970d8df2a90632a590eb861209c2339ccc381fadefc
Signature (Ed25519, base64)
jauRReD/Gu0BL12fbdIITOZljekbXNldgUCPhbmI3ILpY2DxOs0iZeKVPPFmH9BHlkJuN2LUGDdzFatCJLtJBQ==
Merkle root
01ca9a914d9cb7fdb6291f3c0bffafc2c86f57c6ac9bbbe06ca1ea757b85fdea
Merkle path
["0843ad8a21814e86d6ba2c07d912a5a3c4b18a3ff8c7104fda06dbbea50f416d","9ca0f7b0d34327be5fed345c7c0c4a520f2ec652e94389109923a6fa8b2cd637","822d857b767e927b7615ebd90bf0ffe4dbee36a1c52cddddae44d4075a7ebb0d","ffe5c455aece4bb03022f47ae7fde750237c5dea62c813ab4608a6c3a984c45d","4d00b0c0cc2affabed6dc2c24393c487721bf55c1667c7ed133607dab10df2b3","2e9c8d609d5de50d967f29cf3d40d35bc78da21010fc21829a609e1953f15d31","4e2fc16d8cca8d796380f4cd92f08d538274fde6350d5e68cc2b0bdead7de309","d6c96d49d329cba812fdb5f6cad3ae64c5aaa3a9619bda3ebc115e32e8cfe40a","c9c096a562d0c6c4fd6f72d6791bb16235ebd8c5ea5ced9e961905d71547eca7","527ac2713d88069f0818f29058df77b688e340326215df810ede0e43e67795f3","3dbae8f820a12ccb2f2e9711918a56a61539daf4f23eefcb2fd8dc4fab2fdb45","122878c07314ad3cc2a2cf0ce355b0a54bc51d36abcbde0759035a88c6991648","c94b2deffec3728e453fee18e0972292972c1acf359c73e609f82c71f84f6262","581f6e77367a390c6be41617812d1bc389d35491529f5e765ef954249e5ece06","e1421d191a62564ab151ed4f3d8990bb670a4cf79ef1b438c8dbf253dc424e03"]
Anchored
2026-08-30
Public log entry
search.sigstore.dev, log index 2647682298 · entry 108e9186e8c5677af736…
Expected log hash
1dfa1bea15f2cfa02080ed204683ae7d0bc0936afc7a7dabbbde7cc96ee2bc57 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":"v1788066809618","kind":"published-quote","locale":"en","page":"product:proton/proton-vpn/en","quote":"The best of the best among free VPNs","rating":5,"review_date":"2026-08-14","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 (01ca9a914d9c…), 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.