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 never had so much trouble setting up an app.”

Checks (re-run on this request)

Proof data

Record hash (SHA-256)
5fa63739bd325d8d9f875248593e0170bcc7e71a083c43c81b02b1c57c7ec1cf
Signature (Ed25519, base64)
fJx6/rTwz5U9DEe/ldMgbPfo+1j4RKNpOlXObOP+B0VhpNJ/GXQBtIG38Gcw1qFDipNwEcdlUKX/tNizQ/u9Bw==
Merkle root
9d32c0cbfb02966e7a561566f948b48040888a6535c058e814428126106ff945
Merkle path
["5fa479e032ac4fd9310b1903cf7cf374dbf00cf78aa88069edcc48ab82beb671","f076f5e51d351154c09045105e2f4b146f7ff3a77bbef3410d29659f31589425","4c445d248d20a3f47cfc9f604ea4213f47aa64eb19b1ddc74e0607de8e36a945","dd77a743f2bda3ccf619d3640ec0d8fa03b382f3420b26d84e822c7bd2a83a28","f1d73667bb4c3dfefa2e288cbaebeffbbc14db94377275a7981812020362d51b","04fff8a55b42154ba7c0e3daa40b94fa5a793a25790c2774c16e76fb8952532b","e99a4efc9f71f1c051fd81e13251c5fa4e25543e855248ba069ee37bdef53089","5435254f9f38c7dea8e776d1916455d43b2cd19a6fb053c4ca880b70bc43164b","d313037105dd693055abed1ec448274faf4884a6a71b5d414f5e1dec3a2057c0","2b13fe62c0b65c290e809a9e9fdca3fb229888153ad21579cd5876b84cd2d00c","be4feb1fc69f4e555826aa84bc4ba620a85f87da39269044693b9164812dfd8c","de57ce495ce1dcef2c90dbc7937bf61413a49247e13455cab064ac817fe68fd3","3fcd45228716805aa85ade4544d04e795bb1399eb7a6a00746dabb625754cd90","07b2decfe383429cb71278f9069f54d1b4f607f991c518b70357c1681514c3ad","a892fc29bb3c992428927e47e35596c876cca06d89acb4ca102f2a534ba3ab13"]
Anchored
2026-10-07
Public log entry
search.sigstore.dev, log index 3121837738 · entry 108e9186e8c5677a0c6c…
Expected log hash
a0090149b27e60cea52dd7dc5f0abf6dd7c00feef65be2874742fff2aa9e8bad 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":"v1791340487550","kind":"published-quote","locale":"en","page":"brand:xero","quote":"I've never had so much trouble setting up an app.","rating":1,"review_date":"2026-09-05","source":"Google Play","source_url":"https://play.google.com/store/apps/details?id=com.xero.payday","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 (9d32c0cbfb02…), 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.