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.

“Every time I've had an issue there was a solution”

Checks (re-run on this request)

Proof data

Record hash (SHA-256)
219d84dbd1926604a1443f57aa0ab1fab5bda6a08f7bd42caabe59f6a67f9f7a
Signature (Ed25519, base64)
agCz6q2gfrBkS7VXGnPF07AFZ0Q9ha4X87fx9QDPpf/AKo9bkZynAizKAGFvXj/8GUrc8qfOwv+KUO/hAUcZDA==
Merkle root
6953a5ba9bd00082fa1986982a5979aa7ad5b4654ec368f8d247f13243e4e4b8
Merkle path
["2195594fef77af409e940e564c4cd9bd2491495f44ad1ce9accda04159e3f9e4","49642fa7cedf7f59c46a56ea34efedbbbce5d1c8104a05966cb09ee4dc2538e3","9518fce88300a500ace6b89f4a5159c16f752dbea60d4422133e9b01824829b4","3de66bda18cde6d54b2f3d91a20db49138aca2f2b5023ccc322a308031f2ab61","6eca74fc7f501e7ac306bf16afd55355dd6c6132912fa9b7af1c31da382ace16","14ce1fce501d899a181fd0318604974ba848b33f87d823777106bff88a896f80","cbf46252522730d8804920a5c38b8115925eb3cc858291c5ac4cb5f8f67eca94","2231157f6e6c94c0dbc1d158f4272dd16240db5e6d2eebd5bb9997c0e0e222d4","c09f9f09c0b3bc13f3debbdd7a09fcf2105fe9b67bbb7942cced959899aca288","2a71346b3a82e076204ff0c3c2f36e8da558e58a6b123c9b1bdbabf5ee3e8ab6","72c3e38739481bd0a6b962b9809fc41fdc415b4ea8f89001926f0ebf61efd9d2","d42dc1b37546fc67d932c54c8efa2ed4184ceb43d115311d414f7b177c48c420","3d6624c631c3f201b337a52bc4f9494c99366c0aa74b4db152cef1b6807b4800","98a14e6f55278d0c3f64d31e6bb09545a033fdb7dd6455363be23426eb85b044"]
Anchored
2026-10-16
Public log entry
search.sigstore.dev, log index 3273053873 · entry 108e9186e8c5677adb5c…
Expected log hash
8e660c0f9c2f4acb2461077e20036379bc945573437a296969373758a8dbffb8 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":"v1792120102008","kind":"published-quote","locale":"en","page":"brand:freshbooks","quote":"Every time I've had an issue there was a solution","rating":5,"review_date":"2026-08-17","source":"Trustpilot","source_url":"https://www.trustpilot.com/reviews/6a83155d258701000dbe10d5","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 (6953a5ba9bd0…), 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.