Circuits
Central to Aztec's operations are 'circuits' derived both from the core protocol and the developer-written Aztec.nr contracts.
Central to Aztec's operations are 'circuits' derived both from the core protocol and the developer-written Aztec.nr contracts.
This page outlines Aztec's fundamental technical concepts. It is recommended to read this before diving into building on Aztec.
The latest information about contract deployment has moved to the protocol specification. You can find it here.
This page is a conceptual introduction to Portals, how Aztec communicates with L1 (Ethereum)
Privacy is important.
This circuit is executed by the user, on their own device. This is to ensure private inputs to the circuit remain private!
This circuit is executed by a Sequencer, since only a Sequencer knows the current state of the public data tree at any time. A Sequencer might choose to delegate proof generation to the Prover pool.
The primary purpose of the Rollup Circuits is to 'squish' all of the many thousands of transactions in a rollup into a single SNARK, which can then be efficiently and verified on Ethereum.
The sequencer is a module responsible for creating and publishing new rollup blocks. This involves fetching txs from the P2P pool, ordering them, executing any public functions, running them through the rollup circuits, assembling the L2 block, and posting it to the L1 rollup contract along with any contract deployment public data.
Fernet
How are storage slots derived for public and private state
On this page you'll learn:
This page talks about the architecture of a wallet in Aztec. Wallets expose to dapps an interface that allows them to act on behalf of the user, such as querying private state or sending transactions. Bear in mind that, as in Ethereum, wallets should require user confirmation whenever carrying out a potentially sensitive action requested by a dapp.