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.

“it doesn't open for me, so 1 star”

Checks (re-run on this request)

Proof data

Record hash (SHA-256)
0a0946e8f83bc20c52f02a100ca6e040776b93909c3e5e5888c2ccd417f84e8a
Signature (Ed25519, base64)
Wpo4PAKHhF8S98ozpm4RwU3dYpyX9N3hIv1/L6NBcctPy5Vz6ekRaHZgZfj6/TQcm1XgJE/C/+YbhwSkDpUAAQ==
Merkle root
3dfdf7381c8d7ad52c2e382f4e16b6f321af764e7eaa340297113fa50b9a0792
Merkle path
["0a18acda39d1c2b6646c2d6d732bed30e7eaa751af22a4554c803af79393b8b0","cf5a600ef63ddd51c22a00fe2ada09ac92ee43da8fb3993a4218dd2b0d3be39f","30be7b0cecd2e345daab80c1e4e5faea107f82852bf30f215c6445e06f7c2c79","1d2a99437e3661747b3dc812e67e5e4339879861c2a73dc2609553b49ce7e07a","c9031469dcc7833a7f1832edfbed814638ff21e7fad1a4a2be1098a61a3f3d09","a85a7a99ddfe5dc1f1d4ff58d6715faddfd160a2f6a1ed9daef0fdc1d7f3c24f","ebd76cd250d616196c1415e9c5642c26b4489fc8a390a09c11e3e3989e72d25b","4b8f26f1c04f55e121b1ea19f164e7fe3d1ab9408103e6c423be3ec09ab088f0","a16531ea09ce7a43f06a4a7953e3ff2a85666ce432ee2ef3090bac6154fb1e7c","52ff7e4d47fd44aa1bbbea0639f6052ee70843863a737e5ed1717bc5f18e6ff5","a969e840d4de72a9205543e10906b676b72b32979189e08f13c86083e720650c","81f5340bb1c2a0054bdc2b1c036e86ac1d05247316c250aa07dd756a5b01354f","83e63a6d799b1ceb15f089aa785a41ce6f782296862900005501fb5bd92d886e","81acff1af3c2bfcaf656a4ff2b93eca8121fe44c1d5b5a4dbce370acad78d2b5","377cd45c8c0bf5fb2c54ade6d9c4a053bed5d007e1a30f5279132a3d565864ef"]
Anchored
2026-08-28
Public log entry
search.sigstore.dev, log index 2621946731 · entry 108e9186e8c5677a0a42…
Expected log hash
ea07e2ac95e2432412286c8e9f169e876b2f38f9762d26c0a0ce3cc128edcf3c 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":"v1787893493942","kind":"published-quote","locale":"en","page":"product:proton/proton-vpn/en","quote":"it doesn't open for me, so 1 star","rating":1,"review_date":"2026-08-13","source":"Google Play","source_url":"https://play.google.com/store/apps/details?id=ch.protonvpn.android","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 (3dfdf7381c8d…), 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.