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.

“After several emails and repeated confirmation that my subscription had been cancelled, they still took another payment this month.”

Checks (re-run on this request)

Proof data

Record hash (SHA-256)
0a554ac42e7d09f8c302e9b88954574b807e39adb814aeb21334ea324fdfc6eb
Signature (Ed25519, base64)
TzYgXM1tj6pN4o4iCqd7fhBvFBCXFiWUsHqkp0+JKhyxTMxd+eWKiHNexSarkhKPEPw9ImFpTG2aN1sc3bjwAQ==
Merkle root
c5c707bf97ff73e1247b0ccd0925f0db0a83cf52cb887b20768212ff5bbc5fe7
Merkle path
["0a560e40969d2aadaad3ce58d87a84fca2fcfc8d2d677cf61fdb485e7e25cb5c","293a63007abff0c4637a7f8a517c2aa71a866aca1ca3e6e286e5c47bb8a720d6","7d391041d0b4ab37a4b2455dad87c8be569969c6774b388c1ad24a5bc2e24644","5197da8546ce12fc1757db77e3528f5b44f1b470319f7a2212575506343d8ff4","339389d44d7ef340d893a7e54567ce8f324ba85051f32a734d7657a7737d56f3","d132d21271fcddc44063cfa92765d2794fa2146f33635d438f173476ee0d6e30","e16abea5f97cdece479422e4e9288b7b17c4a2f7967b88c673e8c4c2007b2bc9","dd1bcbbc2c10c5ded4fe4cd6ccc4ce48f5ff48d08011058089e6673eef945ac4","488727b7694ffdd883475851d1d33de2fa7fa2a0214e842cd261d9aec6245ace","91ec7080400f7ce5378c665be1c615c9f30146da9d1b3e778660b364fd99cc28","43583e576f9e6d8a768a7ec638133c1432cbf672965259670612086a18b46823","fa28f9b79bbac98448fd0cf268f2d08316548682d0e5eaaa3b41ecd61a4ed731","bfa6d3174dc6ac2ac973ef7dbeb8001d2697f9586894947f07415b5ac90efc1a","61d99ae8fc79aa7f239f794770b00be2b8c5cc1d2483d723f849c6b764907eeb","3e1fcd4bf6d45c101c10e6b07d5c593b58f9445be77bdcbde26aa7026b1ff6e8"]
Anchored
2026-09-02
Public log entry
search.sigstore.dev, log index 2683301360 · entry 108e9186e8c5677ac685…
Expected log hash
2e7e5158dde5972120030caa35508ea4274f63d72a51b34adc6efebfc2f2527a 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":"v1788322918375","kind":"published-quote","locale":"en","page":"theme:smallpdf/billing/en","quote":"After several emails and repeated confirmation that my subscription had been cancelled, they still took another payment this month.","rating":1,"review_date":"2026-08-01","source":"Trustpilot","source_url":"https://www.trustpilot.com/reviews/6a6e51b8ca9a85fd739f54e4","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 (c5c707bf97ff…), 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.