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 prefer this app over Deezer”

Checks (re-run on this request)

Proof data

Record hash (SHA-256)
c2fe0d077f3f4d67b5ba7ab267d3561f227074bfa672cdde7879258c312d7379
Signature (Ed25519, base64)
dre7bmanT1o1u25ye/Pu9jQDCw70KcuI4YgJA9cwp6kiBQcaqMTGOvKd1NnGK3bdQI3nDMz4T8CwSz6Y00iVDg==
Merkle root
f26292e960b34f73f9768b4afc64585e265549d794b35b8167826c2bcda92ef5
Merkle path
["c2fefd627d26a463f4c93a270cdb204f2863bb1a796249ab352994b55d0d0ee1","c947608ba9f766a2e262b4d4ba5d0dbf58e87c4dd2ede9f52a77bccc265cb98c","a5be2b4dd31af0b9571b399d03d28523c14be9d2ba8b9c06a88b64445cd60d29","182f2c788cba7d266d117faf626ef4f2574c0d96769b9ae08cf059930045068a","143e54c723378785215b847f2518157296594f77311267d349ee9acc4aedd69e","b6cd9616a3ee7c22dcb242223881d95afd4e43b036f1c02727222c6e37584bfc","296a9151f61fc12012ec82aa4bf60eff7dee8db4ac618a091577bbe8596b204c","b7ae0183e2f45064e7c48641ea8e8f03678b1885e43e323882a71f1daf6e4aab","023cdae2ba2f3e51c483bf68ae2b6048d46609cfb1ef391f57e7322fd4e9585b","800ab42cd73afde0f3af2d9507b1828fc4b7aad3659d3b8493f5cf27edde8bab","722106df6fbbc7aa8e47379a1ed59bc3a92b92a1821e142fefe0367ae74daec4","8f5ec8180fef173ef49bba3555961699c8394cb3b56f59043b48bef17eb12eae","fbc83ea3f323a853561b2d18a7d5d816b1a8631e4674525eac3ed9b0d77501a2","ebe1651655c8b61b6b5364f1f9c2df6d3d2570b884eb1475b1f154f5054feeba","a616224c7837fee9e37cf9dfa53b6dc52945555438d928215ead84ba8ccc7b57"]
Anchored
2026-09-23
Public log entry
search.sigstore.dev, log index 2913636507 · entry 108e9186e8c5677aea51…
Expected log hash
417fac9b806377ff48d30ded01faf8424eb98406df713fe2564ee9077747e6a6 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":"v1790070376053","kind":"published-quote","locale":"en","page":"theme:spotify/ordering/en","quote":"I prefer this app over Deezer","rating":5,"review_date":"2026-09-20","source":"Google Play","source_url":"https://play.google.com/store/apps/details?id=com.spotify.music","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 (f26292e960b3…), 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.