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 don't like the free version, too many ads, very few skips.”

Checks (re-run on this request)

Proof data

Record hash (SHA-256)
780383f2104dd03e1654044a6610bf9bdc67b525be54dac17729a37df5fd826a
Signature (Ed25519, base64)
sp9XoSY300Zkldn0OHqnL5DroCwhPZcWpOVh1HiSrXOV7cY0vFPZbQdBereKHx7BoUtPJT2aRf1f4JeJDnImAA==
Merkle root
f26292e960b34f73f9768b4afc64585e265549d794b35b8167826c2bcda92ef5
Merkle path
["78031403d117f9c84d94644ec582bdcefd040db57c4ddd802f28e3608cf7fea9","852933dac8614779aadb3017da10cf988ff419104454062e88649f62bff07137","ef1f735bc569095aa10eef96d9647d23f4d8b9dabff87ff7e6024b5c22b8d0f5","e2dc79ad0ec5d4f9b8d46ae2414dbd764d1aaa383e6bf5edf47db2a49004979f","825d865e8525841b8991b858aeaa71e2eeca7cb8d10e65596faeda25a0490412","ed624a5f7b505aa40a35dc865dce483838189ca684fc8691507d494327a8369a","b961b552f4b6336ae0f5325e1022ad993a700985726912b868e580ea2cb3dbb7","3be7afd31da879ca6217b54a6630c1de5a4688aa875de6e6fefb7c256e7491fc","00d393a15f68985f54c7922b4eed992807a7b999192830c864d192add5525589","56d535bf0c735c779a78d95fe8dd69761d2b761b5bef9e67d4e7464eaad82ec9","3904f8e665a3c2c1eed93f9ae2927dc451ad4ccc79bdbaf30e49ad70f3b88bfc","fa18470c35f7f7bd1895912f69375d26e4d5988a8c583c5aaeda8d2efc824814","ff839efe243c09faa45172bad7cb61d9b7e0949040c580ec02a160cb61e2c279","7a8821e5f39bd89945ecf080ecd049c93644614124901c8b74f26df2e34d9289","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":"subtheme:spotify/quality/ad-frequency/en","quote":"I don't like the free version, too many ads, very few skips.","rating":1,"review_date":"2026-09-19","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.