Aztec is an L2 that provides programmable privacy to Ethereum.
Aztec enables privacy-preserving smart contracts. Such contracts are a collection of functions, written as zkSNARK circuits. They can have different modes of execution:
-
Private Functions: They can read and write private state, read historical public state, consume or send messages to / from Ethereum, and read Ethereum state. They can call other private functions in the same contract, or other contracts, and can call public functions.
-
Public Functions: They can read and write public state, write private state, consume or send messages to / from Ethereum and read Ethereum state. They can call other public functions on the same or other contracts.
-
Portal Contracts: These are contracts on Ethereum that can receive messages from Aztec or send messages to Aztec from Ethereum contracts.
For more details, visit Aztec docs.
Navigate through our Guide to get started with Aztec.js.