blog: Where does your trust live? Cryptographic soundness and the TEE trade - #63
Conversation
…ness vs TEEs A friendly, principle-first piece on Peer's zkTLS->TEE switch: same on-chain integrity, but privacy moves from a structural/cryptographic guarantee (plaintext never leaves the device) to one contingent on a signature. Includes the 'where the plaintext lives' and 'three anchors' diagrams (light/dark), and the 'you can have both' synthesis (zkTLS verifier inside a TEE). Cross-links the public-verifiability companion post (#62).
… the two attestation signatures - Attribute the thirty-second figure to Peer's own framing, since the post later notes it comes from an older proxy implementation - Separate the attestor's payment signature (shared, strengthened by the TEE) from the enclave attestation document the client trusts before handing over the credential (TEE-only) - Reframe the forgery scenario as a credential theft, not a forged payment, so the confidentiality stakes are explicit - Update figure SVGs
… cross-link - Rename folder to 2026-06-19 (publishes after the merged companion post) - Update companion-post link to its merged slug /blog/2026/06/17/public-verifiability
- Add an upfront "two promises" framing box and label the two key
sections "Integrity:" and "Privacy:" so the reader gets the map first.
- Open on the trust question rather than speed; recast the intro stance
("we are not neutral") and drop the "attack" framing.
- Call Peer the poster child for production zkTLS.
- Accuracy fixes: credential reaches only the server it logs into (not
"never leaves the device"); forging an attestation also means the
vendor's signing keys, not just breaking hardware; "Which TEE you pick"
instead of "the brand on the chip"; drop the bug-immunity overclaim;
scope the speed claim to Peer's payment case instead of asserting user
behavior.
- Rework selective disclosure structurally ("reveal only what is
necessary"); distinguish forged payment (integrity) from stolen
credential (privacy) without dismissing either.
- Close "You can have both" on the synthesis; rhetorical-question lead-in.
- Add the "why not both?" image; update plaintext_boundary diagram label
to match the prose; remove the arm-wrestle figure.
b183f08 to
9ff1b88
Compare
|
Thanks for the thoughtful writeup. I agree with the high-level distinction here: zkTLS and TEE-TLS put trust in different places. A few counterpoints / clarifications from the Peer side:
I would phrase the Peer position as: TEE-TLS is not the same formal privacy model as zkTLS. It is a pragmatic trust shift: user secrets move from "never leave the device" to "only enter a remotely attested enclave that the operator cannot inspect." Reasonable people can prefer the zkTLS model, but "privacy is just an operator promise" or "Peer can see credentials" is not accurate. |
…phasis cleanup - credit Peer's 30s as a real production figure (not a benchmark) from an older proxy implementation - state Nitro isolation plainly (Peer cannot read enclave memory); the critique is the shifted basis of privacy, not that Peer sees credentials - frame the forged-attestation case as an AWS signature-chain break, not a unilateral operator move; refocus the closer on 'no secret to leak' - note the enclave validates the response before signing - split terminology: 'attestor's signature' (integrity output) vs 'attestation' (TEE self-attestation), post-wide - tighten bold to labels and coined terms only; move conceptual contrasts to italic; de-italicize quoted text - set post date to 2026-06-23
Important
Merge #62 (companion post on public verifiability) first — this post links to it.
Summary
New blog post examining Peer's move from zkTLS to a TEE (AWS Nitro Enclaves) for payment verification.
Includes light/dark figures for the plaintext boundary and three-anchors diagrams.