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.

“trying to organize photos becomes an agonizing process”

Checks (re-run on this request)

Proof data

Record hash (SHA-256)
08f4ad87fa081f68c521b0584918669c321f9c18a637e92f8318ff53100d9c82
Signature (Ed25519, base64)
FcAkc5Od/7kdwYYwqdOhy0UjIMHGjpb9YCdQuEtDo5BeWdybxOhOnOZRdmR2X+jFZUg8818GG/eg1UGTYPgRDA==
Merkle root
beebb1e90fe7e67e33cbec0f03b99eb76d51091b0320624790586a3cdacfd28a
Merkle path
["08f4f74bc5c263b0d7b174c7762249d44686411e762211e3162c9cb76eba3fc9","c9727f90a79f9433d4c4a4df76457b446a63072ee1f2420bdee5e26970c05914","d66b4aa2c25d4adca4c14fb8e4a712cb8dcce35e5979d87df0a1bb393eebaea0","4eb56cd0358a31c10b3c85d36b30b3095a0b8644316e269b7be7396139f4e932","cff8189351198f1a00edd58b7f293ca1c481bf16ac109bfb86d10d99fc9813d4","b13cd9677e262f704d01c396fff772de10047714823998a454533838f5651ae8","85be1ae6ebeade1c303c1437f7896560d5ae075d6ee644731cf1d57a07275d41","93f1ac9cfbc032fdaf7094f5edc069b63819682033631eed22925718e356c97b","4401fc52fab05c80fa574969038bcbc858b7a46487c8f7b08a57aa8b02f76291","aabdd3cefe6be094cdc384151b18b0a400c0117434bf84c612d21ae141ab060a","be1d18f82847cc6f394066f4034b382d5d773f28b4ab8ca255e07c10bad150a0","73b6c01d202cade9897c4cde5230278699ef70c2f92ebdf509b47e3fb229b784","19513067f8bed92dd7049fed420106f7c62159c37086a1108cbdae0ca7dc379b","8e83ff51c482865a520be89d3588d4953cd4ef6526700cb062f0cfe87ac941c4","59e1d7599efc1b651191f22a2d0a899f2a3b0ab0131905b8aa9a10b3a6f59e7d"]
Anchored
2026-09-01
Public log entry
search.sigstore.dev, log index 2671517691 · entry 108e9186e8c5677ae4c6…
Expected log hash
207971f16b8b3b4c1e6f63e8e9291188fb84b37111ae3e0c78101499642ca382 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":"v1788236415966","kind":"published-quote","locale":"en","page":"theme:proton/ordering/en","quote":"trying to organize photos becomes an agonizing process","rating":2,"review_date":"2026-08-12","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 (beebb1e90fe7…), 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.