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.

“It's a shame the app is getting worse rather than better”

Checks (re-run on this request)

Proof data

Record hash (SHA-256)
e26b67e15775f67f05ee55e37416c9be5b77e9ff3bfc59142e22c4524198199f
Signature (Ed25519, base64)
h5EbiayxNvC61sLgiG0p7HKCY8B+wUJbJTUFpHjYJHR1ia88KlHkfaV7aYC68IlOGoswfOxTTKDiaTKHFgzYAg==
Merkle root
2f068f3de56bebe7a575ba4a979c9244445d2350140e36238e088fa40fbfdd88
Merkle path
["e26863186045c12f502178a545e7859f01a4933be60386cea33b06cc0468a8d6","74c91f3afe49bd1308e14c41f5f51c5995792d408b802c42eb2476e34d959f10","097dbfd30a3999778193284e6b10de8d16edb62340d36a6917417c5b869bfc4c","cd15cf99e9b1ef83792d946582cdbf549d0b7800a7e04debeca7b0ad78d206c8","327bf4aabb881bd688605105f971c7944348ec079cce7dd506e6314119f89b0b","c36efe31478dcd7bfaeffeed5af575aa1d18bd9724cd86636bcfb1f0a00b79ed","1ea3cfbaac81866df54c1fecf0b0131a62bbfc663bd0b4b27e2f34dd2b78135a","968e4a5a2069bd9930343a4c4d5a2d7dc3c07eac57e06e59a0ea3cab6e86860b","e47998af7495a072dd395e49ff002a01d3b14a864a848aa01df7e720148d7cc2","f17622b1967e2112f90d2f65b49de6021f217962cdbc46306e7ec96302911581","7aa45ce6be7da29aeca0302d172ca2874a01f87e6b4addfd75180817d87f4620","adfb7af951ab6d82fe2ac7465e5f822234f3eb32c74ff914d3090db1700baa73","34bf35d805c4f7af315854dc10a7a10ae0ea054d46dee40b360c3f04f8b8e60c","58a3dfc9ad8696e92f5fc9960e9c6bc4cc04e270091b574a948593298b33d1f5"]
Anchored
2026-09-20
Public log entry
search.sigstore.dev, log index 2893887498 · entry 108e9186e8c5677af79f…
Expected log hash
90099e0300c6e23b62e79318296ebab91bff130379d248ada57f044f77e72ccd 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":"v1789796056710","kind":"published-quote","locale":"en","page":"theme:atupri/quality/en","quote":"It's a shame the app is getting worse rather than better","rating":2,"review_date":"2025-12-16","source":"Google Play","source_url":"https://play.google.com/store/apps/details?id=ch.atupri.myatupri","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 (2f068f3de56b…), 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.