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.

“service is so bad”

Checks (re-run on this request)

Proof data

Record hash (SHA-256)
7fa4019538ff32644c6106cf4915a2693b5ac759c82fc9b601f560f434ae8724
Signature (Ed25519, base64)
5B1DRwaM9PUAH2EYLesakm9jTEYquyCI9ugXcZY6kos6S71/l+XLZ51BABjlxpYPuvUk9nkLb4dT5ribhKdcBA==
Merkle root
97eb1062a862b99998bef0a84476eb3c3812bb77c2cb927f4fd2933b59da9e3d
Merkle path
["7fa3fe9023abda62a6c6993e5f8a91d04a57180a6c7d9e367c52e6dd57e95f03","33f2560b8e72de9ac3095f7e843f158b792ab684c0868514bbe8acb3b95c500c","dd27df5f332b9f37828c16ad1293519fef21cdd8b975fecdf92f9becb3885b6d","cbd1afdc23e6171d8cc5700d0a3c55d89fc87ba890c1e352d64d2b37709db2fc","d8f3918d55d6d7a6c17069a23b6e461db54132bbfc6833298ac29b83b71d4993","e7e572e6284cea8bbde27dc9227658363e8639dab600a974c9a80e935bbd9f03","19ff069e677bd460066e50ae580ad62c76ba7e6d068de64c486ed4c10be9f683","2735f14722caa2d8173736fd3bec3a5a4d05881c0cf7eca8ed2a469f8f97e4e1","0746f824bfbd571f7bb99e650d16158ae4f5e713042e5f2a751c23ab4061df71","627421340b58309869851f947401431f9d8fa3471fd9a832dbb16cc5bfe0c92e","4a7da3ae635c518c772181747583fe91b52dc970a195f2fea0b029288d95f308","ed5206c0018c25fc911a5b83d48a4b07edf1ca07ade25d7e56162349167c269c","6772a6b2cfb742f4baa103e424787f6ab6a8cbdfc294db886f1451f7c9752077","90e3c3ed08ff9f4dee6683cf95bfff311f4715cac07e97ca75ea5b9bcf13efe4","01242865574478f13dcf9d888236d7a907264abdb87f360db7db06de0945075a"]
Anchored
2026-09-11
Public log entry
search.sigstore.dev, log index 2789279696 · entry 108e9186e8c5677a3885…
Expected log hash
05c7009ecf7ce5cf315c252c2a1dd135e64989a02cacdaaa3c5a87412a2e921c 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":"v1789017464005","kind":"published-quote","locale":"en","page":"brand:keeper","quote":"service is so bad","rating":1,"review_date":"2026-04-20","source":"Trustpilot","source_url":"https://www.trustpilot.com/reviews/69e5794cc8ccac764eaaaf03","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 (97eb1062a862…), 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.