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.

“invoice searching needs improvement”

Checks (re-run on this request)

Proof data

Record hash (SHA-256)
299e99f7504737b9ef0bd04eb61651e7f16002ed35f20e65e3f673fd8eafcde5
Signature (Ed25519, base64)
G7rImOJYEl6DzfZICBNRECl79sO00kO1mKgyo2FuluTn9UfVtHuwyjb/l+iwvnY+IZ/aw9yOj65dVJcBqSD2Ag==
Merkle root
7019aaa5828f6d5097886420e36d6e6ded993bbd5a23bd9e2c5cfaa460d7110c
Merkle path
["2999d40e5b78214f9e449ba0c1ed65db7432af96cd2c44fab91548679ec91ef2","ed517b970f644a68cc4ee73f6a664e2af481b2c64c7fcb31c7a90efc0b49d029","e164e8dd55ba8d1cf54451344797baaeddbfb2c10c7e09fa23baa6c003fbdae8","12fce964e1c6dfda16b5c45f1394edd31f6f7948a533a37b3c4e0a23db812bba","d0493a0ed4c2b4c276e0d27108480523a22246811d5bb14f534af0709a3cebce","2c184f114b6482e95e4d0e3b8410ba41934d397cee3a1ec0797dfb8d247e0f9c","8c6bce0cf83db06953de763dab67b58b77bd55dab70475af0a3caad5dd05134a","1bd5b44490af4dfc04220b0e3e429ae979f5d770a7071393b63d5d619aea6c64","9032891e75880608c848664d1f2d30e8c4e49c4c0d38bdde3b512abf4f9e5708","a120cae915d5d33790812e08a3190e0cf625e4575987bf96445665d721bf4346","851fa3adf59fcb94defbd04f85fe33bbbc575b2f123c83a8c1b15423bf3c6c45","70afc385443fbd90d5057df8dcfdd810a18b6e5abb553d2b96a045cffc7ed8ec","3eab3f38cdf1b48533da9c351ed9f742051b60c6252331b34c1bc9a3d2442b17"]
Anchored
2026-11-03
Public log entry
search.sigstore.dev, log index 3668845412 · entry 108e9186e8c5677af265…
Expected log hash
9f4762e1bb287ce51f4f6f20cca12e845b979e3d26d611c4c9b3dd71b059c0c6 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":"v1793707083193","kind":"published-quote","locale":"en","page":"brand:xero","quote":"invoice searching needs improvement","rating":4,"review_date":"2025-10-28","source":"Google Play","source_url":"https://play.google.com/store/apps/details?id=com.xero.touch","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 (7019aaa5828f…), 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.