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.

“Very good privacy”

Checks (re-run on this request)

Proof data

Record hash (SHA-256)
09f6c5806a6203c119a8df3419b42a5291f487f0e8a4cfa63206569e9fa8434f
Signature (Ed25519, base64)
pF8RXtFbh4z4jUltB4KUUHJO2gD9oc9hO98TThI0cTvcgp+xVpniqlsZtxLBQUZQzEGxzk7y60AalQOjfYCqCQ==
Merkle root
3e1c67438f658ba7fd015e6979c1bfd82d90efb0848cecbd4d902d6b2ed171d3
Merkle path
["09f809b860dcd43162dc1a2a0dc0bcbf9e25378de483b88519870ec128fd67b1","cf654f11601e5848750bd462f020e1892f683f2b84957ddc0092c06856568939","e93c441d8ea6a194e05b8cd8ffafb3fe30763078924d317ba7e1faa2564a96d5","f3a78db4eb35ccd7566686f9091e467779f93514b133afe11311fb8c6c31493d","3921e37900a5d89cdd49f3983b6f9ed6068f441d591e7cb0982a709de93a6cbd","fd8b17d895cf59364eef67cb44d56e3a29a9a4f5cb2e95d9b46a56a5034a36c6","0b06f472849eb8b6698484a4778fdfe58a8f3587ec66f9d33f8b7df874cf2c40","e3da12725f546289139bec1eae884079473478e8b4a3c7a32823ce668c52f123","3eb7b3ed5b9bddc33fda4c28fdbce11c2df14d266fd76f1f30a1a5bbaa3625cb","21bfd967beebef549712bdd5934300fc0ac86addf90f1223764607fd47af5806","aacadc64e7d7887ff88699bc333daff48d46b4e6179a20d2f7632f1b62733181","a84f19b73d0745b184029b69cf9f25565f40d942048a82955efda21766296b26","fb183b6f6365289d9e03a04ab6a5ee3d62de93cb7a6ce2bfeccdcb2ed00acf48","0790a9ec23117ba3e0ba9a310290906a4f1d2b0055d4607b106ab21651087c1d","db72b82118c1e08b77018004fa72584377d6eccdc4c75ec19bef6a78273f75c9"]
Anchored
2026-08-20
Public log entry
search.sigstore.dev, log index 2524810465 · entry 108e9186e8c5677af074…
Expected log hash
129b219cb6155ac24569a579c61e8fc9cc2d89305732944b8849d5e719dfd073 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":"v1787193927339","kind":"published-quote","locale":"en","page":"product:proton/proton-drive/en","quote":"Very good privacy","rating":5,"review_date":"2026-08-05","source":"Google Play","source_url":"https://play.google.com/store/apps/details?id=me.proton.android.drive","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 (3e1c67438f65…), 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.