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.

“je suis contraint de payer”

Checks (re-run on this request)

Proof data

Record hash (SHA-256)
fb7ebc61d68c9bd8bf86e30756ec8b6f0e2abfc6955ff320e0929f0da011c37e
Signature (Ed25519, base64)
ULQQysFgccJf3Y7d5O8qC5/Su/LumkyMZQIhQJvEjG3IbN0kYIIKhvYiUrpZFpFJUPzGH6caWPJmdJ2mKxluAg==
Merkle root
681242bb8cfa94d3b60cc06de1bbe3e5e124dc1675276b11df0aaabc9faee58c
Merkle path
["fb7d39679f99dd4317383b1d00b520e09ccfdfe585ace58ec0f5ee195ea9bd0e","b2f922facfc598527631bddab628f887768fca76553222c36af75037f0d2362f","db419fe6bb4ae31d2eb360dd5facb012647017d396e2ba48f0b56280eebc32aa","b28b27723db5d28f79244afcd1d0cf3b1520df540cacff29e57a48bcf890c79a","880a4822ba8a93d724c6df26b934a51440cbcb6f5c5d25c87a46beded5dcf89e","93f40856ec2157c4b384b618d7e3c5fa22233564b62be70a57fbb92bd8835cc4","b3d6c4622d3a47bafbef83de073e4d26b5c2e426faf06f52b3b8b1928de3dcb6","3abb3df1f1d4ce11263415c02e049cf4ba6315d075d136f9a82de9ddb479ded0","a8de74dff96493082c66076da18f778870805acc08ded2c754453264e6f51501","e054afc74577ca0aa5e7b52a63f4e70bd88a2709271dfe3ae5f3639376eb4006","339dae50e33d50aa0cd1dc447432aefad2a6e04bc149cea692cdd6f203acc133","0931601ab88b17ced10d210b73b69d45855330e2f7d04827af69758de2cb8cd3"]
Anchored
2026-08-21
Public log entry
search.sigstore.dev, log index 2542879916 · entry 108e9186e8c5677a2329…
Expected log hash
8337812f20bf1207a3c96eed87ab975d7e92ac1421dcded24507b32e456b788f 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":"v1787282728402","kind":"published-quote","locale":"fr","page":"brand:pdffiller","quote":"je suis contraint de payer","rating":1,"review_date":"2026-08-02","source":"Google Play","source_url":"https://play.google.com/store/apps/details?id=com.pdffiller","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 (681242bb8cfa…), 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.