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 account was automatically upgraded to a Pro plan without any clear warning”

Checks (re-run on this request)

Proof data

Record hash (SHA-256)
01e0ab064742b71b7b73d0b575a32ce6ea68764e38e3585255cfd2d5889d92ef
Signature (Ed25519, base64)
uytJs2T0uSXynz1A+33GWelU2dhDKme3GGEUgpYOLCivVx5elUFZFbLtSpFtLlgUR6MZn2dv5Yxu/7X5nCzBAA==
Merkle root
3b820b0e91b2475ca02a79fe65f1dcaac35af570ee21f4c868099b9c17e17c1f
Merkle path
["01dfeee65c36218f6b3f580faccb251a96a82f2362e8ed8e26a881c0ec970abe","cb7421be49f0f3cab51c8fd51dea5b8ad8dfb9709b19dc1fbc1e2d55126d36c1","211beb0b421d2a5ceb2578454d901da7cc58ab97bab44107b9b188b3c396a03d","4d4e0b64cf3d0d77e1f6fb9edb721a2bdfbfc0373fd6414af872ddb39622e919","544a7ddca071cb8e489c3858b261a37a37f6edbc378b8969e82421aa828f1a3b","6cffe7f677cc30f83cbc0125df3c99f435ed0dae694890d9e3447eb08f4e7980","0a71189d6137076cc9e6092d021274743dbe60cf740ca51b5e8402ec206e4974","950a2cc8f1550bb1e6f40191294536c82cbaa0b0a87c2010d2385acde46ffd94","a7910a8513f6fdd1c4535056b88d1f274e3417cd29ea86cff60d20bccb18add3","6d630e74cba2c022381438f696f252aae19e8d2c9c3c870af8b9880642ad3984","0fc39f56c343e43de77d7e77eeb95ccb91e7d7de164bdb53d45451626576c138","908905ccf01aff1d877120de1672987ae5d5a21dd262fb78ac6d3eb20ba17367","3b28c91ed1c07c20e7a9ea170d94b917c6d123814303aca3f92997be066c952d","e448e4cc350a9a69a05538fc74a8236040fbec1cdf0c4908e91135fd4a29e380","92de2c105ee268f1f08dcd9d0a8fc946130cef7b39b15a2b5ed0d7209687c9ac"]
Anchored
2026-10-07
Public log entry
search.sigstore.dev, log index 3124210377 · entry 108e9186e8c5677a0172…
Expected log hash
20a5241ced0c7b94303a7b8002f1aae217df3f1371aea54ff5745a148bddda47 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":"v1791349684588","kind":"published-quote","locale":"en","page":"brand:smallpdf","quote":"my account was automatically upgraded to a Pro plan without any clear warning","rating":1,"review_date":"2026-06-26","source":"Trustpilot","source_url":"https://www.trustpilot.com/reviews/6a3e3bb31d2a5ca7d87614d2","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 (3b820b0e91b2…), 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.