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.

“very helpful for beginners”

Checks (re-run on this request)

Proof data

Record hash (SHA-256)
66e3e60a7bfafc6201e4e4a23fdcc912b8af27a05dba648251f5b2ddffe3665c
Signature (Ed25519, base64)
6eG6xR3JZXpQMr3PKvUuZevei1+pBemL4I+4JQscz0Tnab4qIvP5SwX7N2nXXXlzzMCRiwEWxqNMQX0fi6D2Cg==
Merkle root
aacc11945f125ee3fcdef86ba030016c440bcc608f4e51f0ffffdb4cdc5e9321
Merkle path
["66deb475a02c7b5997167fec0729e92c7ed34ecd815c45637ad644f825eaacbb","1fa7134708f8433e6dbabb27802d6202b17bd741f290201947862db830e8060c","756253ef7b3f42557629f71786a45b8b5c8e7aefec7e86f739a0eb7443cc6951","f929de3981ef51a0c41726c104a00f4e4faf4e7321f38156ecfea20db2371a04","b027ed0176ed97c23a02c4223e5b66932a9b925cfc5646c0cb904f1b7982741d","1c6d4c951ff433f90ad393aa80519030474610d96bdf53a4f4fb83cd22684d79","0efcc163fdf2d17bd0beeffbf4f19eeffd87d0f825f7e51c836fdf6108ab6e1e","5d6b0c384f11f1993c8231019bf33435f9d2bb2a833b5106be0df0b5e594ab59","dab2e89fc4ae2592f48ea1c228714f277c74c2da5c15fb6723b603c29c42a4d5","590b75a206d93de9a03dadcd24e5524db77b67bf901908a5f2523c3b2193a1b6","02a5ea4f3197332385fe41072b523becd1651e68a5ab126f089fa99ed22d0ad9","10417bf8400d993dc5bc51fcb3c27f6a0c34b723944b9a3d537122bb9e0d2970","a67383a47457a5cf1d5e37868e4ed4249ae6b4ada373e7ec00eea3b30391affe","b1c6c1169310bc9b3706487a8b54e13d2c5256c24253b48b4df6440bd230af21","2309962142b16600f7fc4d57273f3042f382acb91be89aac7f00112f61b58f1d"]
Anchored
2026-08-21
Public log entry
search.sigstore.dev, log index 2543547848 · entry 108e9186e8c5677a921a…
Expected log hash
bb93f13ee7a4a636e28586b842e19662b148eb18166a89b3ae7d189bb8e81689 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":"v1787286345433","kind":"published-quote","locale":"en","page":"theme:canva/service/en","quote":"very helpful for beginners","rating":5,"review_date":"2026-08-13","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 (aacc11945f12…), 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.