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.

“would be better if there was a option to automatically change location every few minutes”

Checks (re-run on this request)

Proof data

Record hash (SHA-256)
0cf4cd7da17a0a65ccc87d980580288b0c64efcc1d3c57f38e319e0d11fd951f
Signature (Ed25519, base64)
TFFThBf1kb5R2Tntaq5dFr2mK7OiBy1EvkSdxcsR9zZbXWvoDN7WtZOTxV+FJduf/ho6LllnbwH4RSUuYWd7CA==
Merkle root
7e1d35ddccae85f1d1b219083f51bcf5243a04c3c6ea5c30a00b2f5d8561845e
Merkle path
["0cf971100dc40a08e7e914739631f02fc53382abce3b0c531d9231b3372e9820","2dba72d749888afe2d6932f07a68362fa5c2786cf5a5dbabeb231ce8be116624","17cf90401bb58cac4b9134bf91f9f1a798d943b78b7305750605c253c06d298c","55109d10bf219887d64696e59959ecec413ad76022434334fa0d1915f05adff7","d581c92cc383df960a3e23fbd1dc7af8d0aa29a4038f75f7047b5d2f97477b37","d70fb81d97834b85a99e2117b6239bd75336a5b299cc08cea6bed4b20e874ab6","f02497097a5f19312ba968678a22320c8d8613443f0e9e188592512dad6d99e9","15058b0899c57024ed55819e6c7c9e6448e7ddb4b8346a8c46843664431384c4","5f19995e4ef615829b03ba8a63bcbcafe9b9cca86d1cdda4a78588ecf05d2d25","b2e8ab68f8578fe41e7701af6198feaa36f7dc8bb08d5a7bd6aaf9b957939ad0","3eceb611a139cbfc1feb30498a4b26d0296c9f9beab6ff50230a7d4bb5ce34bc","0d9272765e95bb88460e0f11dbec57a088e7a1040def1ceea46f2ba83166d4f7","2afa3f952c3f43ea95afdb596f9e46f323ee0a3ec7c3ce32038311c8a89c16bc","02b987d8bf0552b7c2d2c3d2c526ab592e0137d214145a63ef84c4f9665a3e12","92f0e686d0ee915432d376a42135bb00ed6e9f0363b8646b0ac5575e52c28909"]
Anchored
2026-08-22
Public log entry
search.sigstore.dev, log index 2557057559 · entry 108e9186e8c5677a5b66…
Expected log hash
49e6607c07aad7ce46e30f32fe1978d4dc57e680151ac8134de2fb9d6e01f187 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":"v1787311095101","kind":"published-quote","locale":"en","page":"subtheme:proton/service/server-locations-availability/en","quote":"would be better if there was a option to automatically change location every few minutes","rating":5,"review_date":"2026-08-12","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 (7e1d35ddccae…), 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.