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.
“Add Port Forwarding System”
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 3247957099
Proof data
- Record hash (SHA-256)
1e38ba1ede5c0b781d653d66464bf3d9d04b680b2c74aa316afa2cd40c77aea1- Signature (Ed25519, base64)
qTp1nyfcGvoGrJEcx1Ord5DihYxtgweiU1CDtpNvXq0z5SwTLtyr5j4hss9VWisqXeAUrY2dNU01ePf9QgJXBg==- Merkle root
417e79c5636392fe3ad064f685f70971e5d532c1ab257f052022be5e8b8c0dd5- Merkle path
["1e3c5b946ad3e3111334902ef11f12cdfac71bc69927f52c21143a93f49473f1","aff71817ccc3feba6d17b11a51b81bd8dec3b9d7de33cf7452d69e848fbbc9c7","4e749bfef3faf0fede8f0a9536b568850702df451e83b5d39ee7c5164aad8cca","c3bc79ff29294b445cad87670cc6df56af2c198850c49caa1c6137f8ce5f9268","17051b6f44a2ebbda6d43f88135bb49951e5a5356447f2644f980973202d2c17","9053e141e62f28f4031414c386e11598a6369838d216f920f42318faae8263d9","21ef9f428a0ce6d20fd5b3df7a733d2671880069d8e859d4096273a776d74771","cf085e532857cd23773d031330b9789c4d9fa5dd3921dbc34c3a948f1ff369dc","fcd69eb5ca013b875a865b31ad4bfea91e741b189ad1aed1f33bfff62afc27ed","2c09649366d975a8fd60ee4dcc1042b17cbf320efb3b41bbf6505e6c17e5746a","03012541f578e97559a1a490db3238dbcc3b9520ab1945d5807bcb1b6c6ebd9e","97cb88af2d1e7978a1c013f49971981dfc6f6640d100770066cc14dab4231824","a3445df7b332a2879d9dfcbad4af79652a13ea138d6afeb81448d347f1f2d128","57e0ae13344994ee6a0ba58ca5aa3276e7427d3c63abccf6f53bc322580decdf"]- Anchored
- 2026-10-14
- Public log entry
-
search.sigstore.dev, log index 3247957099 · entry
108e9186e8c5677aa2a1… - Expected log hash
-
86fba1d35010991e0e45c044558780825516b744aa3dd43e559455260fbef42dThe 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":"v1791946591199","kind":"published-quote","locale":"en","page":"brand:expressvpn","quote":"Add Port Forwarding System","rating":4,"review_date":"2026-08-30","source":"Trustpilot","source_url":"https://www.trustpilot.com/reviews/6a9457b7baf5d84bbd1e0bb6","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 (417e79c56363…), 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.