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.

“When using Bitwarden on iOS you land in an infinite loop when trying to autofill a password.”

Checks (re-run on this request)

Proof data

Record hash (SHA-256)
8aba3b9fc8bc13174e1fe72b9c3fa371d1472dc9c6547bc64feef19f406d016d
Signature (Ed25519, base64)
4bc9N4WaJC/arjwnx2/lSEPtWasIe8PSUmSEeYU1tZ2emHnrSaMNYm8fwMRzQtVtxBjJqWL9MDiMv8dJaAojBw==
Merkle root
d312d00ed6ab2beb6e18f20d8087ad3474eb8b04b26d5ad949e9237bf3ca4c52
Merkle path
["8ab430f5d4db3dd437c5dc89026267a481728f2d29261db98e2687b2a5ccd763","f5dc8f215084163766110fe6fff133883272dacca35da1987b38ed5b6b039cf3","bebd7dd3814792949df9cfb8613649bdf79262a1e5ad70a93e1e714bd6408abb","92c8221c22c59452b76459abcd8942565f3676f80b5aa110a6333b3ba6698374","a44fa2b05c1ea78cce4568010e40fa12870f432d22be0d078482433b91c19461","18b89028e7bd733e46e260bc04fd4e551f26485ae452309cf0ce191b38f7528f","c3a125283ec32f293e366f5b04b0fbc73f7a9f1e4f6a8bdb7d6fc98df164a8a2","5cf7bae175428f2d40f0e20c6b7ee8cf5d5803133a26578af7353f4d8d8142ad","6d1f7e4beafe577f83e65ae8414b8a89655a7261cb6c901bf9aafda473bc2ffd","9afbea9e094fe44a88608bc194e78a8a1c2a1d873f9cbf47502fc0edb34a2fa6","7a3e7276ec6010c497e45539787b7d1805ae12fe276c580fd0936ec265a44fc9","a28fb3667d0080c2e20816a3860082547d558402a87b0ec8507ad2c8e33f6370","5ee45a9576409ffb8d801d5d47338bed83678e9a8a2fe9972d7225dc319a088a","ac3e8eb9a4dcd818facade9f7856ab850324ee2662bf990758158396deb094a5","799c0ef4fcc26840c2a1a2c1ea34f7ce94ca70a3893bbb37f42757477cf242fc"]
Anchored
2026-09-29
Public log entry
search.sigstore.dev, log index 2991846025 · entry 108e9186e8c5677a5f08…
Expected log hash
321e41cd200068478c5cf6f353f00dbd75153d3d8a640e241b1a6e8e4f8ac2ea 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":"v1790574513694","kind":"published-quote","locale":"en","page":"theme:bitwarden/quality/en","quote":"When using Bitwarden on iOS you land in an infinite loop when trying to autofill a password.","rating":1,"review_date":"2026-08-30","source":"Apple App Store","source_url":"https://apps.apple.com/at/app/id1137397744?see-all=reviews","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 (d312d00ed6ab…), 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.