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.

“It's a great app.”

Checks (re-run on this request)

Proof data

Record hash (SHA-256)
1ba37400912caf7a63a4e6a76eb9ebc433421571e489857e6bbef5dfb7ef44e7
Signature (Ed25519, base64)
UK2oXPB+7VmEFWENZNnoUhGrnpn41keel9f8CVz6Jt9WnpeHWBPt/C1NcwTWt9Ildy3vNDNhV6NScxoCmHqKCQ==
Merkle root
9b1b0ea5ff073795652912177ab0790127c9d286c797e205e428b8d86989b898
Merkle path
["1ba26d39651a7f0a6fb84db1c1833a4ede8eeee2c85545719704fc5615960109","023310c6d568bb9bb3715dde26f4ead3161963668b55665642744e89be3ddf13","819ba56b4e432ef99951150dddb9c10bafc833c57a40f699e400791bf836fc91","3d2fba87d7a411e3007833fed245e134786c2bfe5643c4ab8d549fbc26cf5d31","0a22f73f9b36e565e8aca48da7106f722e632e36ebb1bde930e45ce508314286","57567273ae32a99798b0368f3675a7e5975b692233551222633b3427e8c978c0","57a9ff97d9b9d01623d3fa4d68badd1b5862003edc9b10cf1051f8cbe4703d24","932cbfc02e1c717c655c984853d26f5a9a5462e39a50f8755d89db458a9950e3","9204a109ed36ab4d355e03aa4a8543a9342629adc5188a7c51d803ed17229826","202ab5375f17ad08d65639d70d76f41ec3451bd3211a6e6f2bd6f47ab6fa4278","587c0504f6b66a14d0cf1636cc403562cf1bff11d027a872318a2408e1456f07","562c1a9e664e25be9b46cbc686b10744e0419af0094bbcb823977c944d90e3db","8a5809f94963a5df81714440927362d38263f78c79f37bf57de7b411279bcd69","1f2e00fbb60a33ba3643132ac67d23ed080f5d4ace7fdf97cd794367db9dab8e","cb32073192135525777f5779b873b337bde4d009abe6b4aee36e0d683387aeb9"]
Anchored
2026-09-02
Public log entry
search.sigstore.dev, log index 2684091718 · entry 108e9186e8c5677ac9b2…
Expected log hash
de33a5856ee5b3a69957109416f9fe5937b2a435c3e2583dddb1e30f75d54093 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":"v1788333782203","kind":"published-quote","locale":"en","page":"comparison:smallpdf/en/vs-ilovepdf","quote":"It's a great app.","rating":5,"review_date":"2026-08-30","source":"Trustpilot","source_url":"https://www.trustpilot.com/reviews/6a941e1fc100e06a46797456","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 (9b1b0ea5ff07…), 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.