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 has made my routine much easier.”

Checks (re-run on this request)

Proof data

Record hash (SHA-256)
390280d71beee04b0cb284e0fe643a8bf6adcf048878a7dc49f2985d31394c5b
Signature (Ed25519, base64)
aKi/K8lqWpn3J9B09zaiwiehVKSlP8JdtlSMIKVM/N5VRS65ods2Z39ZIc0IwOUWYqKXzeYS23lzgW0LLvtWDw==
Merkle root
2f068f3de56bebe7a575ba4a979c9244445d2350140e36238e088fa40fbfdd88
Merkle path
["39048f9fdbb762c5cddddd927ec48ca47a042b65e01f2790bf3eedca70ef0873","434509f254c5f5e9c1f55fe09678718dc01140f0e62577ebe5467749935b44ef","e0db4ac9335b01d96520403fcde042cdc695193e233d87488f906393fcb944bd","c0abb9e573574be02118092b84190711082c508764c3d86db75338e8967d9723","2d39f95666ecf65bc749cfb80020e8669cb2ef8e92f4216dd00599aae34ffb41","af3572a50afe7bb4d3712939a4c232705f90861e24d36214e53588dc398d4be7","070326209cee12a342b0156d45c72a4da40d594cca5f061644bdb28b6ff15727","2a7e5a5eb4037fe700db55ab05e117d56b78b1d9b83d488ceca2501bb0507b0e","d6062516f09eaa2bc985b69adae53c2a4922ab018ac49fd0870ca0aa251784d8","0102e9d67652257fe7827ba15907621003e566d8b6c7c81f0ec6b779d2022e7d","160c0427cdb188ce7f937f06435fa5996b6a19b4bdc7052b0b1e205016d7e024","860272714a28696648d99767aad91d735a5f60322d9fa60ef0218fd7ac5b02f8","67b7564c01b814702c17628742fb6a8cbfa0e8a213c06511e31c90cf9f3e3578","03c5fc675733b417d9af5e071de3aba38ae7f09fa5781cbd0133ff9d4e234e36","98191c82333f4385e47f318835e01d44ca8835262c6d0df40edfd5f6a4dc5c19"]
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:rappi/fit/en","quote":"It has made my routine much easier.","rating":5,"review_date":"2026-07-08","source":"Google Play","source_url":"https://play.google.com/store/apps/details?id=com.grability.rappi","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.