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.

“Account status did not change after making the payment”

Checks (re-run on this request)

Proof data

Record hash (SHA-256)
0faaff22a97dfb3086dceeb3c2938b5b33b0a523cd7f2a5053dae77ffd5b6741
Signature (Ed25519, base64)
GW0/dJC8fhTzIK1tcM8Z9TqMUBuPEY25MR/Rcp9D2Ya6sNmU1w19jzrmtdnsyp5OYxgfQGm9h7uoxv7FbP2IAw==
Merkle root
25b46ff2419988f674720a0d9957bbe6130bde21af352d10a6eb7fa1bd87b90b
Merkle path
["0faa0c5da81b43af025e69ad033fd1689bb24b57a3d1bcb0bb7bd0c70eb3e323","4b9952b8ed5a78ba35b7b0871022e7f8284bd2d3cc37f117e88205ebce56c96d","19fe7eea818aef641f6c0da6ead85b3a5c11a71f7ecab5629888f7758585a499","109793d38e7e88a63ef39c9075dbc7eaa26935af9c8a63e3f35695e5d213f29d","9a232263b7c1572fc2e2289a2a48bb258b8acf8f63b010338c256ea0084bca9a","520cd30ea72fb96cbfb65331b094b884abfb624a740f07472853916a8c3746f4","ceb2de5727a63a3a8866313c0da79217327b0f46d6de210cfe08d1d56600a27f","f90b18ee77974a52ee7daddc3cf46048eebf9d5c5b5c44516abe596b34062375","9ba396dd9330dbf7ec196ef9eef2a4d448fca35445e5e720b8f7e1d8e0cd41ad","a655357a4fe07d08783a0fa9943fe9a962aa6d278d45703c2ff3f9f0015a43b6","45475f4d9d834e919aedeb1e785bf862858b10c6273f9426be0b555235a9d231","a164ca95d37c66c485497740b3dd1b0f6d28a07a484c54c912e7c5e25c0c1d11","6a6f9d49462185c4ee2e85df13dc5c42a5069efd64c620310ba383253f8c37c5","5d4fccfce6f7964a21f73dab907adaf1b4bab75dc36256f7e7c2fc9e80b93292","dd8f1dac20e6d5f290eec3d4a0a2acb8f82d36d90a7d470d163b0eb872b09e9e"]
Anchored
2026-08-28
Public log entry
search.sigstore.dev, log index 2621712605 · entry 108e9186e8c5677af8cf…
Expected log hash
e2d66cf3e23cbd8a996b6d44d305e387793b999542b5186c00c4ffbadc30715c 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":"v1787891207850","kind":"published-quote","locale":"en","page":"theme:proton/billing/en","quote":"Account status did not change after making the payment","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 (25b46ff24199…), 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.