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.

“half the time the autofill option doesn't even pop up”

Checks (re-run on this request)

Proof data

Record hash (SHA-256)
3312cc77b85e4002c8002b9225ca1ca49a637252db2901c1c3d55eb7afc86b0e
Signature (Ed25519, base64)
z6DhXsX3awSa6ZYV1KayVSzYTmGNIT+4zEcV/1S3ogQK4yenv7UIJ5LNC0Jh3etpR9UTXzAYgPmOcuwddM7cBA==
Merkle root
a4d47c2a34f6eeba31e2744fb1551fe9a0e34820dfc152f1ad93a68b24759c3a
Merkle path
["3312622381879aeb5169f510dc2b67c68bd645353183f788bb86630f37243c75","1391d2a6138a3343b2101cd9d984474a53fd6507b1aad097383d88de0486103d","050b5e133ab1b1848958e22a5b7e3030b7686c014ceb1a5b952866a399652e24","241ffce9007039407a345f0dddc02d21f9386eb3083aeb002ebc8f51847c6756","817b03f5c8e8c33cdf08a96e0eee0c7201fa0d1a5317f8bf7b5b2dd223533768","2541c2fa380ae88d2dcb008ed15226bdb6e12d43f3639463e37e3192c8995697","d77c17742b261c25c3c9805b290ce77aa80ee3a7fe33232236677e18a849f186","7a3a91868b7b260112a8031131edbf41cf648dcb875a8a5bb225eb06d6a1ac35","a828b1700067853120a039070a89b36b598c4f8a9873e174e7b6eea5802632ee","ea169aeba317f4bfa07d1e583c5d023787b42f31ab973ab9df27cf77e23de7ef","0aadceef0f0d856f742d189406dbaa3aa5c755ebe9fec69552e8b54169d5a407","349e15569e0a1f4fe3a9d16d01f014e54bef7124bbf1f14bdc15063bbedc0e8a","0d7c4faad4992f205f2c1ebb2b0e4b1b7e9d070f1f77d3f8d64b80626c324f46","35108299fffbb5c1a0d86f074b5805457d73da5ec7c848a19bc9a928f6a42a99"]
Anchored
2026-10-16
Public log entry
search.sigstore.dev, log index 3272274666 · entry 108e9186e8c5677a2724…
Expected log hash
d56e71820b4c8c62b755e9f6e3d2b624566d12db6dd1606e99ef55749400c387 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":"v1792036997995","kind":"published-quote","locale":"en","page":"brand:bitwarden","quote":"half the time the autofill option doesn't even pop up","rating":2,"review_date":"2026-08-19","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 (a4d47c2a34f6…), 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.