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.

“Mieux que Google Authenticator”

Checks (re-run on this request)

Proof data

Record hash (SHA-256)
0731bb84daab6d0a3b79c8d54dd9eb0e2dcf1cc20196fbdf80f1594d2f7b90a2
Signature (Ed25519, base64)
7oZRcenUpZDCeoeC76Vy0l6ykv/SbAb21Cw8MpOrEyHYupf19ZwTOks0L3cY2na0kQSLXRbvhqLK8Sjh1BRvAA==
Merkle root
eee462924587f8024361bc8d60043805cf5210f8bd2ef7667df06d093552f9e6
Merkle path
["0733b31b05e3b69135af172e435a95122a9c898e133dad5afb349c4205d46704","fadcddf877fd97b036d097e89f40744894046aab2280b117aa567398b16eb12c","a520b37f49cef0af90bc790ae1063575c6d58fec76547f6d53284169264d3661","2a70f147ecd2f8ee77a7d4156dfa7289474e99be18b397cca549a0126d6fa22b","f30d7372643b3e60b919a0f674f4f83f44e37ca2346e699b5212ad2d44128bbf","2172c1134e4ad914f3f547ecc84b23ec4e2a066e90be3a3cbb5b31cbdfa5cd19","50ecfd3a18705166aa92c38a275b8dd387680cff47f5bd607752b30ff49a931b","514b3dc3df3b8a8722d9c5622e814f68de14729632239373ef2a493278fce3bf","8ab4ae04df72592a9821464c15ec55de2d34ef9c499a6a072740d22186d1ba29","60d7b3341ad517458f361843bf5f20677587a9bfe605d627acda5f2f4788680a","ce5bfcf324b9314a59d413c765341b50971426d3ef6ecaba0e4b20b7996d48e2","9a818f1045e037b5c81556d7f6ec6165a24143565f78e16f2e84828d0670eecc","2671ebca141255a0c11a3bc51354d8cd008634f7e59a58a3f3f9dc756141bb9c","a445a39a48770a8fbc5d87a405ed660d401fa810eac6fbd1d284a96f8c7d5503","452f4fcbca19997a15e6a6869c50e026ff02cb90a6ef21da106ee0457e55941a"]
Anchored
2026-10-10
Public log entry
search.sigstore.dev, log index 3178600936 · entry 108e9186e8c5677a6a91…
Expected log hash
f3dccf508afcb5e89d56dabc8c5aead85de215b1b896d057d463ea1c1bdb13a3 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":"v1791606586319","kind":"published-quote","locale":"fr","page":"product:proton/proton-authenticator/fr","quote":"Mieux que Google Authenticator","rating":5,"review_date":"2026-08-05","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 (eee462924587…), 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.