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.
“After every song, I'm bombarded with 2-4 long ads”
Checks (re-run on this request)
- ✓ Signature — Ed25519 signature over the record hash, verified against the public key at /.well-known/citatio-signing.json
- ✓ Merkle inclusion — Leaf recomputed through the sibling path to the anchored root
- ✓ Public transparency log — Sigstore Rekor log index 3178600936
Proof data
- Record hash (SHA-256)
23acae959d8f59e5f017a49c4a602f9e017b0f6f85725d19e2db48236744a9b8- Signature (Ed25519, base64)
dXaYhdRiXPDZ0L+kkoQgEmQ/DXSMNF3UlCQmQRh/aKWEdlYuIAXkQMcVJTVmt7N9+VMg/xTD+YQYzL6GAS6EAg==- Merkle root
eee462924587f8024361bc8d60043805cf5210f8bd2ef7667df06d093552f9e6- Merkle path
["23a915ba6e919e9c408a5a61b8cde313172e8c52734f37b7896679612c9378ff","b2747892ffb80dd41ba30eaf8739267c8974d110b8c63854a867ab0393166002","ebf7febfcb0f441990af3cb71fc38740cfa605275e1b7503d60f7c12f1a495ba","07991b9ef9cc83bda1cdd3782903fbe48fd1fa79a64cc753469901a64c4176f7","a63391817e3a814c8e2550bcbde1889dfbc5b5b509e225ed5d3162c6b26b25a4","596f3fd5dce20d1677fdfa3fb3c6a880fb810e52e28d260ff1b54aa8e74a5290","6db4873ba7e12642006788f6064075ea3d7c611702d41cb7c2c67f72a0646caa","07b6d62eca37b74c0224cb602d3e7e1de7ae198ca6b6bce7586f647998f73ca9","5aaa93b66017cf2990d9f3faea3f27878c58ad9fd4d6fddbf667cc7dba92ee15","c32baae29025ebd8bbebd4d2913e8b15582d3ac308e6bc08000959705d0984a8","6c1510ff4366f01d9f3cf2782dde2248f86be32b568472e8b059185422448170","5a28204f9372278679ccf6b3ebe28cb3da342cbf292d2015dc590fde73763288","2671ebca141255a0c11a3bc51354d8cd008634f7e59a58a3f3f9dc756141bb9c","a445a39a48770a8fbc5d87a405ed660d401fa810eac6fbd1d284a96f8c7d5503","452f4fcbca19997a15e6a6869c50e026ff02cb90a6ef21da106ee0457e55941a"]- Anchored
- 2026-10-10
- Public log entry
-
search.sigstore.dev, log index 3178600936 · entry
108e9186e8c5677a6a91… - Expected log hash
-
f3dccf508afcb5e89d56dabc8c5aead85de215b1b896d057d463ea1c1bdb13a3The log entry'sspec.data.hash.valuemust equal this value: the SHA-256 of the Merkle root string above. Recompute it yourself from the root to confirm. - Canonical record
{"dataset_version":"v1791606586319","kind":"published-quote","locale":"en","page":"brand:spotify","quote":"After every song, I'm bombarded with 2-4 long ads","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
- Open the Rekor entry (pre-filled with this proof's log index).
-
In the entry, compare
spec.data.hash.valuewith the "Expected log hash" above: it is the SHA-256 of the Merkle root string (eee462924587…), which ties this proof's root to the log entry. -
Decode
spec.signature.publicKey.contentfrom base64: it must equal Citatio's published key at /.well-known/citatio-signing.json. -
The entry's
integratedTimeis the independent timestamp: the root, and with it this quote, existed no later than that moment. - 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.