Encrypted, Not Anonymous: A Hands-On Introduction to Confidential Solidity
Duration: NaN:NaN:NaN
Speaker: Aryeh Greenberg
Type: Workshop
Expertise: Some familiarity with the topic
Event: Devcon
Date: Nov 2026
Confidential contracts stopped being theoretical faster than developer intuition adapted. OpenZeppelin Confidential Contracts is at v0.5.3, coprocessors are live on mainnet, and people are writing encrypted-state Solidity with plaintext habits.
We wrote and maintain the library, so this is a tour of our own mistakes, not just our features:
- Your contract stores values it cannot read. require() becomes a branchless select, and every guard you forget succeeds silently.
- Arithmetic wraps instead of reverting. Since we can’t revert on encrypted conditions, our safe-math layer returns encrypted success booleans.
- Disclosure is irreversible. FHE access grants can't be withdrawn, and secrets can’t be forgotten.
Attendees complete a confidential contract, then break it themselves.
Before the session, install Foundry, clone github.com/arr00/devcon8-confidential-solidity-workshop, and run make ready (the README has the details).