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.

“very bad stability always disconnecting and reconnecting”

Checks (re-run on this request)

Proof data

Record hash (SHA-256)
10336ffcf67c17a6eebcd4ef38bcbe4d8d593b9c9467472678ee4865daef2bc6
Signature (Ed25519, base64)
nbloTJuDkdKtJqCh4ZUkV2z9QGp1BO37hQPvLaRj6MTvnKq9sNjMjDBbtumtEg/o1ORXfjdSN4ue8FrEDTshCw==
Merkle root
72711ef72b8a7ab084630b9628ceb2defcf0aae546304d44ed173db57929457f
Merkle path
["10353798d4ef4637b45e655e4c79f89bb65662bb49f401176cb0ac69812926cb","1c2a490a706c5812a8f8a0bcf09e3939d8a53bea53715150cedece1fd6e822d5","aed0e2d7d6af63209ae0df62bd6ed4b33dcf820fcfc55a89a46adc7158201ae4","83bdc19331e2652ff0860fe808a6a11b98420bac994484522b2629876ad068bf","c6ca24bb10274b3f80f776d506250041d0286d1708d57db976d5f53a8cf335b2","19bd361090cd0b4b86130a591856e9d2936758eb39501ecbd9c1a794553bdf2c","09cd09aa19fd8b9f9779bb842a10df31da5fdc06f38de5923e74e1e577c13813","35757baa969dcfb81e772ebf267a4eb0f831444e8c7d0776f4cee2162fcc8adf","69aece49656a654bb163debfbffd81305ff72ae7d26e7db2fd2831100c4869a2","41d93ec6bea3e2ed508aabd7188735f8791ee3884498dcc84efae6a8a85617f0","8d50227300aba901b02912a7ab4c50ac2b372ca5d571f0e88fddfd66fc13b079","dfea71f700e183bb3cd9a8a3044acd27e534141e08568964ea4e93e0793b4654","135f944fcf4a92d6f5a1944e44ad8a4edfeca6c93156b3f0cac35c7e930312a7","768946b507e7dea873e9570265486799703565faf3780e57d953562adfb568fa","6eb04938b6a483bb163369a1d918b32576dde0943755b89bf4c6d18743828ba3"]
Anchored
2026-08-19
Public log entry
search.sigstore.dev, log index 2514130917 · entry 108e9186e8c5677a3273…
Expected log hash
65ba51eff926c65ed0ce093a942d84c628d811a59302f32867c6589627e47792 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":"v1787124488047","kind":"published-quote","locale":"de","page":"subtheme:proton/quality/vpn-geschwindigkeit-server/de","quote":"very bad stability always disconnecting and reconnecting","rating":1,"review_date":"2026-08-10","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 (72711ef72b8a…), 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.