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.
“You need to go online to update app”
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)
2afb15cdf2015d9b0f611c2da8d9c45aeab0a45d307af2fb8d3f86337662204e- Signature (Ed25519, base64)
yPa2nFJAKAF2YhvGR5MEt6PQnnmImAgilsIjGfajx4vFqEtz4mAwBRlGV4fc1bF0z/ZbsXJXDcPSvYDSfV/eDA==- Merkle root
2824dde473714ae3dd30e88823a625346b1b80d9a55db059d813071b78952b5e- Merkle path
["2afc59b340c208e79075f49f6c8df7461fb264c0211904a5a8fc06570d4ef8a6","f64ce076da0c7151e29e22fa3c2649685c3cec6fab8d00be78e006b6b5db6eaa","d59765b913b29608991800929d3cf437f96799d375b36c558aeb0504063c639d","d44584d470cd6ebe7de7c168de43afb0ea39c47b1f2328943455805824259dd2","047b7dcfa49b3b9102e8d00041d78a2dd70310a71a8aae3b340f1ed7919c95df","42f790771db65f07bf2b57a41c6ec6a952f2132ec5d244d173ea8e165c4572b1","d150762e851cb1ef006924615d736492ab5fdc380689c2811744b3f3e09998f6","5bb6c7a883f50d386b9c8c853211229b1868350ba5007f798fcb518148eb0280","43e0ca2413eccc85f848e00f9210f981fdaf1e8ba6e6521295381e22061f9ba4","aa84ef034ecd12623dc48199d0c401471046d41ca264040bfa3f5b86a681fc9c","716952c4b3f4d5eaac217f109209b5193e771e846b39200d2f4f443482f463a3","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:expressvpn","quote":"You need to go online to update app","rating":1,"review_date":"2026-08-29","source":"Apple App Store","source_url":"https://apps.apple.com/ca/app/id886492891?see-all=reviews","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.