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.

“Multi color annotation and portability is what i wanted”

Checks (re-run on this request)

Proof data

Record hash (SHA-256)
311c6696e6e6bb13f7f614a79c96afdaae9dcb8a24c8817af45d6dfa1373cfa7
Signature (Ed25519, base64)
bC+px/AJ9LiKjrdYONhzTmALmypMi4IRNQxKU7C6kl8PBUMjDBH8Oha0PU+TFUM3/240kvO3xMYWD0hsCKsOCA==
Merkle root
68ee5f8618d9ce1aa33f2cb5b6f3145b5f909a3c35a03ccc3d10e979b2f81082
Merkle path
["3114f5fd4f8ee13007f797ac116d066e6a20693a6b2605cbe389a4be6f9e71a7","6967757374415eb5db8e600d808e4286a8eea491d5c82a101441c615dc5b0ad8","112d87c420ef12e98882c3dc34d9e198db51f6ab9c9e21f8afd39fdab8274110","7be663736493046ee4847be3953679047c76d3d703d3c2e437eaa125a326dea0","f80f338b6938fac256079e4ac66fc7dc54a3d35cc366fd6c89bd57ab4ba32347","4aabe63d2c77c705701bea9579ff38bdf1c287751f6973e3ea676ef4c6c4bd7c","335f4c9bbcfbe40153c4a9721f293461375958c7eeb02c0551f7d4d8e1f230bb","ed8448849d0e92f59ef246861e9f75eb3061e19c1f40acb43b4e68007ce04699","e267c38ec96ae6185427e5d0800ed44edae413a3fae927339da6fef08f3d4571","bc8a821881b87359e458fc3a24544d29c172ac1edd67bbd4a47cb5b80c9bd281","f5f19d5d2d00726c169827891513a445432473d44bb70e4cf72a3765daf78772","c0b0e5d80d4c20548f54f9b2ba03e64a0ebf2086ab62be23101b4e2701c5cf78","e6960377f92ebdc1b41fb37d3ed0decff1e5fba5b62ad653e7be0f8408d1c6c3","e66299710f80b56c392136748910ac59d79a991f3e479ea8a96c5c23e200aa78","418554fa0ebde54d6cdcc03145c7126505ed96d3734e8e7ae56dc0dfd8ca0a2e"]
Anchored
2026-10-08
Public log entry
search.sigstore.dev, log index 3140838741 · entry 108e9186e8c5677a4791…
Expected log hash
ca4949400cf2d29b49789563ea2e672fc73762380548d6fd65398e40c0d98728 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":"v1791433229105","kind":"published-quote","locale":"en","page":"brand:xodo","quote":"Multi color annotation and portability is what i wanted","rating":5,"review_date":"2026-05-24","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 (68ee5f8618d9…), 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.