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.

“My problem was solved quickly and efficiently.”

Checks (re-run on this request)

Proof data

Record hash (SHA-256)
18dc6b889e5e66d614e60507c53dc73233e5292dced1ef001bf3d5af2ea72e40
Signature (Ed25519, base64)
Ig0DrFxYBSbI3B7bTGXfM5tJdF3Th9mgzgQasqiUF3sTLizbfxKDpBqsp+uNGeVebR0J+YjOD1SCmxDYSNO+Bg==
Merkle root
2f068f3de56bebe7a575ba4a979c9244445d2350140e36238e088fa40fbfdd88
Merkle path
["18dc73aef204f0e29ead2b67417ed07ecb8823f5b455bc7e995da976e81e4302","63f71c8b7af7bc12cc85b59039625ede80497910ce8b880ad44169800c97eee4","2153f5f9f38e85b268a558779cc6b0ac1d26b973c54d56d9c773cf53f3cee7f5","164595c5abaf370c644b712a798ae036e86cafcc583c676f5cd696fab5c5b5b7","e947d23ada4ed90f672c22fba0a42a78d8de055092ecf7737c1c0c7b6b630579","30707934005005ab5067755929d9fdf3dfa372cb8736343c1f92b5d98fb5ee88","27845ddbb9eafe780c6b489969b6d193967e90d31fb24577d89235a9a8603222","2683553f6ebc41db2bee68ebdd0eaa9e7cb1aa40762fd858358380e0464089cc","6672f102f7bb8e8954864e80638f82294ee6038699d784ce046db8041acd5688","9246a37efe1eecea6450a04e8822ed03173b43ea8e5318a413181d1fdfefba6f","bb0a45060c9930c51dad465c00cac4eb1887964117972af627743ad84b2e65c9","b8cfb68a145033d7a3285a85a67ec25a6d084bffd75ff809bcc332bbb80a7a76","3b092fa48a78448b4db01d94e347dbde2c39988a6fba76ec91ab78b6f236682c","03c5fc675733b417d9af5e071de3aba38ae7f09fa5781cbd0133ff9d4e234e36","98191c82333f4385e47f318835e01d44ca8835262c6d0df40edfd5f6a4dc5c19"]
Anchored
2026-09-20
Public log entry
search.sigstore.dev, log index 2893887498 · entry 108e9186e8c5677af79f…
Expected log hash
90099e0300c6e23b62e79318296ebab91bff130379d248ada57f044f77e72ccd 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":"v1789796056710","kind":"published-quote","locale":"en","page":"theme:acrobat/service/en","quote":"My problem was solved quickly and efficiently.","rating":5,"review_date":"2026-07-24","source":"Google Play","source_url":"https://play.google.com/store/apps/details?id=com.adobe.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 (2f068f3de56b…), 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.