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.

“Bitwarden works well on Android and is very easy to use.”

Checks (re-run on this request)

Proof data

Record hash (SHA-256)
21deed86c6ee7cf96c3abd80222a3722c345b9c3bf3cad25e22447ffb9e5670c
Signature (Ed25519, base64)
qGAhbNpV+AnfTALfvqrzPPS6qsTD2HNnzEuM1xUjd6QDpXzrLwLAGyPMPQXvSgO73C6jwcvk5vZIOGhXuWVJCA==
Merkle root
1e69109d842117168677c2c7aab9689ac78923960f86fb642566271a6ebec358
Merkle path
["21dea1b962d47a14208f16b5d716586916de9b6deb23faecc50792a8b4012045","2d162018b3756d9d23fc0253adefbe9d06b2b20d782e5364a2cb8fe3c7852785","1d3450349ab0546bcc780d16cde56644a382c3ee69a0d58a55b46c125714e098","8dacbcf2c0d1a51a383b92db6dd3b2bc2032c406fa772017eb16d80493d1bc61","c0cc235f9093424d88a383bf1e89cf28aaf18e661b451c93483fc171eff574f2","4742d8914ab14c90fc7e8d3c5c76b8fdc582632c2f999a1e54957e73b25e38cf","2bcf667f55f4463a70871cd175e104116fcb800a5b5feeaa572eaee5f91d18f8","1e16ea3f0544499ad54298515aca792cfd6fd4e113e1cf1af0df8656e670d82b","e335a4fe9ad113dcfbd9c9c90214d0f47c30c761e71929a17f4dc9822665a1a4","bb094f12ad8bee60309abca679b6f983a5aa44cc3c57042af88426c6fccf13d5","aa8f2c33d97c0ac8dc7d77c1105a2ffd53ba88f60ca9a946d664919a827dd74c","e8ee33453c42c8b9a0e73dbe9a65f0ef421d213e42b0e7964904098c25de97d6","7c33667a483d5fd3b9ed47c00df3203f479cead457d361a57e3e5a90d1401d8b","4db0e65440b78c494263fe6b915a75fbf2b04ea1cd2fed0eeba5f9cb4589aa37"]
Anchored
2026-10-15
Public log entry
search.sigstore.dev, log index 3258673097 · entry 108e9186e8c5677ab832…
Expected log hash
c57cff5f0f2da5f1c24e09823c0cd10c485830bed55f44ffe5864187f8e896d3 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":"v1792033864449","kind":"published-quote","locale":"en","page":"brand:bitwarden","quote":"Bitwarden works well on Android and is very easy to use.","rating":5,"review_date":"2026-08-31","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 (1e69109d8421…), 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.