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 peut-être une raison pour laquelle ce n'est pas le cas, mais cela n'a aucun sens pour moi.”

Checks (re-run on this request)

Proof data

Record hash (SHA-256)
07f8430f0be6da3e4c3c15f71361c4a225be47f1da39972fba4064448c475613
Signature (Ed25519, base64)
6N8/MQUMYC7cIc7hcMK+DjvPiHYj1WPcMEWnIkP0Bu1JWtLxbVP8rffu/rhD+t1kblgmIQPYjy/CZR9o+gM2AA==
Merkle root
d9909e7ff193b610d96d9930fa8111baf2fdaa08b732478b03ded2b9e1e52914
Merkle path
["07f8ca09a204ee1e91a5491c81acd13e4606514480f9846e88d36c1dafc59115","8b0400b966d1234f611fb21c8b32f25006cd51f066b97e9b1aca6f57d8e7d744","0a9d532863afed9cd50398b44e6db3994d95d98ee12e81d80467a8718265e04c","1b0273665e62697dd8ae8c178084aa73014394a3feedd2a21692701734dede95","255ed86cd0e1f1a101efecea54fc2644c505a789c5c10c3186ec4ed14d663f73","1044be89e69a77b8c16dcb8f6749d7236159aaa8ad5052da686128452d48f7c6","2c82f93e575c3033517148b669fd06f6278621ec7d4d28f125ec7981a5f745d7","6a80e35c192462186ccaebd1cefc9598902334be180a08fdbdaa71eeabaffdf7","a269bcf63dc528c564db1147a6458c64b2f162ebb46b6670d352852e27e590e6","a50e2c0ef16d37fb37879fcb4e8467072e3228347f7e39c1dc9ffd1ca8460642","6dc4788b7bfa91d0a3acacb71f48e44e367fe199cd81119c5bda79c28e8ab3f1","d0c545501ec6b40886bbd7f01a63b389d170722a1f58d9eb61157cf85e3ef9bf","717fc4742794be36cf72805fd12ab627b31b870eb5c244ddb55c2504c3c85510","c8967a31c6292f2cfc7ed9c390f7083b1880ea886157cf89b881616d7130d93d","2aa33c224957c89d7d414cc43142ae7c4368efde4f1a1b6051ee910ab17bf997"]
Anchored
2026-08-19
Public log entry
search.sigstore.dev, log index 2515095234 · entry 108e9186e8c5677a299c…
Expected log hash
6f0abb2e15f57da153d99eb9fe756fd2540bcac51fcddbf7ac60c4be3cfb5f7f 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":"v1787136684512","kind":"published-quote","locale":"fr","page":"product:proton/proton-calendar/fr","quote":"Il y a peut-être une raison pour laquelle ce n'est pas le cas, mais cela n'a aucun sens pour moi.","rating":5,"review_date":"2026-08-13","source":"Google Play","source_url":"https://play.google.com/store/apps/details?id=me.proton.android.calendar","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 (d9909e7ff193…), 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.