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)
0805335e72de5232eae6d1a38eba861f36ed4db42e55fb1af40965f9e451559d
Signature (Ed25519, base64)
D3XhJhiZCT2wTJ7QQHyjYn/ed1kyvdj4zhUrPhvmKvXxkzpb/SF0/usPo/+ddFwBfAOQCN/79yA2t0/dTxTqCw==
Merkle root
96fbff9333062c6f240ebc674c358d11c91e32417964c7b74e7a085ad09b3148
Merkle path
["08093e3fee0dc982eb38648f3177eecd19cb9410531bd77c8f62a3bdb145bcc8","8b5f74ae1549229e1c10cc0d5e82e102152821ece989a8eccd9d0f32c5f37ec0","08018623148991ce84da8dab35d7a043b6fa784c39f22febb728a919a7ee9f5f","af1602f43d8f0b8301d81e277f11ad84f3608404e2615cf2137ef468b8e0a86e","2a30e72abe90e2e5330ec255595028057f40c9ec2114bc7c6f6d03024041235a","347c610e5061bec5b967ac7b709ea05f8625285523cb17c22ef69f42173ffd72","1910bd5fe53e30c167dcbf249495095bb9a5f657e13e1193e5fd3370210c587c","d7c726bdaa662669d0f3365931a9e3afca505c2d957ac72dfd85e40b20e490fd","b1454a7a56821e278df607d10064568e77f849df1b180c8772b6f8be98ad4b93","ebae1d59b203c7e7be7108a103e45c0dca654653d61aa95015f17e44271ebbf3","cbabb4f88d5d161601f36440a16813353b1cfbd132287ce15dacfb167930dd08","94f788ee88a3a5d0527e939fc2fb4326b3a860536a5801cfffd8d3c9817768c3","79a4550b200fde9b3a943415990b5226f73c8c365540528c8ac5ff0f8d838204","392c4ff19a61c37ccb09c095c4cdb0c4164ec867c437a8e3033cfe3fe2edd46f","60ceee9d6856471604c29353be774f78386c382c47f03b784bbb0ee7fd843f1c"]
Anchored
2026-09-02
Public log entry
search.sigstore.dev, log index 2685152720 · entry 108e9186e8c5677adce2…
Expected log hash
b48044e152c7f9f6bdada08baa42518b66cab68608ac945b90bbbe4a8f1ed0a5 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":"v1788347082424","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 (96fbff933306…), 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.