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.
“xodo was working better when it was free”
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 3241084060
Proof data
- Record hash (SHA-256)
19dae72392c3c8c812b1836835c2fa9438f373ee3be007fbe411cd1c42c3a830- Signature (Ed25519, base64)
19jpQzEcmOz0fl5Slb58jVPFVYhVZTn0+Mo35ZPtsTUyilX4TkHKmWi3PLpXMvRO+HYBgVXgf42+atskbNP5Bg==- Merkle root
0b0c0499033d3f9b3953d31e6c838f88f12988dba810dd4de44922e1b60fcdf6- Merkle path
["19e2299bc730249f458a114b02c0458d4fd7b428ebe48ce40497c92980cd224d","5f36e9dcdb872e10bbc2d199761ad4f64ee4b16b596086dfb74442d886983e28","874e276875d66337e3508674cc53f0fefe359c5dab1383e1c22d60cb2373d553","8f61a26dbc90e5b4005d922b126316008acc43520a84da3187b874f7533a5e50","a513a3b67714d61cbf7cb330aa3ab24ee98c9fbf6df71ac7d2d2abbd4001a505","dcd68c45c1de99995354b80c08bd65c98ed8df85e849c161d2bab89c4c6ccef6","d480d44562fbdb656709408dc0257336972b2ce6e607e76d18bfa5121506948d","d12d4615d5cd3840b1fb16c6d9209b1d1793bfda2c0bae49f2faf4990706fcc4","0b1fa50384e01bb94bc1df49e21512b1c7f48fdce160c205e471be24b501b6e5","ef1d89253fc65afadac230062761b4cb25b111a12d29d09a6773aafa6c6725b4","97bb581f373ac1585fd287a96ec92f37e16a17e7e09f4b197ef739b8fa5c9cc2","fd4caa7c5bda5b821309f24a41bde8275c1fa51be2629af50c760cc53c258d5e","fe7751fa4b9a0ad43fe0710628b6cb1b92e12eb8a60d9f17eb0c0764d693577a","8a05b9e19287b30c7fb54816a1fb848939f3f2c84b9825f19f342683d5db13aa"]- Anchored
- 2026-10-13
- Public log entry
-
search.sigstore.dev, log index 3241084060 · entry
108e9186e8c5677a3e82… - Expected log hash
-
a291e2473f1a4510a666e020d4d424e463d55bf4677b91eb5a52e446e5ff1581The 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":"v1791865115768","kind":"published-quote","locale":"en","page":"brand:xodo","quote":"xodo was working better when it was free","rating":1,"review_date":"2026-06-05","source":"Google Play","source_url":"https://play.google.com/store/apps/details?id=com.xodo.pdf.reader","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 (0b0c0499033d…), 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.