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.

“I was billed twice in error.”

Checks (re-run on this request)

Proof data

Record hash (SHA-256)
790a1b8ef89adc91e0b690e1b41a46575d4c48b89c69fa6523daf5bb3e73074d
Signature (Ed25519, base64)
LDsJS/B9uYZ2l4TCEiiLSb72+dybpqWkHONrbC4fNmzfgXBoc4bKM4IK+L5oq7ttOV2UVkJ/yiLI+cZiRBmjBw==
Merkle root
13d851a0949e31431bfa3cb9a632b995c3cd1c62cfaf1eda783bd9224fc47725
Merkle path
["790630f47427f9cbcbec038943898d33b2ccd5df2f2c27396817da4706d6d916","c5a8934a3d17f5945bc229dec65d1baad342724a297fc82e668ec8828777ba47","dfdbdbd9c8724e427f4d769e48e132685b621dbda74a72a9f8221321d079a374","4bf6a117b9fe2e0ef478e982092f39a9184be16afd1d797287595dca3bda01c9","1e52d171f34d672bba2ec24a6bf7d6a8e753819780c759351d1d089f884056fb","c12a278e0c4fd3e4257dc1ee779c8befbb4b081010599bcc481bf63d98deee63","7c031ee1a4774705007dc18470aef73a08fe0cc8d7aba797654923d08927b398","3bee3735418dcbf623c241fcc3c756e3b53ab599dc242050a8951456a3e590d1","bd50083ce0f897bc54ae2332f8f15ed10a7fa73ac3cf6844347aa5b1d12887f3","3a1d0c4cc72d3c5d8c52786e505c1476509be3f76f9ec9c72e35bad9330ab3a6","0d1f1ce3463b1e9393bdc31f0c940980c88d14045809f2215b8167e28faa0077","2e4cc4cc9f254585d592ce310b06ef87cd96eee21f75a167ff015e1181264220","a85948d94666cb760325015d876c34467e4e9a308fd736b88b45334d957c084f","8794a267e94c305c4d11faa8a55bb3d3523fb52e75ea5ecdc366a6e906d9f7ca","bc9aae2a90fd8d311435fb1459ac7953f7f2923aa1b697bb0b40101796e3503b"]
Anchored
2026-08-21
Public log entry
search.sigstore.dev, log index 2542342116 · entry 108e9186e8c5677a49dc…
Expected log hash
44bd329b5c5f42e4fbaaab1e9a27845aedd26351446bc96ba12b520a563b7433 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":"v1787279544668","kind":"published-quote","locale":"en","page":"theme:canva/billing/en","quote":"I was billed twice in error.","rating":5,"review_date":"2026-08-08","source":"Trustpilot","source_url":"https://www.trustpilot.com/reviews/6a767412ea2840ef633919fc","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 (13d851a0949e…), 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.