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.

“Renewing process is convoluted and designed for you to auto-renew at full price.”

Checks (re-run on this request)

Proof data

Record hash (SHA-256)
9fe5ab1f650d59a256705d583fd0def1c9d8847d56b31c2924557f9e803e48d8
Signature (Ed25519, base64)
1omLJY/83hdhZH2DkbHj1MPHmd8LnSma7yr8exOcxYGtBFFRYUO1YerLDD3/t9DsNCppWVMIhLPUhcryS2jGCg==
Merkle root
68ee5f8618d9ce1aa33f2cb5b6f3145b5f909a3c35a03ccc3d10e979b2f81082
Merkle path
["9fe618f9202d8da9ac4f2835d327450b7a60f8ffaee027206d1e01527dcdd26e","862989b06d8ecd9518c1344008d707a2bfb45b724c42db7dec8f863ab9b991aa","b44ca067c3b75a9e94a46c86b90addcc7085c84540e353ef95d4fd75060dab18","8928e593bb43ba85a054ffbcc41714b694e8d75a2cb8374e1b5d571bc5d55b88","24de8b18f5b982aa1ce65c83c9534f31e2fbccfac4a4280d6a014cb3ae11f535","fcb0170bf1c65d371d01cbe3916c57523b977ad87dd330e1d2b7924cd61a38fb","6abb0a1a57f2ac6b26a649930b3c01896fd9bf88ba4316626368929296f0872f","7a375eb488b0834f433afa9f5ebb5266b5e19f59c468dff49d4ec807341ad6e2","db3dd3018f42b12afc39bffdf84ce93e3f13a3cc9e526a4acf2e31b0e22e5310","2ff4810b5cb50c38f3fdbcf8c4fc99c200f16e299bb1745638ddaa0b2b594817","9a44026153c1318f61a9285f0de2776d96a8fcbf6ce7f83af3a53fd6efaaf260","d185783a81c7716a5a5a44729493173b27d91ddb6e267aba0a71a1eaeec19f52","5a596d48ba69503b90d023ad33a47e928bac9c6ec029bb6fb09b632e68ef85aa","d4477c34f5adddf1a37719c473b5e22e5d24c5bd237b4d0a607b953cc77a4964","418554fa0ebde54d6cdcc03145c7126505ed96d3734e8e7ae56dc0dfd8ca0a2e"]
Anchored
2026-10-08
Public log entry
search.sigstore.dev, log index 3140838741 · entry 108e9186e8c5677a4791…
Expected log hash
ca4949400cf2d29b49789563ea2e672fc73762380548d6fd65398e40c0d98728 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":"v1791433229105","kind":"published-quote","locale":"en","page":"brand:surfshark","quote":"Renewing process is convoluted and designed for you to auto-renew at full price.","rating":3,"review_date":"2026-09-03","source":"Google Play","source_url":"https://play.google.com/store/apps/details?id=com.surfshark.vpnclient.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 (68ee5f8618d9…), 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.