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.
“It costs everyone time and annoyance”
Checks (re-run on this request)
- ✓ Signature — Ed25519 signature over the record hash, verified against the public key at /.well-known/citatio-signing.json
- ✓ Merkle inclusion — Leaf recomputed through the sibling path to the anchored root
- ✓ Public transparency log — Sigstore Rekor log index 3258490685
Proof data
- Record hash (SHA-256)
0db0f11f892b7cba331339f208fd7bf273cb4ff70d9c46e9e78bbaf578854561- Signature (Ed25519, base64)
ivorhJv760XW9TYNNl9/cILrvQkGK7Gs7CAreXa7BNzx1t4YuHxNjPyUAWg+kFozRAnD6hg2NCY8RXnAdze2AQ==- Merkle root
2824dde473714ae3dd30e88823a625346b1b80d9a55db059d813071b78952b5e- Merkle path
["0db584a3d3010ba82e3e308ec608a39fd06ead0b6085bd00bf898efd879353a8","d9c675821f82893d02feb158d230bc6f9274c55b2783e463da87f2e9af7e756e","98f8e63ddbde176e707254cb2580a5000da646c0fcb1be89091efd8303f0fa8c","3fe6baf48a719d0278e86b57012ff6ab3abb2f7db5ef3717152f4f8d9263199f","88f8c30aebd21480e5d0609b7dfbde6d5ecd3bf7320c1044962702d623a18f1b","59e4110d67fa505003b282f937a611f4cb10bceb6621ad48e8a3dcc55fb43332","c0719ebd1e740fdebfeef30c0d057181ec11fb189bd14c1bd3ab55067ff91775","0bf66e6c93d9bb56f70439cd8cf7d69a9732425c36eec5b8e97cff40c4e15647","165cf5a3620cbe519a976f4038dd65516c1cfd8e37ce173ab0df3648c8dbbf0c","ee376a3d1da4a9b5642fb7e77081dcc4d6f3b44113f5453222402925831abb74","40b10dcb6f645b499cf8ff88c4ed9ba8cd688f69e32f2cf16d4bf7619f215aeb","d6bbb08f9fb75532ce4c76d4d84bb93a214afb09f8a4465fc6b0ac552770a707","592828a30de1f38ebd3532fd0b7bb1288bdbe2c152bea05374fc6e7c174f1dc0","c0fc8298b38da3131f46ba94c60b50a7d3f5bfa16abd1c4c451dec4dd9f28f96"]- Anchored
- 2026-10-15
- Public log entry
-
search.sigstore.dev, log index 3258490685 · entry
108e9186e8c5677a9f14… - Expected log hash
-
adabd3d63ce5c0d8fcac6f6311f5b010ca6003db409229d5e92687bb33c3624fThe log entry'sspec.data.hash.valuemust equal this value: the SHA-256 of the Merkle root string above. Recompute it yourself from the root to confirm. - Canonical record
{"dataset_version":"v1792032587528","kind":"published-quote","locale":"en","page":"brand:surfshark","quote":"It costs everyone time and annoyance","rating":3,"review_date":"2026-09-05","source":"Google Play","source_url":"https://play.google.com/store/apps/details?id=com.surfshark.vpnclient.android","v":1}
Verify in the public log
- Open the Rekor entry (pre-filled with this proof's log index).
-
In the entry, compare
spec.data.hash.valuewith the "Expected log hash" above: it is the SHA-256 of the Merkle root string (2824dde47371…), which ties this proof's root to the log entry. -
Decode
spec.signature.publicKey.contentfrom base64: it must equal Citatio's published key at /.well-known/citatio-signing.json. -
The entry's
integratedTimeis the independent timestamp: the root, and with it this quote, existed no later than that moment. - 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.