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)
16d3b0acabc7515fcdcd1df0dafe9c1ecfd36bc46167464f4a3e8d6d546f4df3
Signature (Ed25519, base64)
YYN2UdQsgWk6MhjISEZ07HqDR027c0+V2GtSawyvNahWt0mvsB4lxMVZP4j/H+XPzXsAaAQwRbH8/YhbajqvAQ==
Merkle root
2398b9ffe5a3df5012483239ae50d07265a8714a6b9a03ccf48b3559c47e03cc
Merkle path
["16d7bc43c9288336fcf02b32ad96d1cb477f61c64a46828b456495222cce78d2","4969fe4d33df3c54b5e6af49ae49e824ddb33c9580d82350567b33f5739dcf09","b342f529403c72d937e9250e175af44f721ebff8fca84f8239c1cd3773871177","dcdb508b4260508c2368f00b01391854336c057213b8c596133d0cd8abba9239","273f2dc37c26224bbb60f12a222dbd474c4afb6a8f2dd6f37475ab0f57d8b8e6","c921901034cb781010ebc500268ff70ddc0a8f85cd953778275c28712d5ed37f","4be412b133f1068d040abad9d22829cb2550ad68614986d7bc57776ceeae974e","6c3b80d1939cf6e29dda25ccea201f91280d34b1b1a3bc93097f549a259ecadd","d11c8591c3c2fba07df759bd8d2afc3ea4691e3da6a69ce1bb8ea4159271bd0c","0060a9d0204afa146108afd7c471dd439426ec51f9eed1fc598da8bbd67ba42d","a505e83ead23bb585f8c086da9b8f713935fae2b0f0246680b2710029f91a4df","3c9498483c19a648725a0d444d70aacd539e3c6670689e94505e87b6aa5f9803","69e20c73bdb345f66641353c13ba7e73f98bd05396ec371f55992c40dd6b22bd"]
Anchored
2026-11-03
Public log entry
search.sigstore.dev, log index 3666689888 · entry 108e9186e8c5677add57…
Expected log hash
081173480bb584ab401065f32774d38ee3dfdcda0f372573695ae49a257a2dc0 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":"v1793701859167","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 (2398b9ffe5a3…), 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.