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.

“Le scanner QR ne fonctionne pas.”

Checks (re-run on this request)

Proof data

Record hash (SHA-256)
087ee8ed55ca492d0c4c77a34ee603ce4ed361c120b9bd7b47ea4252883cf464
Signature (Ed25519, base64)
8f9P7s0wEK9Xq8f5labMnLQ5XFhUwXPSTTcf6VKqHHX9pYCtfolnCM6k+dhvLPhaok4vpVYS/OuekJeE7/RfBg==
Merkle root
f38f8904a05de694c6e6e57f469170363c186b63988b16538157b391550377da
Merkle path
["088009f574d65695d658791c4c9175df80167781929229cabb97921c4f1dd74d","c149608dc7a665ba52498ebbaf25db7a6bc8ef29857487dd32d3276587cda531","4b63076ae0c3712e48251de1eff197cb88988488f19f4eceb2b81beb37390c54","4e527230368b08243f8331a50dc6c0fd7ed89598149fd8166b9d1b9476bda8a0","0b505c1fc0abfcea89da5d2ba9e5e9df0b80b60f786cb17148a87e30f42045b6","e110edefe93dee42a32a340e868a7880abbe307f5b9f829dc93b016e97e00930","081000d0744b28f6356c0cd714d50f202025cd48775c042d7fd3c8c3440cf26c","5193c0ab8c0cf7dc95d326378f785e931dedeb61fdf795ee440ec7ef325d9c24","c2b6fb97705ccf1c2534bb91cd2fce8c3b28ef2a6589ebeaf946c2bc680926a7","2f425d2efb9a139ad71cc84311b1e29ba28793fd80c659d43fb04a1d8903eb62","e27e1e3535b015fc5077ae55cdfaf52d9c459320cf12b186e1779ad387add63b","b7e823da7d6ee89998200b8ed35eae781a25b00437aa2fcb75142fe4ddcf22ea","2bf000c88cc8431b1bce6508e73d514bc43a6cd24b2ba59433542ef8888cc163","e4533dce2749228d7790c4470ecae8703c042944bcd79d1df522a76c8f3470c4","363506105d168854fe4696d63de08b4a6d73b966d2ba65fdb1b6dbae6e92d22f"]
Anchored
2026-08-27
Public log entry
search.sigstore.dev, log index 2612284956 · entry 108e9186e8c5677a3e36…
Expected log hash
d95595121700c1f4a1721dd1280bdc6970a7fa601baed76ffaca595721fac7d0 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":"v1787798682688","kind":"published-quote","locale":"fr","page":"product:proton/proton-authenticator/fr","quote":"Le scanner QR ne fonctionne pas.","rating":1,"review_date":"2026-07-11","source":"Google Play","source_url":"https://play.google.com/store/apps/details?id=proton.android.authenticator","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 (f38f8904a05d…), 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.