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.
“VPN errors”
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 2683647879
Proof data
- Record hash (SHA-256)
0b4063460d64e2ba9c85f79c95a5af2cb1a1bc21b069b2639b5059e24922bb09- Signature (Ed25519, base64)
5C12c7N+fjMnufuR5Dm+GfSLB0vE1ZvtxQeCkAEayyPYgEloG43SEXcWKH94ti2X/VPhqZGYYX2/FsPZd6VyAQ==- Merkle root
2e3d871c1322192f29eecddde09b1d60f3198d79e780fa1195a664b4bd06a864- Merkle path
["0b406a97496a77eadc45bffcc0e7defcaa5328d79f2fb04c2108c43b94f5e454","d7e5c1e7aba3975d63b92054cc559d6acb9bc40262ec87c6d148cc143a7e0da8","a0c8a63c2d7ae70b8aa9901151412753187b13f83fb78ae156fab04f1b2a12c3","bf7b5de3c8dc86c0a3e8cd8d9537bf2e4962d7d1d6830a76ea7756158fb09bad","ca6ecfa4deb92bc7b39dbd723c723fb7d1642e8d8a89ced2a015ddb1f159cf99","310bcf4ebc0cf88f253ba93a2fce079f67780220bd402c40551d0dc6b68e3e52","19a12924f39637688992ad94fed635cd1dcc236e33256e042e39bcf2d347744f","f53b9d267b4068f91a034a31fc0264cb4be4999049d7a58ebac4d1e30cfe91bc","97ce57a210f5a7b8adb6a37b2244dc679d1d1ff2e6a03d20063bcf07f2285b91","84a5f9034371f848bc4f8dc7932f9889a40ae09baa7af83cf83c7c492f0b1074","73e711aba12263249c5dd5dc9acbde19c7e5a9d05149e66073655175eb84deda","0a3d33fc893d1918590ed750d53fc85f13e25e4f6ff7a207d21b4e073de50d53","2d5b9611d8c1e5387c2a259b0d33678f993a76db53de4243f9d133a0209868ec","628ede9e9b0730d1cc332c261be38ff7c8dd0481f36e9cb85c838852e27c80d4","8951511b8bccb72998a9f731e365024a5c886ecac866e59c397ec696591e8130"]- Anchored
- 2026-09-02
- Public log entry
-
search.sigstore.dev, log index 2683647879 · entry
108e9186e8c5677a3d9c… - Expected log hash
-
9b4e6e5ed792dc8e5468e146cdb00002a33cda5d0fe16d325e3fdc5cc54bfd3dThe 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":"v1788327458165","kind":"published-quote","locale":"fr","page":"brand:proton","quote":"VPN errors","rating":4,"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
- 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 (2e3d871c1322…), 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.