
An FHE confidentiality layer for public EVM chains
Aztec vs
Zama
Zama lets Solidity contracts compute on encrypted values, with decryption held by a threshold of selected key-management operators. Aztec uses client-side private execution without a shared network decryption key.
| Questions | Zama | Aztec |
|---|---|---|
Operators can pause it The litepaper describes 18 initial operators, 13 key-management nodes and five coprocessors, selected by reputation, alongside the host chain. Any one of them can pause the protocol in an emergency. | No one can stop it Permissionless sequencers and provers run the network. Upgrades follow public governance rules with a timelock. L2BEAT assesses the rollup at Stage 2. | |
Threshold decryption Values are encrypted under a network key. A two-thirds threshold of the key-management operators can decrypt, which is what contract-level access rules rely on. | No backdoor Private functions execute on the user's device and the network verifies a proof. There is no network-wide decryption key, no validator that re-executes private inputs, and no co-signer. Public calls and their inputs are visible by design. | |
Encrypted types in Solidity Solidity contracts compute on encrypted values and define who may decrypt them, with off-chain coprocessors doing the work. | Private + public contracts Noir contracts combine private state and functions with public ones, and anyone can deploy them. Contracts compose on Aztec and reach Ethereum through L1/L2 messaging. | |
Permissionless to use Builders can deploy confidential Solidity apps on a supported chain, free and without permission. Users can hold, send, and decrypt the values an app grants them. Running a key-management node or coprocessor is limited to selected operators. | Permissionless to use, build, and operate Anyone can deploy contracts or participate as a sequencer or prover under the published protocol, staking, and hardware requirements. | |
Contract-defined access control. An application lists who may decrypt each value, and the key-management service decrypts only for them. Any operator can also blacklist sanctioned addresses. | Selective disclosure at the application and user level. An application decides which facts it proves or publishes, and a user can share their own viewing keys with whoever they choose. No protocol-wide audit key, screening gate, or operator sits in the path of a transaction. |
What Zama does well.
Programmable confidentiality in Solidity on supported public chains, with application-defined access to encrypted values.
The difference. Both let applications define disclosure. Compare the underlying trust assumptions: threshold key management for Zama, client-side private execution for Aztec.
Keep comparing.
Aztec vs NEAR
A sharded proof-of-stake Layer 1
Aztec vs Starknet
A validity rollup on Ethereum
Aztec vs Miden
A client-side-proving rollup, spun out of Polygon
Aztec vs Zcash
A proof-of-work Layer 1 for private money
Aztec vs Tempo
A payments-first Layer 1, incubated by Stripe and Paradigm