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.

“app doesn't even let me log in”

Checks (re-run on this request)

Proof data

Record hash (SHA-256)
158ed2d8b5b154c454e6b2e9eda4766d628f8c437f5b65dc716a4a7e80244810
Signature (Ed25519, base64)
CeR4APiZTlubrHX42mjUBQYceG+sENUWLcjMFIiRNEC6DdU90WKlHaX9j8lBHAloA5SU4QjhMng9WrVSiWFJCw==
Merkle root
9f3bf01edb9d597e26c01d8c9281f8ebd9083c8348fa27bf99e2d3d27a8b9c8c
Merkle path
["158e029bf9674a1f5a2fe4a11665d296d4fb2de05ed278bfa43bd821eb5afd92","d7325a13379b7d398bd1c730781dbfef215c719ae5a71e41881448dd9dd42f97","2ec621f0fdbb279705772e0617c70cbd882649c60c2d59e02eaae06bd3f9fa84","889da4db74a236293f2244e70f6e1c1a82fd7f093fd04255678cbbd183ee9b10","855459fbcab27917722c81909ffbb0f91870d0754bd1e8f7fa5a544f1c06d771","213d3d29ece14617405ccae424036580b8521ba06468178cc26409d70b9c8d4f","5aa79ef28c8dfd712ea8b5f85fe7999faead09c61aeeba0e68d4979bcc9c6c97","f7332e686fe2e697a9c0bfdc4d0e08f1ab6d91515b31c17c0b1e88ca6dddcfa3","cc1916e2e73202dcf951f43ab49e6ea28a7899898156222048ec9d0dd36c810b","8b87de42bb4f81124d1e15ccec2f3a8ac288ec3a6d542941642a005bc331543e","6d0b678821033ea2f2a00b8fb5d6ada599be1308b9e29bcdc09d5578b3ab5cb2","9311e5bb0d47db2583c7dbd405f5122ce8db6d1193bd1174bd29dda5341d2dab","ccd3f6a502c459e3bafdbecf5a4380782b0a6666d918776f3c595a5cb05f3e9d"]
Anchored
2026-11-03
Public log entry
search.sigstore.dev, log index 3666748782 · entry 108e9186e8c5677aefa5…
Expected log hash
5b49e28274358602b99f52ab121ad302428fe63b23ca19ecf9d795208846c99b 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":"v1793702050700","kind":"published-quote","locale":"en","page":"brand:bitwarden","quote":"app doesn't even let me log in","rating":1,"review_date":"2026-09-05","source":"Google Play","source_url":"https://play.google.com/store/apps/details?id=com.x8bit.bitwarden","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 (9f3bf01edb9d…), 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.