Meet your match. Finally, there’s a design space where you can build and deploy private apps and realize any ambition.
Easily program privacy or transparency—at any layer: user, data, metadata, transaction, or logic. With Aztec, public and private functions seamlessly interweave in a single smart contract. Aztec handles public and private state for you.
Build apps with private accounts, data, transactions, and function execution with Aztec’s client-side proofs. Private functions are executed on the user’s device, so sensitive data stays where it belongs and zero-knowledge proofs of that data are sent to the network.
Aztec makes every account a smart contract. This unlocks flexible, programmable identities—with features like gas sponsorship, custom nonce control, and alternative signature schemes—like passkeys.
Builders can utilize the Aztec Sandbox—a local network pre-packaged with built-in accounts, tokens, and a node—to streamline testing and development.
Aztec comes fully loaded with tools to enhance your experience—including CLI utilities to compile, deploy, interact with projects, and run benchmarks. It also comes with Noir IDE extensions for code completion and syntax highlighting.
Join an ambitious, growing community of frontline builders shipping and scaling everything from L1 compliance bridges to cross-chain integrations, core primitives, full apps and more.
Build fast. Break nothing. Explore your new powers in the Aztec Sandbox.
Start working in Testnet right out of your browser
Create your first Aztec.nr smart contract
Visit Github for a simple Aztec contract and test to get started
Travel alongside a hybrid transaction and discover how Aztec efficiently processes both public and private functions—making Aztec the ideal blockchain for building and deploying private apps.
Aztec is a fully decentralized, privacy-preserving Layer 2 blockchain on Ethereum. It combines the benefits of a decentralized blockchain with end-to-end programmable privacy. Developers can build apps where users choose what’s public and what’s private — from balances to function execution — all secured by Ethereum’s settlement layer.
Unlike other Layer 2 blockchains, Aztec was designed from the ground up for privacy. Builders can build private apps without needing cryptographic expertise, thanks to Noir (Aztec’s zk programming language). Aztec utilizes novel client-side zero-knowledge proofs to process private data on the user’s device, so developers can choose to keep data, function execution, and account balances private.
Aztec developers write smart contracts using aztec.nr, a framework for Noir. Noir allows you to easily mix public and private functions in your smart contracts, so you can decide whether a variable or function is public (pub) or private by default. This makes it straightforward to build private apps on Ethereum without worrying about low-level circuits.
An Aztec smart contract is a set of public and private functions. Private functions execute locally on the user’s device, generating proofs that are verified on-chain. Public functions execute like standard L2 contracts. Together, they enable building projects on a privacy-first L2 where both private and public states can coexist.
Private apps on Aztec leverage client-side proof generation. Sensitive data — like user addresses, balances, or function calls — never leaves the user’s device. Instead, a ZK proof is sent to the network for verification. This ensures maximum privacy on Ethereum while still enabling trustless interactions.
Aztec is a zk rollup on Ethereum, meaning it inherits Ethereum’s security while offering end-to-end programmable privacy. Provers generate rollup proofs for batches of transactions (“epochs”) and submit them to Ethereum. Developers benefit from seamlessly woven-together private and public state trees for full programmable privacy, and the strongest ZK rollup security model available with thousands of sequencers powering the network.
Developers on Aztec have a full toolkit at their disposal. With Noir and Nargo, they can write, compile, and test zk programs. Aztec.nr provides a library for building smart contracts that include both public and private functions, while Aztec.js offers a client-side library for dapps similar to ethers.js. To complete the workflow, the Developer Sandbox allows developers to run a local Aztec node and test their applications before deploying.
Examples of the best private apps on Aztec include private voting systems that preserve voter anonymity while still providing public tallies, confidential DeFi protocols where balances and strategies remain hidden, privacy-preserving identity and access systems, and secure messaging or data-sharing applications. Aztec is the best privacy Layer 2 for builders who want both confidentiality and composability.
Aztec is decentralized across three pillars: sequencing, where anyone can run a sequencer to order transactions; proving, where anyone can operate a prover node to generate zk proofs; and governance, where anyone can propose and vote on protocol upgrades. This structure ensures that no central party can control the applications built on Aztec, making it a resilient and future-proof privacy Layer 2.