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've run out of listening ours when I should have 6 hours left minimum”

Checks (re-run on this request)

Proof data

Record hash (SHA-256)
83899f54babbfc574639e757d9e7e1a554c1a9bd7dcd2bd470af30376469d802
Signature (Ed25519, base64)
l2Eq5Sr4QXk1AZSNw7TL1xjwseQ70fHUhr7JV9tC0LVPCnlf+KP/H0F9coo4Fao5gEiJI1AXsVwWu+5zriW0BA==
Merkle root
f26292e960b34f73f9768b4afc64585e265549d794b35b8167826c2bcda92ef5
Merkle path
["8389e6afa80782f8f06161c043d1dd2ebbcb34ecae5753c8e7286fe26da75f9f","d1681aaf91cf245b4e0176bca30cac9ec2cdb94f9f2c4a3b30a8badee8043790","3a745f9156e74a26f0f8fcf41d55d11d2562ba59e904d485d3417c11c94e6e5b","5e83621b6df4ccb3c2e2f55d9acd80cafb5d7dd487c2d89ec99ea71c88668a4a","f3e3ceb98661b0bce64e30b4941d615c8266abd468f724c9a7a5d10249951600","6c637166ef8d33871eea3850e83247853389d39e7d96351a72a4bd1097db6963","4ee5dbab386d0ad378d28dfd274eb0929a8f5f31344b80fd305f337e0ff9ffea","fa0706fecd2932a80ad9ac4c4e4c397f193876798f8557f2eead37a72092de3e","ea1739dcde12b028368188cfdb035bbb09f90ba0d453d43df000390416eb1dfc","4ea30299ce2ee6b7baac947ce70fbb29aebea24299fdcc6c30c7f15450a6ff84","1054efdfb2115116a8e068119ec2ad28cc3b6a59dde338587abe3eda58fb6cfc","9a9aacd96a1ac53199b2b5828545bdd6abac29af29da6dc5f9cc3106d65b75ac","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":"theme:spotify/billing/en","quote":"I've run out of listening ours when I should have 6 hours left minimum","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.