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.

“good, continue to make it free for the most features”

Checks (re-run on this request)

Proof data

Record hash (SHA-256)
165b527431a03c3ca29be7d5c1d4abb31f0caf66b7df7ef851d6e4bdf6a8570f
Signature (Ed25519, base64)
Xz4YkzZhhqC+ZRIvm7KXx4Ww6v7ansQYi3r/zl49KiPFkppBGCSUYWnirGAg8vpB9IIRuy/ZYWMoaULnmV/tBQ==
Merkle root
a4d47c2a34f6eeba31e2744fb1551fe9a0e34820dfc152f1ad93a68b24759c3a
Merkle path
["1657c96bfd23410ffafa019a5ba9f305aafce45de0461af8b9982cb405f270dc","037577e469d4cecb4596d9d7feb46ee4543add424b1134ac707993597b4108f9","7fc8176f0239a1e28b809ff0487cc3b8c9821f4956870b2c3b19c45fcea6ead6","7ca3aaf3f07a20877b7c11f88340c79932e2c749785dcdbadc0bbf4656351e03","fda3a10b5f0c23f21d64269cbd6bb7a2b9eb2da5beebaf3a34c2abf128f3a3d4","2c202af429c786f4972be38c34165b0c77aa3247ce2aabe8586242a9e294acc7","7887dc9d79985d90a2e19e4eaedd7833bed60a0fbf77d56bb8ea146e71d85bb2","f39393c0eb7b2e0a437339fa6b2d2ac2fdabe1e74daa0558cb88d14a3addf3c7","fc6e9fc968f46f0e1a199a61843ba5c5df2550eb4ed36846a7829dd0c9a63fce","0d6dc980770ecb2484c2492ddb0af32ac789b8653586afd83a49ff50a3e532d3","8f3b5e1b98f4eb33172e959946f3638ce127fd1be49e04d0a6fc4e42b083c937","718239fed8057dcd9c8669511115793713c3c27b1e9657de27f870abdd5c7bee","0d7c4faad4992f205f2c1ebb2b0e4b1b7e9d070f1f77d3f8d64b80626c324f46","35108299fffbb5c1a0d86f074b5805457d73da5ec7c848a19bc9a928f6a42a99"]
Anchored
2026-10-16
Public log entry
search.sigstore.dev, log index 3272274666 · entry 108e9186e8c5677a2724…
Expected log hash
d56e71820b4c8c62b755e9f6e3d2b624566d12db6dd1606e99ef55749400c387 The log entry's spec.data.hash.value must equal this value: the SHA-256 of the Merkle root string above. Recompute it yourself from the root to confirm.
Canonical record
{"dataset_version":"v1792036997995","kind":"published-quote","locale":"en","page":"brand:xodo","quote":"good, continue to make it free for the most features","rating":5,"review_date":"2026-10-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

  1. Open the Rekor entry (pre-filled with this proof's log index).
  2. In the entry, compare spec.data.hash.value with the "Expected log hash" above: it is the SHA-256 of the Merkle root string (a4d47c2a34f6…), which ties this proof's root to the log entry.
  3. Decode spec.signature.publicKey.content from base64: it must equal Citatio's published key at /.well-known/citatio-signing.json.
  4. The entry's integratedTime is the independent timestamp: the root, and with it this quote, existed no later than that moment.
  5. 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.