Skip to content

blog: what "publicly verifiable" means for zkTLS - #62

Merged
heeckhau merged 3 commits into
masterfrom
blog/public-verifiability
Jun 17, 2026
Merged

blog: what "publicly verifiable" means for zkTLS#62
heeckhau merged 3 commits into
masterfrom
blog/public-verifiability

Conversation

@heeckhau

@heeckhau heeckhau commented Jun 8, 2026

Copy link
Copy Markdown
Member

Summary

New blog post: "Zero-knowledge ≠ trustless: what "publicly verifiable" means for zkTLS."

A zkTLS proof isn't trustless math anyone can check; it's a designated-verifier attestation, so "publicly verifiable" means verifiable by anyone who trusts the verifier that witnessed the session. The post covers why an in-session witness is unavoidable, the verifier vs. notary vs. attestation-verifier distinction, where zero-knowledge does and doesn't help, and how to minimize the trust you take on.

Notes

  • Figures are placeholders. The three light/dark diagrams (self_verify, delegated_verifier, and the new witness_needed) will be polished once we've agreed on the text.
  • Prose is intentionally em-dash-free.
  • Haven't run a full docusaurus build — recommend a local preview to confirm figures render in both themes.

heeckhau added 2 commits June 16, 2026 10:03
New post explaining that a zkTLS proof is a designated-verifier attestation, not trustless math: "publicly verifiable" means verifiable by anyone who trusts the verifier that witnessed the session. Covers why an in-session witness is unavoidable, the verifier vs. notary vs. attestation-verifier distinction, where zero-knowledge does and does not help, and how to minimize the trust you take on.

Includes three light/dark diagrams (self-verify, delegated verifier, and a new witness-needed contrast) authored in draw.io and exported via convert_all.sh.
@heeckhau
heeckhau force-pushed the blog/public-verifiability branch from 76e85ce to 7b63670 Compare June 16, 2026 08:27
@themighty1

Copy link
Copy Markdown
Member

Deleted my prev comment to suggest cleaner terminology.

zkTLS proof - the mpc/proxy-tls designated verifier artifact.
zkTLS attestation - the publicly verifiable artifact.

The description could be changed to something like

"A zkTLS proof is a non-transferable claim meaningful only to the party who witnessed the TLS connection. The witnessing party can make the claim transferable and publicly verifiable by issuing an attestation. Here we explore why a witnessing party in unavoidable"

Address PR feedback by stating explicitly that an in-session proof
convinces only the witness, while signing it into an attestation is
what makes the claim portable. Keeps the colloquial "zkTLS proof"
wording rather than renaming the concept.
@heeckhau
heeckhau merged commit 27cab7b into master Jun 17, 2026
1 check passed
@heeckhau
heeckhau deleted the blog/public-verifiability branch June 17, 2026 08:05
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants