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.

“hardly any setup required”

Checks (re-run on this request)

Proof data

Record hash (SHA-256)
0c30923b2fa6119b8a033c87450512afc5bebe009c51749efdedbd348fb9eda0
Signature (Ed25519, base64)
7Z9lWs+0iZmLnzlSvLRV2Hfhuz8OCpy1emixDOw3UadLYccN+rkFCgsGKAGa8RShmtQK/Lo19DeoWX2ISKcBCg==
Merkle root
d9909e7ff193b610d96d9930fa8111baf2fdaa08b732478b03ded2b9e1e52914
Merkle path
["0c341c6c98233d18a0df2a55758bb9325df8c909b424381bc247b631ff31f637","6a4624f2189fa2e3b5f51cb80d4fc271d44789c0b7e071c3515d386c5186ec7c","f27160ec2d5909ba75c09e9a7a7a8b32ce08e3bc746b81c63538365fc99a5027","d5dcb8313d7753e7bda162cf66824b748431684ae25b1c7dfdbbccf25eb6e5f1","903bd8b567b2f37b1f21a5fd7066c20a4ab4d6cd9d2e435abd2faf53f9786b12","5a64a35e96757c1fb602878c4ed24c0b8771bede355dac6919f547518f90027d","dfebb4037b6e79199d429d8d48a5e7b084e816297c9a34fad17db34be6d486c8","570422385ff003fbfcbaab3276b14e4fea28ac79371b74074a61f9a4447c69c9","30314892f361118a92c17e6fae2ad15786a48262bd4ab8f4db59921939fbb30d","1a03e253f4a2725ad5425cbd209eaef650704423b0ad090ab12072b8a353212b","23bacc8063136eee0538c5fca4900d614216b82643459191e73bcae8b27251b2","d0c545501ec6b40886bbd7f01a63b389d170722a1f58d9eb61157cf85e3ef9bf","717fc4742794be36cf72805fd12ab627b31b870eb5c244ddb55c2504c3c85510","c8967a31c6292f2cfc7ed9c390f7083b1880ea886157cf89b881616d7130d93d","2aa33c224957c89d7d414cc43142ae7c4368efde4f1a1b6051ee910ab17bf997"]
Anchored
2026-08-19
Public log entry
search.sigstore.dev, log index 2515095234 · entry 108e9186e8c5677a299c…
Expected log hash
6f0abb2e15f57da153d99eb9fe756fd2540bcac51fcddbf7ac60c4be3cfb5f7f 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":"v1787136684512","kind":"published-quote","locale":"en","page":"subtheme:proton/ordering/setup-configuration/en","quote":"hardly any setup required","rating":5,"review_date":"2026-08-13","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 (d9909e7ff193…), 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.