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.
“I can't use the app for my work now”
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 3248278454
Proof data
- Record hash (SHA-256)
1c27bd9ae21a2b705a2277bc1a3872b33947baacb93f4754f57a9c61ba98e602- Signature (Ed25519, base64)
/RAgiAiatgAILUtrl4e9gRwxAtC03xgN/dHywvt7nCEHT3ey9WdGmLsE/Zl8+h4VmbpDYACwOoYI/vWjRNHDCw==- Merkle root
81db1abd6b6e636da393518bb64e907fa9c48581b44ac2be5a9e74d02608e451- Merkle path
["1c21f9253a25c8fdb0c5563f546cbcb7bcfccc8dae4f4cf990d0a808d4ca23e7","31bba815e389f2199ee42416e441a5f0f136af0c8370357461e9356af9438139","8e24e8e5d4eff582b3f4c7fc007646f9e9aaf0debdbead2a6e36029151aca21c","81592a929280e843df6775966e3a5c910ac8a3878916ce2a6784b4c4a326d0d5","35a3889812ffea66c94a81c7f4e5e0755efc8a375ffd3db28ef912c0e1e09247","46254a101004b10d4890b30b2b7c321e32e522bd344393d622a3ffd6503e275d","16b4846e655770208138667a9c7563875c6b3ed79870e1170c01912f4becc699","93aa67dee27f3312a9884a2520bdfffe30d803e6d136c4a6af467d79c5c181df","16dc6cc1cffb97b8761419de342feed8300d01975ca4bac20a0e16c428ba681c","7555ca7755ce0977aa97344e9edea28c77141a78774910cf9dd1ec7f5be52ddf","f0d849fe2b2b2e8ac46eb31ce8ef0940645609e0ab080116168fd866668ba7ee","0f8ab31a8b7f9aa6ba4ff019c72fbe9792e5837d40b3bad40ea1cfb0cc79e40a","4fd1b36929337d346b3723be273df6d7588bc7b080f058260d538b3f309857bd","6fa310e475466f0115dd6b7ba199f23e915f2a513e2610274356ac5bd367e940"]- Anchored
- 2026-10-14
- Public log entry
-
search.sigstore.dev, log index 3248278454 · entry
108e9186e8c5677af67c… - Expected log hash
-
4dfbbd25ce402c4821f7e2d50b18e091e9a30465f45669967c545fb71910f358The 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":"v1791948368672","kind":"published-quote","locale":"en","page":"brand:xodo","quote":"I can't use the app for my work now","rating":4,"review_date":"2026-08-10","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 (81db1abd6b6e…), 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.