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.

“The app is great, but the “30 day free trial” offer is misleading.”

Checks (re-run on this request)

Proof data

Record hash (SHA-256)
132d1bb1debe61d33883a991b05e7d7f1b0e65e09310e1b3d2981ec41c222fd5
Signature (Ed25519, base64)
/Pv2FZIBZ2d2TYB6Rp2T2A7tBCTPRryOY6b0XSUJqyfQKN6rgDGv+OHPNJni86fVssIqc2V6N9rbpvwjctUpBw==
Merkle root
6471d9991f0d0aacdf442d5cfa660f2886071005e4c3d26a992a3bf38f0a7695
Merkle path
["132c74884fe70716c73f985ef7a157dac44ff650da6ce1b45d2fedfff29238b5","f75862dfecc1535d67cb8c5401007b3c11532d26cefec812011b9e76e9200014","7f8a7654f6dbd763d4c6104999bf9893b50530f5bcba2f01d11fa448d3630238","253ebef7533b71fa115a83c7d028ac991be5dd3dd15068f73bf2c71c23b6bd45","cbc0b5b03343c44c6886fa217e6106508390f5f44e08ba45517bcc18fb25cead","53b6d4296ced225ebc99051316ba96de49b31dd9def9351e8b8b304b57988dda","3450e5f70a0d35972faa43e3d23469d51a2a52a7da2911c29c91ab93e41e3327","5d9556a401fe2c8f33fafb8e96b5ed81e665a81b61a0e6b69b5673ea3ba9a509","ec5b66ac29374859a2acd1e294d89056ceaa4f443df1da47c4201fcea9bd8302","eaab9df7b4abed3d99ae65879cafa519b5b43091a73ebdb2829169dcd0d1ff6a","39611481640730b1b5b18beb7cf86e0d44eadb01d20ae3ae4c61e20a199593ee","3b30f3c4384c8f930b0902f0837c734e0f4d8aafe820711619a733e25c756cca","f3f4254b899098b98c7590d670f5fc0f992a4df0218d6bbab4ffa5ea42255835","930b7277e2ba0f1d182f8e7d0daf885f1526e50b29d8791024858ea5581e285b","a2fa997090d23b1f352d383369eee4da3a6661cb0956969a3a99ec5f82390d95"]
Anchored
2026-08-28
Public log entry
search.sigstore.dev, log index 2621523249 · entry 108e9186e8c5677ad576…
Expected log hash
644ce1c7a13e9edd388468f8e29bb74f49a15185930851951709e16eaf23744b 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":"v1787888369667","kind":"published-quote","locale":"en","page":"brand:storytel","quote":"The app is great, but the “30 day free trial” offer is misleading.","rating":2,"review_date":"2026-07-25","source":"Apple App Store","source_url":"https://apps.apple.com/fr/app/id348177651?see-all=reviews","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 (6471d9991f0d…), 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.