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.
“lack of auto-connect/disconnect options”
Checks (re-run on this request)
- ✓ Signature — Ed25519 signature over the record hash, verified against the public key at /.well-known/citatio-signing.json
- ✓ Merkle inclusion — Leaf recomputed through the sibling path to the anchored root
- ✓ Public transparency log — Sigstore Rekor log index 3667254458
Proof data
- Record hash (SHA-256)
09eefd05bc1de60c0a2b9dc39733f0b887219906343eb5ad18583945cc0fd611- Signature (Ed25519, base64)
hZKjyBpJEjRA52Z6ODmhLvChw30c9as76pzwTU8iFT859pCjTnulBv2Rt66NIl53y2yU6LALY0vq2jwkuFFyBQ==- Merkle root
6198693610fc101ebb82aa1f9c089f7146b31caebf70bcf1f70b87596a2871e0- Merkle path
["09f966ca4619f1477f3885f8f380e7acf0cb0e918a5bee1164a812d320368a17","45c1d6a905c6477f48cddd095c6fb317c488ff9c4febd72c09c034a8ea9b0988","f93389e52c66d094234ef5fd5c382812fbd3bac31da5f9942658a578eaaba00d","6d25c17c423ca4f04bbb7bf4bf0ca319bbf5831cb140c7d5e07ad20bc39258ee","458e0e2b928813567d74b685b55002fb557e2f38922cf8f17fddc9a4d2ba0ce2","f58e860a8aade1b84a1526219beb4437c44a6233e3ef4bf7735fc2280cbfa289","df7ba2f0aaec5c214b573e2cf904e5a61e6644006a336dd338ef3270af221003","adc799f85d173f5d52126a6563e31a6221aa38c466edb424215be55a9ca838f2","a905dd76d6e9a78a097a3980461d4d93be8a0dc1410d71da7fd589520611adcd","c03fcb76c2748b2224e05118f6b2eed89891021e96a35bb03d4dd3689831f839","341b3ea0d9b38d68ec772df9165156f87b1983bbc2fdf599e22662c790ce3047","0d9e6ee6936356ae6c967b3ce2cb0e42d3ff0d06b736c006024c56f32867114c","3eec96d57c7ea7d1841605fe068da41ba3bbf63a30709a21a9f81605afbbb44c"]- Anchored
- 2026-11-03
- Public log entry
-
search.sigstore.dev, log index 3667254458 · entry
108e9186e8c5677a5e6e… - Expected log hash
-
d86cb752bbe06d2c6cffdf81a425ce2e1f7c967ab490cd5b4543bc4a2cbcf526The log entry'sspec.data.hash.valuemust equal this value: the SHA-256 of the Merkle root string above. Recompute it yourself from the root to confirm. - Canonical record
{"dataset_version":"v1793702805047","kind":"published-quote","locale":"en","page":"brand:proton","quote":"lack of auto-connect/disconnect options","rating":1,"review_date":"2026-08-07","source":"Google Play","source_url":"https://play.google.com/store/apps/details?id=ch.protonvpn.android","v":1}
Verify in the public log
- Open the Rekor entry (pre-filled with this proof's log index).
-
In the entry, compare
spec.data.hash.valuewith the "Expected log hash" above: it is the SHA-256 of the Merkle root string (6198693610fc…), which ties this proof's root to the log entry. -
Decode
spec.signature.publicKey.contentfrom base64: it must equal Citatio's published key at /.well-known/citatio-signing.json. -
The entry's
integratedTimeis the independent timestamp: the root, and with it this quote, existed no later than that moment. - 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.