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.

“Now that I pay for it, it's a really great app, 10/10.”

Checks (re-run on this request)

Proof data

Record hash (SHA-256)
569033a0b1745c7d14ddae0ca061b0a74f0b6570ec2c3b7953daaa2edfccb79a
Signature (Ed25519, base64)
ZcK9ynT85d4qHjLYidUzeYyS0iaccynIkubXVlaniLOpMcUXkxKud0lYrsZgJqoiPQs4YTG2AT0wi/kMmUotCA==
Merkle root
f26292e960b34f73f9768b4afc64585e265549d794b35b8167826c2bcda92ef5
Merkle path
["5693007e5596c352cc1bc263b3756c8c81fd817d2c79c2511d9f27dc7ade45af","9d6de93a7680c7930b9f9a7bc60b403c1f4d1ff774d90b847be05107e35f43b3","78341deb44e57e48144956d61efd173358ec3245fb25d63137f6bd05aaa6744a","ed677253b0138087401fde88cf77505bd2761b0dc7193ca2303e406855fc1116","878d6558db7f53543111009206a8007f152ce3d927ce5b9efbfaaeeb00494aad","d9b478aca5ce85b3c694af87fc2da3d769296baf44821c20322214e6852610f9","cdb7c262fd46e519e815204c47eb46300ec43ef94438e00b2b6cb143501e6398","4cff7522aa7a39147ce7b261635322dc65fa9509d8bf3945727b70eba5b31cc5","624251444da4953fc69bbff7aa4292f9e908da2a407a948bd64bc9fb880baa9c","8801874e88cbbb7e998769c381f210df85ff76e04256c2bd8dd0b30a6f38dd27","6a225c6636ab1039b1f5cec08e598301b39da8ed6bb41233b198b79bbe3a0193","f3db9127b9da10fbb7693de00cf989028a504ba13d96eb2661dc5a2037470668","eca7cd52f5c219223fa262f727815d7426f47ee6fd8d3c4a33225271415ce785","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/price/en","quote":"Now that I pay for it, it's a really great app, 10/10.","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.