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.

“they randomly switched me to an annual paid subscription and charged me £81 without notifying me”

Checks (re-run on this request)

Proof data

Record hash (SHA-256)
075fb603a603edbfef95f0f43aad7eb22600b9aa771b60107adfd347f1cd71a9
Signature (Ed25519, base64)
QiaQQ0lVTyrG7mx08wtiWzXnfpl189yeefzG4gEgOaxN+VXBGkkFqDWOW1qmbF8dxhPHjR2qA+chXysV15iZBw==
Merkle root
e880a518ba68bfe85ddff87a241b258528b2896d8ce031c201c4697c0b7d2205
Merkle path
["075973fc4860bb1904f7b80bdc1117786a38b176af7eda482a282d5f9de74c36","4ec7d8b2ebeb61c1138280c6c67ba18a2a1add1e00ca0b67a808f12e7c205cee","a7a9021b7d650ea9dc19aaf7f7af12fe45229643c38cb2a9211d1a27aeb7a9ca","2a894fbc835db6b9f9dd0ed168a97ae89165902ac56675b693ede484b2a6fa40","7c74f42606759239a1d56671cd780980a0ca4ecf3139e55d1c0e981d6ce7e1ec","cf13f0047eb96258d4c14363b6cabb1ef9609c0a7c852e8892bc7d2185346b0a","72e63f3b8ce85ea8f0e9cb5d130dc3af657c9ade4b018a1a08cdb5c013eeb624","bf7465290eadba386adb6f919056bce029edea37a781177ef5ceeca95b40ae20","f3aa855e8778698c71c450d3e0cf4216d0c2025b91b66fb794d3c36d9e8f59af","805a618212de9dc49a1aae9e8ad4d899862ba71d59c5eee463eb159179466632","d2942e0ff67552e3de0560c6bc7d63f8e2e8772154309651438c23ada5551cfc","8abd4d5b06b87286affaa0cf89ccbc72d6059bcba0e452912cc764aa4f8b3a91","0e6818b49626845facd47486279f7e4a6689ed0beda657d93a969ab184e1e0de","8c997d59f41540bab49c6414578aed00ec9a73fd31959523b43a0af5a2eb1e86","269c643459740a67a842bbee9fda4a35b5098a4f015e508a69431212a0912770"]
Anchored
2026-09-01
Public log entry
search.sigstore.dev, log index 2680681799 · entry 108e9186e8c5677adf7a…
Expected log hash
23ab6878cbb153d06d6958de44ea3fafe32bd61b03ba95bcd26de9e09248aedb 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":"v1788297623062","kind":"published-quote","locale":"en","page":"brand:smallpdf","quote":"they randomly switched me to an annual paid subscription and charged me £81 without notifying me","rating":1,"review_date":"2026-08-23","source":"Trustpilot","source_url":"https://www.trustpilot.com/reviews/6a8aae3562b5278d931358a5","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 (e880a518ba68…), 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.