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.

“Lots of disconnections or servers not responding.”

Checks (re-run on this request)

Proof data

Record hash (SHA-256)
11826ad8b5733c680a328f182f0c0688ff0174e16603a3bc6455c2644c0b7bc1
Signature (Ed25519, base64)
DXmTcwG6dLptFvJq7JJzp5Gp0BlNLt+3mftOcFz1JTUlY/srTI2AspkJqnSvwhhLJ+jgFvK+ihs6zRerWahZAg==
Merkle root
d4c4aaf139801abe64089c6a646a11881b578559d9cb7d88d2fc9332bf4b830b
Merkle path
["11871bc7494e222b7d05bfa32ca9b6ba9ef46167e95567468f722d902caf981e","7f54025a39182f2b52282df80dc7e5cda8e6baf22a769c7037410fd9a7eaca0d","310d4f8e6a8fc9cd88a09d2c765c796f3f040dcfae3b37e3205aa30c0fbaee5c","ecbc64f62d97ddb2a6fff4842dbf8cbf78d33f517870d97797211349a19188b4","e508c2043eca58140c344c5f4aefc64638fdedfe87abd52eb24a3b8a42424a81","04fb4a23fe5d67ec3688d285af4a7dd5971a8174c30bf5c38a512368f972bc02","fe0861a024f47c6b86b1ac660a081ad7134c1640c19f7da2dbf15bfdafcb0138","4e67e09a0b609269a5049df814b062f8c0177dd0bc589b7e18e2d01a2eeb355b","7200fb040d16a24a71d536a92d5610a8cd88682e70d131774831e27cb0b48b7c","d108527b61af7b939721814263525e1f662010f84e1312fe201583e007a245c9","612d08b8d05702daec4d8791a8c0f8711da13b9e0aab194f6280cb89a8db2aef","34219eeded0fbdad71a4c54612fcdf090ca93e67f7f8e7798421a503a9d4cdfb","6100b8f7cb9a0ad1a2de57d39552d426d438448f64577a5ca4cb2472f553358d","ef527f45d797e2d831211fa20aa17755e8de8cd626bcb27abeeea7640d159dbe","9b3fe954f7b51d7ce6fa763f00e1815ec4c70f892ca128b9deb83a2e107b9fb2"]
Anchored
2026-09-02
Public log entry
search.sigstore.dev, log index 2683384390 · entry 108e9186e8c5677ab9ad…
Expected log hash
911a6ed7ed419f928c9567229b2f9168f943e91a3951514581f7a3ba93db232b 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":"v1788324112523","kind":"published-quote","locale":"en","page":"theme:proton/communication/en","quote":"Lots of disconnections or servers not responding.","rating":3,"review_date":"2026-08-04","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 (d4c4aaf13980…), 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.