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 a les mots de passe mais ne les remplit pas automatiquement”

Checks (re-run on this request)

Proof data

Record hash (SHA-256)
2b7b7f02247488ca8d471d79664c11535c165483d83423b012c143a1e17b34a8
Signature (Ed25519, base64)
Lylw169N46dASYgd+2n8fim3Hw/KiSVljV9OvcfVNCyc3zoooG4ygljD/8d4+HiC2NFKDlsDNaAL0r1KF/1hCA==
Merkle root
7252afe559009950531df937e7edc9bd1c57cf28a24ed7f6c6613b65f459eae4
Merkle path
["2b793e3aa4441b11d52180bc0dd1d26800f7e216cdf3994aacd1ce5048952c01","997bd4575b7521651281a8593725867b3691bd6bbba3d5f536bbb93879ae9c82","937c30e2eb6bd6ef0bd6ede669281632f840b7e59aaeabbadb6d664867353847","b60c5c43e62cf34aed7930831a936309d6ad3c82bdd88a9f951c0f6327e0b20a","ca2efc6dd596b77b72e21a8cde2e5070c62c4ea52d057199ac05f289223826d2","f5c0db7b5f910ab15b4fd0ab24a22a8465572792f994a5124ed8bb4dcfeb7b7e","dcdfe3c5eba27caabc60b662208bd9a7c993a04721f907fecb39e506899c8df1","16fe932dcbfcb5acaaab4530f5eea3c88da0a3664b4625f7232ca9882d66bd9f","43098f84160b8f5ce3ade3ee838a0fa54a9dfea4ef15f0fb254461cbba58298f","eee8b6b4fc3fc203ba370c0419884413b8dbabb521dfc67fd0162766e5a2cad6","afba62dc4256d752b956627617d4badc84c81b9ad432d1d93afb382b51ac1081","67de801f1bc1ce81ca75edb69bd246d9038267c0b62d867a6dd1be9afc2acf7f","5b655ce1c6b3a6040c73fe70cee1f73a87a67aa56ed97040e7fd88f9c78d3e1e","6ca0e672260f8a36160629905eaed49c49821fe80001f9ea932f048c0563803c","b3900b15a2a9b7aa805b691ce86e29db39e03d547238a84a3c0fff4fc2daa54a"]
Anchored
2026-08-21
Public log entry
search.sigstore.dev, log index 2543383844 · entry 108e9186e8c5677a6025…
Expected log hash
65212d488cd7bdd0d67aebdd70bfc57f4b622fa08b8179427635d69eb7ec385b 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":"v1787285599851","kind":"published-quote","locale":"fr","page":"product:proton/proton-pass/fr","quote":"il a les mots de passe mais ne les remplit pas automatiquement","rating":1,"review_date":"2026-08-06","source":"Google Play","source_url":"https://play.google.com/store/apps/details?id=proton.android.pass","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 (7252afe55900…), 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.