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.

“The latest update in the browser has significantly harmed me.”

Checks (re-run on this request)

Proof data

Record hash (SHA-256)
0ff946e75e334f0d855f77d24bbdc1531b08b753cc1180dd4aab7081b1e89401
Signature (Ed25519, base64)
UKspBxpWQzlwktj+g16V9HB3/czx5E/UOVzNfqhRuwBYtNS2VPkqWrdVoG3G1mdXxEkQ4uw/VYuEoP5Zo36MAg==
Merkle root
73035d63a23ff36f71b3b8034de0222181f7f0c7af5aea1690610c83e74c7d15
Merkle path
["0ffb3249d21636b6901dc6c486c6f343c30b7ab15dc881e130429ef1199e87ce","43abbcc113cf706e655ed5ae5026c8a75d21c1259121dced5736d6e37fa09c39","ece292412932db0c7fc3f982be3ff8573b2d21583614a4a972c731170c1d690e","765b04bfb20e306db2f379006f5e419206c3cd8d730e9084ad6c22c67c372274","e3b7999df4f3efef917b05f5d29ca97f74ee05dc64cb026f20c72009f7b9154c","475613e6173bb3eb7dc2562451e4a3529ae8b1515e12cac9f268df90d3e55a55","079151b79a3b066d594542c14397fc9397a1a1670d9e3f07af8367b507621bd6","86589c4d3202b4555df4da81063ccd7135cb1f69f5700c480f4e6b33ded0512d","7eabf89c5ee12221a21708ea457bf59fbef27677987e1e82408044856f96bd33","e3584cade64d64271e1fcaeeb47836cdbe99c31f6e515870f0b8427330f33e6d","c80c33b01ad95e0a664a19eb547010a82387bd5a9df9337a3866b93eeeea3d5c","80e6b08429bdf8b1ea175f5e73973e6efc6b76bf6fe386623f81777d72899525","79f42a6faca7a25c904d908743f96835c8ea8dd4456f160fa4cadb988d234bba","34ec044b557bf42eeaf01343e2a0db0a8e40ba2304dd05f1507afdbc0f1ed40b","12edd9887d614b1b24bd84a0244281e77071c1e73791fd6b4a3ddf494952054a"]
Anchored
2026-08-24
Public log entry
search.sigstore.dev, log index 2579608108 · entry 108e9186e8c5677a67e4…
Expected log hash
daecf929d2558ff2044a636afcccfdcef28fb6ada4e0c06f09682a010a04fa65 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":"v1787541876852","kind":"published-quote","locale":"en","page":"product:smallpdf/ai-question-generator/en","quote":"The latest update in the browser has significantly harmed me.","rating":3,"review_date":"2024-10-15","source":"Google Play","source_url":"https://play.google.com/store/apps/details?id=com.smallpdf.app.android","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 (73035d63a23f…), 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.