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.

“this app is garbage”

Checks (re-run on this request)

Proof data

Record hash (SHA-256)
e961938c3dcd0882ef9f212fb7e6fc003d78ce19d1e081df874669dbf0b0801a
Signature (Ed25519, base64)
vw+yhagX8qNsf85h+zwqqEq+CkR4rfYYrWJWMbz+JPPSK+cvai2Ja0uS4GcYxMfhcrN1doJBzx6gbZAkf0U1Cw==
Merkle root
97eb1062a862b99998bef0a84476eb3c3812bb77c2cb927f4fd2933b59da9e3d
Merkle path
["e96540486410f93882241fdf3b8a2738fdbe204f05cbf1f90710a8661d5838b4","f51002f921d186fa529462f39057f1421a9ffc0808bfed5faf3964190dab2651","0dc4eb9fa3b7d88d6dd8e2f7debc81167c5669f764bdfc916f65fd43fd176738","73dc3f95036c27112a0b68521dc29008b7a718f9bc2325d0e608446dd808d5b8","bed5dc7fbf41359e9955eb9dcbace7d217f0b37087d4f8692fa63ddcb3ebe156","1c3fc75ff1c2b1e835b9aee44b09780b101d4c229db1589edb4a615a7570490d","9975550b204e4e587a2e19c20bd36c1dd9601957d25657cfd450c7213ca0e20f","573b9772a22bc1a6b5f8496bb4202536fb8d80998009c548534147c08814955a","97e99d324e27ad56b808cc9dae9748d29dc6c16717784600797df2bf03c946b8","5f7412fb3498d167c312bf4c1f7c3e387fb396f5252e2136b8033817acd7ab5d","341cca8d51d1839f5f1c76313bc70c42466b2a8f28fbb1520e70fae87c581435","640b197bc6c52e1ae889c0e8b7a59a99fcc90984c8b3bd71fee23168c95ccff5","6a087565eaa0768d4c576fd78f88585a902d61259a245be7f47bc24b1ead4c18","fb01c9b29e184d558c43a512ba05af475ec20eceeace4dde365559da92299892","46bcfbc656e0e2a380a8a94cdc0be3d8b4c668e5f9e54a10ba396a45b371339b"]
Anchored
2026-09-11
Public log entry
search.sigstore.dev, log index 2789279696 · entry 108e9186e8c5677a3885…
Expected log hash
05c7009ecf7ce5cf315c252c2a1dd135e64989a02cacdaaa3c5a87412a2e921c 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":"v1789017464005","kind":"published-quote","locale":"en","page":"product:wave/pro-plan/en","quote":"this app is garbage","rating":1,"review_date":"2026-08-20","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 (97eb1062a862…), 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.