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.

“So far so good!”

Checks (re-run on this request)

Proof data

Record hash (SHA-256)
3251cbcd7a0e03de5a943a40ffedca212ef5671bfcdb03783391af2be44d4afc
Signature (Ed25519, base64)
LTyho28Q9ArRFC0WBXYOhco5VEyJww0shk1MEdlHhnmd/a2hKCVWmlj+c2iSp5D1vwaFZJ9TrHPzRgHrk2F7DQ==
Merkle root
49133e6803d24035baa1544a5c730db93dbaf832df48f680ca855944337404a2
Merkle path
["3251b3addd9958acbd3a368d4e7170683dbe2895055025dd9ba48d4d38711f15","2b76b7f4ab573515b861078d6471054a99e9db8690872797c6bc071b49e4f46d","526ea8f4232e69d2b4c53a0e9faa382ac88369de1b1ea3ee644e9f0988d31515","dd6e7121be805b0c932031116cef30a0100431a595a57fd9cf27d69507a00ce7","da5aac88af92137ea43867d6aa106ae28d76ea7a0fd2b84ea93309560d3cd5d8","ac4732817637b6cb0c1cfb29e14c6b560cf327c0a0cdf2397d4b7e14a6715c10","6bb011ae7183491d2049762e397a3cd734d83a9f72993744fa55211f64e4ef51","8cc1d7eb0cd1fc73327c7a214e756cf7a23d551c72285b9e480e5f7ac03b2bb3","b6e7a7e1cd2920f497d706710c4fa119629eae0e744a72ac07114b3186ce28c3","09dbe5344b9e49edd4ffc38d2b4997bebd09d8f2ee67f633c1af3199af93123c","456f0aa1a84892667e9260c0352ce154a931561f86d1e3b7ec1b76c5153b6cfd","5ca4d7cc87465add5adbe4e7b63778bb2db248eda4e687b7f2212f84267ce478","046c4b0a84a1ac6492f9d54568d7b37aee9b15954ca055a2667e41901cf12906","90889d6ebe241f2d2f9092870d002ba795f7d27137f7582a09b4369ab1517327","d81f506ca96dea712a8b56759200b270fc625cf496d323ded3475eaafeb2d916"]
Anchored
2026-10-08
Public log entry
search.sigstore.dev, log index 3139760477 · entry 108e9186e8c5677ac88a…
Expected log hash
d54b6e5e20903e9be29e6a5973227ee9b3dbe61bdc0fa6481a5788472cd5976c 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":"v1791428432986","kind":"published-quote","locale":"en","page":"brand:wave","quote":"So far so good!","rating":5,"review_date":"2024-12-06","source":"Google Play","source_url":"https://play.google.com/store/apps/details?id=com.waveapps.sales","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 (49133e6803d2…), 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.