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.

“They should let us download our own playlists for when there's no internet”

Checks (re-run on this request)

Proof data

Record hash (SHA-256)
9cda3b0d70b38d79842e8ec3c2d0e89bf91fc59c7a87e06e73a6f7113c7e8177
Signature (Ed25519, base64)
1VUpZKkHcOlJMQVEe3l0LVpWO/4UVKg/kUs6CV5fyoQ+Mvl4iN1BIzyRCGiKHUDfR+RczadyalP+HJ87pdTjDQ==
Merkle root
f26292e960b34f73f9768b4afc64585e265549d794b35b8167826c2bcda92ef5
Merkle path
["9cd7a5dccf363c56eeb69209dd72c80491cce9e7e384582e8f84fb6dd5056880","aeb37c03bf22d0bc4f336d4ffa41e89b65adcf76e199b73399a396087b6c59a6","5101aff1e233317a331e9a18f5cc2068ffbd8bc37e196967476604576fa240f2","448a01ffa007c0dc6ed2e3684af4b12333062f7a538d779ebc2c35bcfb47a849","5ee3bc3849688e8e5968a49fc59f0f2781ca5c62d81ad5b3294fb85bdb9fbb75","638870c312458c746b552c0f61e06207eed29372511d0cc4e5589fd988cc05ba","7cdfa073ed9dda2c39fab1f50608d6c19089a70938b14cb2274fbd3d55405006","e104d57ca87489cedca807fdf7fd4183f0af077c9eee7f280cc0c2cc6c408d2d","da6b1636b8c06cd829cf8facf3b6f43a4e4ef7cc46f4c507617fdf428aa8c809","58ab77d8fe6a551c0a0b1b4076e79b94b29a0a8ed6451beef1c0ecb4c43d6448","dfda572672fd24920819a6943f95ad4310aceeb99c5317f19a653df1f79f0e48","dda2bd27fa15f75292648f9c602f964628d9c021f5588053dbc2603c0cd3f589","edcaec9f8e5156b483404ee77350f2ddca893e6ce1a1eb48e97046facf217e60","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/service/en","quote":"They should let us download our own playlists for when there's no internet","rating":4,"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.