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.

“Ne permet pas de choisir la connexion.”

Checks (re-run on this request)

Proof data

Record hash (SHA-256)
209c0c6b29c13f959c7c78642875092e2c01a9798e98095b77a632c880c16e9d
Signature (Ed25519, base64)
RStRh4uG86qFNA7kBmWwZNKKVZVk44G+H6uvSQoVAn6Zn7G5x835FhcWJENBuRZniLv5LQGFxKp23ddSjmW6Dg==
Merkle root
4354cafe0e2ee66c200238a4bfe005f997e761de26d9e528ed6c12dfe1b33129
Merkle path
["209574c75c6a707528722494eb2161e0cff17432f1fb50f50c5df0730d6925ac","427d858f032720768ac4c42b74fe7789c814f796f225ba076d38215b9dfbc80c","e6ee8796da5c27c38ce3a11f06149f4480b1578720eacf7ce02a76fe095b0879","fab4739493e041bfdb2f1b85ce0846b26e6b6f1d7950d345f5a77fa31bd46d43","e9ee2127e61fc2a744d3ca76627c547d983323e85480805bea85ff04aae5488a","2dcc0e329b61a261f6f7c7b133e62f92915ce0502f52813de95ce381b306e1f9","e056610a26e3227d2da7d3468d458e82088b488ca7a332a457bf96132c0fe272","4fc4bf66f8a25cdc05b5aec0e79be390761580ea66ede3235e9b461e9288b131","b0be9b3ed136cfb8376d4900252e799114d049579cf364c722108dd24a0ab632","5b6f2ab652d40df1fbc7fcda7dbf8efe20e65fc195c72f0709140d9a08902abe","f04cc554657be0f282f089f52cd6a42d5074ba0e606e947948eec98d9844621c","869ba1e02c7f135726cede3436d59eb3f03c068a6cf5eaeb3b2e5c84349ba2c4","8768f82f7b88a738540ba1a3e2c8c04be4a2e7d425276e7dd71d0f787a7200b2","34012874980befa2c4e79572fde2605e3883df8e5878fe4daaeaa8bcd10c4d2a","16ed4be9ece293c235c5510e2cd19a05055f034548e73c12f8a9947de7b32591"]
Anchored
2026-08-21
Public log entry
search.sigstore.dev, log index 2542443729 · entry 108e9186e8c5677aface…
Expected log hash
1f12c9d846c7a9fd8aeda84057eb4d8f639bf78886a62c6290a2a60cd48e0812 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":"v1787280389476","kind":"published-quote","locale":"fr","page":"theme:proton/quality/fr","quote":"Ne permet pas de choisir la connexion.","rating":3,"review_date":"2026-08-13","source":"Google Play","source_url":"https://play.google.com/store/apps/details?id=ch.protonvpn.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 (4354cafe0e2e…), 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.