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.

“all on an unlimited number of devices”

Checks (re-run on this request)

Proof data

Record hash (SHA-256)
21b89fd59e507e7a5c5261d75ed5d8fe958d3abe2d2631392fa791040c5a8ed1
Signature (Ed25519, base64)
uTB4Sibimn0Gmr4/RP7i6Nbfta9XBXZh4rR/dEr4SLoAPmhEyDtGuEft/1kHR8X90erQI0S28O/po9U4mMB9AQ==
Merkle root
eee462924587f8024361bc8d60043805cf5210f8bd2ef7667df06d093552f9e6
Merkle path
["21b896de3f85fb68d3b4ba23f2d88e8562a9540aa542856ddb780bf404c4c924","ad39f1d9d6c49f8740f4dd002a2767d7d284b5a6a76bf7a6ca87746936d26725","178b7768582bcd2ab4ee309cc397811a59ebaa8d338e45b4ab982b6d50829f89","cd3af23fb3ef7c47dcb5f9b803745c83224142f03e3af0850b63d74bf3ca390d","ef523d96cbc5beb7f9adc4feb64b0874f3dbfdfb475ee1b82a90e35f27a71156","fdfeda67f384c92525b6f77870c3726488be683f20cc808241ad40bab30847f8","44e8e517e7c26b32a2cbd6695bb8380e15caa3db418742b96bdc803b4d10f478","e55defdbc21666be4c443322e20e6167d45690120eb178902710cfee29c46129","5aaa93b66017cf2990d9f3faea3f27878c58ad9fd4d6fddbf667cc7dba92ee15","c32baae29025ebd8bbebd4d2913e8b15582d3ac308e6bc08000959705d0984a8","6c1510ff4366f01d9f3cf2782dde2248f86be32b568472e8b059185422448170","5a28204f9372278679ccf6b3ebe28cb3da342cbf292d2015dc590fde73763288","2671ebca141255a0c11a3bc51354d8cd008634f7e59a58a3f3f9dc756141bb9c","a445a39a48770a8fbc5d87a405ed660d401fa810eac6fbd1d284a96f8c7d5503","452f4fcbca19997a15e6a6869c50e026ff02cb90a6ef21da106ee0457e55941a"]
Anchored
2026-10-10
Public log entry
search.sigstore.dev, log index 3178600936 · entry 108e9186e8c5677a6a91…
Expected log hash
f3dccf508afcb5e89d56dabc8c5aead85de215b1b896d057d463ea1c1bdb13a3 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":"v1791606586319","kind":"published-quote","locale":"en","page":"brand:surfshark","quote":"all on an unlimited number of devices","rating":5,"review_date":"2026-09-02","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 (eee462924587…), 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.