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.

“J'ai essayé de payer pour le VPN mais le paiement n'a pas abouti.”

Checks (re-run on this request)

Proof data

Record hash (SHA-256)
40ace59662991bea47416c698d56afe5d8ce81c3a1a31446b60c74820303f57e
Signature (Ed25519, base64)
+tj5p7Y7n/XQgMNKym3ytoTB45krziqbSI9J6T+O1rdE/r4clg0lpSDqILb6KHQGbX4F/TVwPORkmpd5d/51Bw==
Merkle root
3e1c67438f658ba7fd015e6979c1bfd82d90efb0848cecbd4d902d6b2ed171d3
Merkle path
["40aaa8346bc5ba7310f98ed55d83e620df9f3ac524659a506f1ceeec4081b233","831d4817bdab766b5f0127ecc0e43c93e68ded53e3ca44ba1530f9e3fad465b2","a87b953f3ec3a0fc4532e1db3324ed3ec7cca67a4f97f9d8f5fa2518df3b5b2f","4c14a82744eb77250dd0099a231486c075c188177027c9908aef59ae34458c5d","73f6a42e241f16473e103083704a678d92720efd3ce1315d0fe4ef13ac0eb6f0","a26063f5e68b9ee7ee885e17e8f57b550dbc712f99ed94cd82c8dfde5ea51416","ff0cfd1b65816cdf8cd38c986c23a363c3e56518a6f029d3f6d1457b057a6384","2d09d9d06344aa4e81a2d3552dd0aef56420160832216314be75a92eb3bc2d8c","10b80610f860e25260bbf5f9894beeb0a1a41f2ff246389108b13933df919d35","e96b63496738d0261efe13e4711e520e0635b7e1582268ee34636219ebb144ae","8b72a5560e34c5984358e87c78aaf69cfbbbbb302b746910aacb26ebe6fdcbc1","32a89cb659daeca401eb2f8787a55894fe50ab0398c530a5ab8c55ca4d41890a","dbfcb3d5021da50b8b4634be051dbf46681ebd2b647e213f1973335aec3749d8","0790a9ec23117ba3e0ba9a310290906a4f1d2b0055d4607b106ab21651087c1d","db72b82118c1e08b77018004fa72584377d6eccdc4c75ec19bef6a78273f75c9"]
Anchored
2026-08-20
Public log entry
search.sigstore.dev, log index 2524810465 · entry 108e9186e8c5677af074…
Expected log hash
129b219cb6155ac24569a579c61e8fc9cc2d89305732944b8849d5e719dfd073 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":"v1787193927339","kind":"published-quote","locale":"fr","page":"theme:proton/billing/fr","quote":"J'ai essayé de payer pour le VPN mais le paiement n'a pas abouti.","rating":1,"review_date":"2026-08-11","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 (3e1c67438f65…), 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.