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.

“There are too many intrusive ads.”

Checks (re-run on this request)

Proof data

Record hash (SHA-256)
2c98ad9fc2169a72fd06eafc16ff0c2ddc52faf823a657259dced2a84583b1be
Signature (Ed25519, base64)
yZdv8wch275Zm9Fxw2u1WWa3dWdlbC3zJGlgF7Ub7JV8Q2NWaVv0zY9qEOJf8dRRnN+CckO+HXe4Oy9GxF77Aw==
Merkle root
f26292e960b34f73f9768b4afc64585e265549d794b35b8167826c2bcda92ef5
Merkle path
["2c9a7f415bfef38ae62f6e12bf7d2a0aa0511bd86a6185acc0fff2e984651f65","251eebc08ff57e5474db5f000caea1cc5668de914623cc5a226d7ff3f2118c3e","6723f3c69ed7dc5c00b18e5716f6ee3f5a42c19cc2a223231e5f67ca036982aa","5c08b3c0b19789e5d7322abf0247de8baad4be996e9b19577add39bb12ebe4bd","cc1a09a4d136723fe6020250c8ce85672766341b735071d92c58cc8306b202f8","4c469e7f566bda4b194b38cd3fbcfd4feb859694670b73755d5a9399889ac33c","3d0e45ed878a975ae24fbc5831765c6ce976a9609d6ae020c95f25a62b1c35cb","005bf5e173d2c1b99ae72213c5e4a83e8d4d2f2ea9bde255eabb0aab10f6aaba","b2121515099e5bfc610e4d6c7d5fa480adfd280ceaf281af987ac6a561ef7e36","8dea7a16dbc43096bd7e034d7d74322a58132daf169649039eb7f082ebfbbad7","fd8fa10273d7d30dbcb3af62c32fe6b240e20c5c49145e1f1b8ea729f1ea0fa0","339ef00a6835f7da3b82e7060fe7ea207d06b43a68672c3a701bb61af0ed0863","5ef2d0b70398ea508e6c490819b91bf39069023f910bbf3a50f0ba400757578e","0cf751b4d000491c43eea40a33568458d763987b542601ca0644e491c0b04ce6","e95e880a53b013b49906f2e6b9dcc652726333d77986f48029bb634dc427e2de"]
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/service/en","quote":"There are too many intrusive ads.","rating":1,"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.