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.

“L'application Android est inutilisable pour bien trop de raisons pour être listées ici”

Checks (re-run on this request)

Proof data

Record hash (SHA-256)
0b3cef8dfe7cd5e8320dc860c06ce7e6b8a8ad0afc71d37968564379589fbeaf
Signature (Ed25519, base64)
2erqxbwqbo0GT3BBFOsrUXGeETw3c911v/9gFJIXvqhfHSsulG2BWLqB5CVy46XzvzGwQ4NMoGY3v2GL6lXFAg==
Merkle root
e6ac019704b226508e994cc0855a4d192d5ca56f36bf79e20dc9e3368a99cf1c
Merkle path
["0b4194946800cb0a116b3179c92e02a21767603ea053e341c95c58fba48efc99","a77afd5da4e29be9b528aa40cf61f5f82c7264a15133fd66d0a29ae991a44f9c","947750db864c648aa45b88f75410c0ba0f4dfc35c5ca861f183e31f84819e941","22b08b3b34c7bd190c3fcdb74ee90cd549205739f0d629bc3ee7f147efb7d2bc","0f70328306a38b3dd8bf543033ee73dc7083d7d232dcd90862f09c869745377a","4dc65f48812a13e01db2366e1e26aca8360c8ce1cb95fd94e97e0eb3107e29a2","0a84b67d11d5e10a214722fb058fa919276fc645595d7290d6908a31cebd479f","b35414874972e6b7c2e3fa57c5eeb568d2f7a91a09acd698c6bcc547c902d3cd","7f86487e6558657b32be0b5d50be242ac00917da539d493fb2209bb39488af2e","6651c9cffae29657c2783a52ad745af90d49949609c2047204d49c67f0076cfc","e6cc2e980815e5085e45d94597d214cb8a671eee8f8d8bc713278ad1394457d0","76aa14c6b140f882f5a6ca82e1bd3d30ada81e6f9ebf68b6cb689ed74e97d2de","af32e6ce7a9c3f92995c628e9a34041f7ca98856143c57e4fbb6f9b1d2e86f88","300daef4aa548e8c10fcf4706d8cd6c134a74d44a2fedd09c528770268883f87","55037d90ebc6f8ee5750b678c0269386792b0a1b293edb3e029a7c8e378291ff"]
Anchored
2026-08-29
Public log entry
search.sigstore.dev, log index 2631716425 · entry 108e9186e8c5677a0f4e…
Expected log hash
45ebfa784ea01d364c463997b417af34e35327c4187ff9e9782aece8c325deea 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":"v1787968874252","kind":"published-quote","locale":"fr","page":"brand:proton","quote":"L'application Android est inutilisable pour bien trop de raisons pour être listées ici","rating":1,"review_date":"2026-07-29","source":"Google Play","source_url":"https://play.google.com/store/apps/details?id=ch.protonmail.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 (e6ac019704b2…), 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.