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.

“The free plan is perfectly sufficient for an average user”

Checks (re-run on this request)

Proof data

Record hash (SHA-256)
161905362b3bc291821c39e8f8cad511c617cba2d0e5a7205e45dc5140a57a32
Signature (Ed25519, base64)
xhvdezx5Z22Wl7EKgDnnpxN6TRhdkhoG7oksdzNUgnQrKkqnUuoFBQjXUtAk1tXtkzcB9K5LzSahHKB0Dq8jDg==
Merkle root
6ebb2d3fb78e4a08533ac6b6852f3c84687141ae9b0e78424d88bb4161267bbd
Merkle path
["16165b1314de040c7e2c253753280c3b658f8eb5aeafe1e11abdfa6b5c592096","f0cb7ab1bedaa40344921a5d257941504d4e459d8353f885905d509b7fc49fb7","7d616e1c12bfcd26a9e5ccd8e8af9cd2baaa21f98a0e87d30829317474d4ab5f","c41097f9d8c3fc7c28c4e280d4fbdcb4ae5b8689273f3046f58bff96147d7368","f089e8ff6f55d1828f7fea97f61e4bd97cda5cf194e933e67ca5eaba942001c6","a3d0ef11f9ac53c030f6191fdc742aae5dec8527dd05bfbf720a61e27ebfaa76","2b7cdbf81c8a2735ca2c667916015b3e21fbabdea55cd640cc629533467a1898","2374ddc1dd8e28ab4564b07b29225b263a1ee91ee02604042e1eb6ebd60f88f2","056565e321825599e14d605aa13f03bdbd6c67aeb7f18c33314ffd3027823c8e","8ab4829fff01c9e69a86cbacaf8f4e8d04582fac8508110de65ddc964958ccc9","aa2e036eb98bd52190de0b95f7750b5dc663ed2d2f55dbf32cce04f860e4b44e","fc73c2b0627636c8f676f008d05fbbd4dcfb7ee0af08432d0bea252601b2007e","b2809ea8af334e57adb596cf07ef2c411ca41ee72761a0ae0fbef01d75a71a23","32d6dd564d479cc6b7834d44d5078d8ebc72c40210e72f0d380fac04d2d8e87d"]
Anchored
2026-10-16
Public log entry
search.sigstore.dev, log index 3273209361 · entry 108e9186e8c5677a732b…
Expected log hash
bdbef22d23477d2ccfe2ed182ce8ec54934b3bae489c9913db850af171e33062 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":"v1792121074379","kind":"published-quote","locale":"en","page":"brand:bitwarden","quote":"The free plan is perfectly sufficient for an average user","rating":5,"review_date":"2026-08-28","source":"Apple App Store","source_url":"https://apps.apple.com/pl/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 (6ebb2d3fb78e…), 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.