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 type my password correctly.”

Checks (re-run on this request)

Proof data

Record hash (SHA-256)
16e551129c5b34771a052da822e1a109f563bf8ffef0ce3ee25e9ba9d2080b76
Signature (Ed25519, base64)
+3KHs7PKrhqez7EtHtx20PUxt+xZo2rMHLaHXL4tilivzs9tx3G5X2SzEM82GZTl8sbtMvk2pPy4dU6ZJl+5CA==
Merkle root
4591ccf5fcdb01ed421243d02df5f30203ce391c077d4ade1ff5ee97e69e252d
Merkle path
["16ee43e944ce3c92a438f9293d3027584e6e8872e8c7c114e4960a0923b0280a","56b91e7782646aa09819218318506f16db78037639892cc92d602e1f1edf23d7","30d0c3255abbbf353bf98037a5df780ff8c5a6768da478ccb86784a65d8f1433","720e6f777942c1105709f648d51732cdb3e40863e49cc650e83e60dadd4af5f5","0e969b5a1a320a023fa698dfc168097e53b7bd983c4b5c5f7af28ce64bfec0fc","0e166fc0d2330f5a421e64ca5d523b9e055b502fa187639402339165230d1e89","3120e73b64cb7bb15b51755bbec62e62adde8802fc656d66f12d762cf6831026","b97da350b9dad43504e93bf9b528bcf5f2c4debf8dcac92a1a20f9007c820e98","0e0285a548f7656c1f7348356954cfc8cb51831eadd9f122b7803581ad681b15","00d983fc7254b6831c8727262155e83ed73067ee761ee10b8ea341da26f2b736","c30f42bd5edd5503274d38897e30e0fd203a58a1d481887545f4163af761a24b","152c0493178cf6b4404f105673ebfb1205dcd47946cf0dc7bed8ccf29e922fd8","d52611af45c7ef524ab63e970b046a1061f8173af77bce3332bb854291964d99","04789af0aae7a52bbc7d5e129e675a1c89df82999aa606ccdd23b89f718c4ff3"]
Anchored
2026-10-16
Public log entry
search.sigstore.dev, log index 3273084324 · entry 108e9186e8c5677a4edd…
Expected log hash
52df3e0fd214b96d6c701f5f337408916b7566fa39826e2404f759c290be1eab 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":"v1792120358245","kind":"published-quote","locale":"en","page":"brand:bitwarden","quote":"I type my password correctly.","rating":1,"review_date":"2026-08-30","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 (4591ccf5fcdb…), 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.