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.

“Quelle expérience désastreuse !”

Checks (re-run on this request)

Proof data

Record hash (SHA-256)
09e56fb5809e805cb7d4fa4affe18318913fc87c010141b907cde54ea8b72568
Signature (Ed25519, base64)
+GFWmQM5GR0Uu3D0g3ZPaImlr978LP4wLK+wZ4vDnE5ChZJ91075zdOTJm20bc2T5hER3HHpdiJ9N+LRO8fADg==
Merkle root
25b46ff2419988f674720a0d9957bbe6130bde21af352d10a6eb7fa1bd87b90b
Merkle path
["09e584335e01b35a69f8d4216f9c98eb1f231af579ee8051bddb8e14dd943161","5c4437aa075ef748cc6376c602a6e035557de0be64d7668a9debfb44f5275058","e0f42b4285e3524fb437a93f1cf1db0f8c890aecdae54d723ee4fc1fce58bdca","7d4b69c90a79b1a3119cdde97bb34cbdea4b829bb93a692ca06f044fe190aebb","ee2673a497709ceb8227ae4c1b77e58f1e1b9476f4761f25823d37382706f496","a384978aa4c97f5b324be08cd768780bc50b188b7e9d6ea5b39c610b4aff47aa","f3f913502e9480714c89b1a798119ccfccddaa72af1d05b5d80b3070fab0d582","e8a9fa29e8929f65c8ba2865ec07dda6f9bb184661055e09c5a6e2f91e915c0b","324fce67ab65d97315b309f6789da90b4db8636147ec6e9a6bf8aa99635f107c","c19189a431a7b371b6339eb7b517a53802a523afa34aabacaca8753202be2273","baa0c9213423314c30b237e349ae1eb055a5a2a2703a8577e571b0031084fee5","a164ca95d37c66c485497740b3dd1b0f6d28a07a484c54c912e7c5e25c0c1d11","6a6f9d49462185c4ee2e85df13dc5c42a5069efd64c620310ba383253f8c37c5","5d4fccfce6f7964a21f73dab907adaf1b4bab75dc36256f7e7c2fc9e80b93292","dd8f1dac20e6d5f290eec3d4a0a2acb8f82d36d90a7d470d163b0eb872b09e9e"]
Anchored
2026-08-28
Public log entry
search.sigstore.dev, log index 2621712605 · entry 108e9186e8c5677af8cf…
Expected log hash
e2d66cf3e23cbd8a996b6d44d305e387793b999542b5186c00c4ffbadc30715c 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":"v1787891207850","kind":"published-quote","locale":"fr","page":"product:proton/proton-vpn/fr","quote":"Quelle expérience désastreuse !","rating":5,"review_date":"2026-08-14","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 (25b46ff24199…), 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.