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.

“this app has so many songs”

Checks (re-run on this request)

Proof data

Record hash (SHA-256)
6ebf7dfa9edfecf34f1436a0e5d629750259d7cab48bf17d760ea7e0a4a064ea
Signature (Ed25519, base64)
r395uNHwSfbJgW3Zd4v+qfJ9E7JmqEByY2Cs2CuXYTuiQ8vmLYN0YLbsI0O1VgE/TMtp6F6uavogoZtRpvVeCw==
Merkle root
f26292e960b34f73f9768b4afc64585e265549d794b35b8167826c2bcda92ef5
Merkle path
["6ec587d5b677d730238fb2771f5a710ef809f1fb51fa530c59b3b5ca1959f931","4d128ab936fd33326455ca9c6008bf665ab859afe5f94e95143ac0b7ef84b8d5","eddc8c554f37b1eeba8064124854bf56cd13ae28c4f03bfacfabc938d1adbba4","6225f7bbf83571bace3ddcbfc6a081369659d760f3c41f80c7e9f0b420a86539","935c017a963f6d42d6024896c49dbc5338ddcfc265804f99de9d0f1cae5c4da5","015e6bd97eed46093852a92449aabe72fef52f40a023d4f63e446dc2c1bb6f37","bf62fccb242f9b05807c63b96713af4d5f518db7d95e722a3427d65ec7f04ffc","e6fa0336f51a08606a5c220a9461edea29dcd2f8167fba9bad5e27e937b7b433","53e231a3bd07579b61d87393d6eee52dcefbcccc70208a92921721e8d5d36eb9","9704789d4fcb76592cda0e59928e94935fced428771b8c715f05bfce8ce69edd","0488e2841309924e401454b53efe59b313b3e78c6fe7ae624d64e5b62fa2c3d0","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":"theme:spotify/quality/en","quote":"this app has so many songs","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.