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.

“However. I do recommend the family subscription.”

Checks (re-run on this request)

Proof data

Record hash (SHA-256)
880d8235b2e6983efac29102eb48a376b94a8aeb096953bd68be67d069c304b1
Signature (Ed25519, base64)
IyzQTuyOh2n5/DONmHLYvv1fjVQX5xl2nBPAn8rcu90D+Gk6FYOxB3OuAaWiryf6+lMkxBDI6Ho0/qX551JDAw==
Merkle root
e299bf38720a5a91bdf63bbc0205245bccdf3432ab1652c69342549658b7a9ef
Merkle path
["880cfc57729fed5a0ef164006c5a15d641259e0ba7acdb120be66b91ef1ba4e6","356e038ac60ae1b2502e7c3d29679da2498574a52b7a3d426dfe424d5108602c","ca16f62b29ef9eacdb6745c7d36d53ebbb7d5c2fc476620afd18fe795502695f","d1cd75dba5d149c8985f42b853ef7697d2be54f6e0aaf3e3b94d1f37797303bc","20fad3bcd4e061439f02d4b90579f52e54f4e84c857f3be4a7204ed0fab31ed0","996568c903544d8b074385bda7ba2751d0292fa46a4c824d3ae8fb94a299fb8d","ea7c46d8c3e3f0bfff42a2ec0a6f2bcb0500910a3c2013be6f93813f7b31fc3d","c7495dedd30deba167ebb27e504c38cbf6540e59089e1c2c99935d19d3e89a54","a560203c887e015559be6fc431a4e3234744120207a7b3dff122a9ce6121198e","0cf5bec4f5b90c40db010d72dfd5ad44323a66756aab3841164db423d8995b55","3ffdc1ad653f39c0429787d5c91bba35366ff0cac1e131f271cc3308cb191be9","9c56efa7498f22733bd81d9e1a9aa96f7fa30f782f3e2c5dc658ff683f136fda","3fdd31064998e61048d534909957bf68a4f9bbe35571f6d185756d8acc2a5420","aa4bbeb87247c2797626ab02a549451da6dfce4dcb854a36fdcc601e3e788772","bce5d442c07de6307e5ea8947098e74ce88c2246eda5e5fc1015a6d7519228a8"]
Anchored
2026-09-21
Public log entry
search.sigstore.dev, log index 2904877428 · entry 108e9186e8c5677ab408…
Expected log hash
d020708737f55ccdf49203f373fcbcefe8158cc388605556fbfda3c365de7360 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":"v1789881486272","kind":"published-quote","locale":"en","page":"product:bitwarden/family/en","quote":"However. I do recommend the family subscription.","rating":5,"review_date":"2026-05-18","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 (e299bf38720a…), 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.