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 free version doesn't allow custom color for events”

Checks (re-run on this request)

Proof data

Record hash (SHA-256)
0a1f4c7b38c51aef72b33a20659a90930256a8f4b68a86da9a129024356a6406
Signature (Ed25519, base64)
wlHzsys66p2h6oulHrIrTg71B2SwDvl2UQbEoYUbEtnWW5NcOgBztIWI4l0pCXS7f619PIcj77wMgHGfcI5UAg==
Merkle root
eeae4c43ae7ab0c29c10de74b2463aacd3a5fdc1b3d5af1f0cfc9c44408c3d2c
Merkle path
["0a151ac039ad63cb9d224478278b3ab84480582e2d25efe3c1fa0e6111653892","eec9126aea4f88bb2960e29085907430531f3d3b75969d6af408e829e92969f6","025b598082c50404cc61c0b03bad7f8c4725ae13437535ee9c28316b9c70b6bb","45eabde073475bb63c25547d8756a6787954be3b31bde065cabcb4184cdd6457","af16bd3c47a95515e771e3d3100999bf5f258ab6c45d3242c150300b7d0ad438","6296c0d8fc25107df2503cde483fe564511098d150b223d11e8a68be2e1ed723","7c8ea6229a02df16f46f74b0bcd65d41f4444344906a55e7233b13dee2a1e2e4","08acb86615fa37fc8c98289bdfdbe34d04b041874ef2c34877ff5d8ec75ec0cd","a2283349f1f990291d5adeb27c3c1283ce93140e9de7882d15432889541eab3d","80f98d96774d7be8166538cb14f77168fe974caee0af9c812f1466717ee6c5da","226f68e6f73ac44a65f90ada9b5cb7a32d8fad60a39252fc4793179b64d9da05","66e2f9e97f7287faee8e69ba5b721fce1f6f2784e8d5caead2c36152f02776a6","09ce2032efd09c421ff5e19e5f8876b49dd7ddefb2240728cfc215a6585cd9c9","9147eb1ea2bb6aaaff51700a1e53c8abaa5e7cab4502c6a4e1f7fda7aaeedc63","8d2fad53fc3e7e38908cbd16989002a31ec7c97679dda7189a08552bb7f22778"]
Anchored
2026-08-25
Public log entry
search.sigstore.dev, log index 2582625066 · entry 108e9186e8c5677a8c30…
Expected log hash
0b31ace64a4c196ffe669b6f1b426aa3540d319d39e67b6031cad355cff0975c 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":"v1787627443698","kind":"published-quote","locale":"en","page":"product:proton/proton-calendar/en","quote":"the free version doesn't allow custom color for events","rating":3,"review_date":"2026-08-05","source":"Google Play","source_url":"https://play.google.com/store/apps/details?id=me.proton.android.calendar","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 (eeae4c43ae7a…), 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.