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 only took the free trial and cancelled instantly after”

Checks (re-run on this request)

Proof data

Record hash (SHA-256)
20e007f3a79620add7650a18ac4d0ef93f5a7e9aaf57cf5bfea57413cc6cb914
Signature (Ed25519, base64)
cvo9FpMpjqD7CzTR2paEBSwpZL+WrauC27AUh88ceaU3E/m5L3nP+dIA+GQrKVT7Pa+kbYd2HIC50ic0dHcKDg==
Merkle root
9bf5e8bc71b8f6d2ce627972b9fb81fedd792f7b02f32eb60fb8da440673ef59
Merkle path
["20e1e819bd678570fe3dbcad04f62013385d75ae25aaf29c2db4540c01716ea9","29b0cbf697d28edd281f2572544e2940632cca92a41c2d61865d4abbcf2b127c","feb6b30b597cec5fc45881e1d21810cf70a052ebe3651080ea9298f25bd404d0","0fca375397e62b7cd36be6277b9d19949c06b0d15450c61c7cd903d508c61c6c","589eb0a99938d028bd91c36263a2b7c5d275d21c3474de7b9327536af5858e49","ef9f09c9eda78c251b24fba1e41182e2c078708d3b644c523f35e80938696ee9","2079fa876805f5dd8054aca75fe5c5d9737d0a7b1f813283fec65b1070ab0d8d","d85dee86d2efcb8747cbc5c0edae2cff0e5bf56a7b27916b869ce6fcc4eb967f","69c99a6ba32f9338f62bb9e7ec56857eadba3f8808a97890ce35f80eea15fe0d","a5d59fea3fb2ab64c66e8d19f9e210b772212270768bd65f761204d2876068f8","633dc26335fe45f33f3010a4079a2aa60318ea8374c045a7c9c1cbba090fa33f","53dd6904824ad544916531788d61c0e418742b30a49a317c1dc2fd8a01bbcaae","fb42483682b3119978267e05c9c995226602ecd8627ec630ce52b285c28faff3","09f662acb98b118c251b87092b3ab5baf38f48e2410961a49013a1c2f63f4cf6","1fa7003be7676d7952d939a45bc47245b2ced828dca06428675c885e312c802e"]
Anchored
2026-10-10
Public log entry
search.sigstore.dev, log index 3177778280 · entry 108e9186e8c5677a59b6…
Expected log hash
6b6bda8efa0d998f344024bc1a70908bd21604d8857c81e0a6e6c5b1de7aa565 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":"v1791603230890","kind":"published-quote","locale":"en","page":"brand:storytel","quote":"I only took the free trial and cancelled instantly after","rating":1,"review_date":"2026-03-01","source":"Google Play","source_url":"https://play.google.com/store/apps/details?id=grit.storytel.app","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 (9bf5e8bc71b8…), 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.