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.

“I really love this app for my privacy”

Checks (re-run on this request)

Proof data

Record hash (SHA-256)
e0c2019f6b4360937324eb8e944403a0bff4f45fb3a097436b6a552277d42a5c
Signature (Ed25519, base64)
isUbD+KLuHwqRTUyFzT+zMf14yLU2/Yhzf+JYritPsi0YlWSI3wDLj35/qyXRh7KWT1M9LoHuGWNnQHnpsPYDA==
Merkle root
4dc0bd79ba3e9442f7f1feb21f347e2f6fdbc72e99098aa5164776a6202654a8
Merkle path
["e0bf1e96c1b89fe13078688a68083880142d4d7a2ec16f0c058eeca88fe6aaf6","36e8a2ba3d687fec198d72eb98169f88ccba9330b371545ef90d708136bd7899","3b4296b3604916532158ef1cd664a5d3b62b2bc3391f8d6a21ea9d70d24d6439","8dfb889f236bc226f446d85f867810eab8ed46792b8d43f972e87e097d7962d4","c0e14d2de8b8638db79a162a78de22c2bc9dd516dd92fc14ebae7ff9ab58bbac","667ceec415447d5b76e0552d86d795a37827fcdf4e2933276c3a969687c5b091","03b3c015b05bf019892ef7af1be771a1c0b0f3d795f0079eb20a25cd1f65370e","778015fa3f5a00bcf637c03b452b346b6c001bf1aa4449119e3aef2bb25b0724","9777aae84d9a833d68c8b76860afc1fa6109f6fdc2f4eef9b21daeeadf0087db","86d9ae3fabb61daefa8016f66e607676465169152573687c120ea636477c0dad","c8cf00a184ec5898037ccb17381471e2b933ce85122c1ee8edca396406b5ef11","482bdf1391d0b24847060d923fe2ccef8409f6ecea289eb781f1c7381a2d2a53","92ce7b112a5230537628edf62c10d3699180f9c58135530242c50c3d07cb3a9c","6ca8568b4e7c7e4e3b794231ecbe4a3822994a26c5f3f7fd0671946fee25f414","66f93059eee3676095d6925b7cc2fe3b97c348e816a4d3ce47c4b00902d3a227"]
Anchored
2026-09-10
Public log entry
search.sigstore.dev, log index 2776103867 · entry 108e9186e8c5677acd4f…
Expected log hash
2498329b7eaf275d309293dfbac35d05dfb8a55c65956add8448561c05945f28 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":"v1788848066028","kind":"published-quote","locale":"en","page":"product:bitwarden/agentic-ai-security/en","quote":"I really love this app for my privacy","rating":5,"review_date":"2026-09-01","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 (4dc0bd79ba3e…), 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.