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.

“Have been using this app for years”

Checks (re-run on this request)

Proof data

Record hash (SHA-256)
12b478df5427aaaf09e36f31214b575be28ce1a22f2d6861074f5b26b409a731
Signature (Ed25519, base64)
88g+M4P55H7QQhcf3ErAD96hA/1zk+vy2ln0K2h9axHpyoEGquIoKNrNeXQeL8R7xhkk/R16V1JYqlIM05esBA==
Merkle root
249a627257bd2a9dbd9bc74ec65dce63e29c9ccd8f402432a46bbf1cfa12c86d
Merkle path
["12b40c5d916d1f40ef3b0375e2f3cf11b7f0f3256bc287ddbe6e484d06a6eeb0","62773c88d0801b801750dca33d42c68f540bd23797c55c01902a054019e14108","7960b89792c9cc0a73ad2dffe2d75a3bda62f7809b8f05b32fa84e9b36c45a2e","7a4cb3bbbf4ffcceaf6e30d54756e6c93b370ae8494feb10e5e51086ba87ec53","c871964df651eb2adeb597843c526b9271c3319980478551d71bc916701d28cb","e7a26024977557052970cc6b5b216c0909f6277745c62358825f8c3433ac4701","7101d72cadbfd9475e9a008b39eb58c91af733c4e76f512cfe6275dbcba3ada4","9f585b4ed1d8472601d2dc9aa5e0ab89be4f1e644fe07781107819ec6455650c","546c6b6b413b392a9aafd6a45534ba50d714a2e7fda78c5f7cec32acc2bb4ef2","263f9a47742f7b09180b18ff07776e2472b4a2fe4aca0550ca47a23d7938ab94","69e410b5b5c48b40f8e52c4f9c155f124fae82584906da27750633db67b1b9dd","93da08a32a88984f43cb8cf77dc9f15f59275e83068c84de6557b04be928f845","eb7727f04a590b9f55c190f90839cbf73f485e828dfdac586db4b55a34076c29","c94857f058a09552518db3b6411014dc84d9bd9a71b10e488f83e40faa66dd70","98481510f61448eaf55101f28c348e05af213e498327b1646c7ec76c471de7a8"]
Anchored
2026-08-26
Public log entry
search.sigstore.dev, log index 2595205423 · entry 108e9186e8c5677a9f26…
Expected log hash
fbc678ced8e0822086692e4ab6d232b628f26b1a50cd2c52eadc2f6910e32e8a 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":"v1787717877847","kind":"published-quote","locale":"en","page":"theme:canva/durability/en","quote":"Have been using this app for years","rating":5,"review_date":"2026-08-09","source":"Apple App Store","source_url":"https://apps.apple.com/hk/app/id897446215?see-all=reviews","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 (249a627257bd…), 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.