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.
“il y a un renouvellement automatique, alors assurez-vous que c'est bien ce que vous voulez.”
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 2514851395
Proof data
- Record hash (SHA-256)
34c65393b972d7a24b8ce784dd0ba0bb260c884e35449ab4a09c806bbe67ba6a- Signature (Ed25519, base64)
RjJrTiz36vM/SUa2zKFV23WZ1UOISuboa9lVxv5jlyabkjuJ/WnS/OkhRP/2Bii9P+TswrxuZwDT5zR9xuvQAA==- Merkle root
b6da35820db152d3d2c0cee337545e3489f0422a146fcc8c60737b1d3a3ef55c- Merkle path
["34c754a32b18faf3342b36b49906d74610e3d187177df4673f0d96f6238915ef","4b34e324d8f92c79666bde9867123ddc5e89a0269f26c60382b6fb1aec189f51","bec2f6d9d7d102b5fb7886f0ea0459a28da56c8899dbc671c0409f452c49c036","31ced0c9a06993958bb89e2fd0279dad818970224504c83c572bd564cfbf7a47","1d01b3c338018a23d92d50ae3070f3badf2528557ee84c62576ff1300a3babc8","5747a38c3862029294ada26e5ebdaf6e738df35a9bf23879a856ae074c820db2","dce48c5010b21f3e31d2505ddad206bad9637e78fe5501b66118907f2ddbd678","d96a028bad3ce641a8884c42231cdba083aeba1624809e338603d382f971ecd9","cd6ad2947eb4897b0adfcb7eb3abb07b66941de519c6c7f4fdde5f3028d1c408","d3567a40c8e72a8899ef43456a0cff93b123aae3b179d23a0a69ae26746afe98","01994c65568de78009db2a3253acb1b5ba087cb0cb6da3d5948fca3f560e14d8","06ebcf4f421280990aa40be72bace95a1c58897501e8472347512cbf61f3441a","1c4a3fbf336b1dbbe624a981829b71610e2551e155c099783fe5f318fcf85e8a","0e90fbed1cd619e0c2620a1f61162a7af0ed873785a7985f4469ef4721ad000f","c54d917d90cf6041da53ed8de4347323c6a7de99e787dde7349330851a57a3d5"]- Anchored
- 2026-08-19
- Public log entry
-
search.sigstore.dev, log index 2514851395 · entry
108e9186e8c5677a4f62… - Expected log hash
-
687a04ce8b1c63a953fd353f279012a3ef08c4ad12d885582b1b6ee85d05b900The 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":"v1787134378129","kind":"published-quote","locale":"fr","page":"theme:proton/billing/fr","quote":"il y a un renouvellement automatique, alors assurez-vous que c'est bien ce que vous voulez.","rating":4,"review_date":"2026-07-24","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 (b6da35820db1…), 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.