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 like how it doesn't force premium”

Checks (re-run on this request)

Proof data

Record hash (SHA-256)
2ddd79bac2842b084c1715813330f64ef76e7ae9e7036adcb3bc1b251496b600
Signature (Ed25519, base64)
20Lodv/JXDPJwEcL0widNZjDt6poLo3xQIO+Ks37hDNdV1TYo7FZDVCOgXRc2C932MBkES8/rdVxwWs2BV6nBg==
Merkle root
fefd76293e002e3e9b1a8c28dd2b21a6a31f7840085e07fed39fb8f3e1a027e1
Merkle path
["2dddaa9e4c00d795b4cfbef3d5f6ca2265ed834668a4798512aff58a7872d5fe","285aafd598a4551ee8af8f381a7111461995f5ac0a421ea88404e84f2f36a0cc","9c92e4308312b9e489a703694359b37ca3124a522b266c2faf4333e8785fe7f1","d14235e3c5a11ee71d882475862788e53e0b0224e49686c4d2668c75021bbbc4","084db1f14866e01bdff3ce8c77a298450963353749d9bee05dd0caacbd03affe","e10d13b39e3008a4198b7c6166dfd511a166cabbc913818f46950f98207be86e","118ab0279a0d2fc95ee72866ead4a940347feac4f95601394560159d2327e0bb","43fdff48a335a539646e995dc25d13ba56b29d792b3841f1b0ccd6ef53b91acf","beb94a9c40fc11e08036d7571ed8c7896325b589cdbca5dcf77024c870c67904","f461a738aa5000de7fb501eb13c169364e8aa19fa0bf72c18b9f4e3c746893f6","804cd9abf29b221c223ecbf8f438d4ecae62cbd17a35835ca285c1e922f81549","368d90096d1dad78c0452040310b66a4f78f013c1275a844c65f56ce5c532da7","b33f49013ec35601ade22b53753891ecd57d0d1932d0b012133746ad4927d388","7a42de951be4e00d60ec0bbe464a0e0231a5c4314a65e01d8dbe2db19807a7a6","5bcc0454d959fe45b9d8cceb30d3231d2e09d219fc5bea4ea59efa077a6567f2"]
Anchored
2026-09-02
Public log entry
search.sigstore.dev, log index 2685374445 · entry 108e9186e8c5677ad2a6…
Expected log hash
8052ff4797a042637f5e0b94324bcfdc656477714cef5f2a8f0c16d93147fe68 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":"v1788351002274","kind":"published-quote","locale":"de","page":"brand:canva","quote":"I like how it doesn't force premium","rating":4,"review_date":"2026-08-31","source":"Google Play","source_url":"https://play.google.com/store/apps/details?id=com.canva.editor","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 (fefd76293e00…), 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.