AZTEC 0.1.0

Introduction

AZTEC is an on chain privacy protocol for Ethereum which enables efficient zero knowledge transactions. We are focussed on private value transfer and asset governance.

Confidential representations of ERC20-tokens

The AZTEC protocol can enable confidential transactions for any generic digital asset on Ethereum, including existing assets. For our proof of concept implementation of the AZTEC protocol, we attached an AZTEC token to MakerDAO's DAI token. This smart contract can be used to convert DAI from its public ERC-20 form into a confidential AZTEC note form.

Fully confidential digital assets

The AZTEC protocol can be utilized as a stand-alone confidential token, with value transfers described entirely through AZTEC join-split transactions

Getting started

Go to Quick Start for code examples of how AZTEC.

To read in more detail about the AZTEC protocol, go to our Technical Specification.

Consult the guides for an overview of AZTEC, additional explanations and documentation on our Range Proofs.

Support

Please reach out to our team if you have any questions about AZTEC, need help developing your own confidential digital assets or wish to to discuss an integration. We are happy to help!

Trusted Setup - Ignition

The deployed AZTEC smart contracts currently use a trusted setup created by AZTEC in-house and should only be used for testing and development purposes.

In Q4 we will be running a multiparty computation protocol to create a trusted setup that is secured by the wider Ethereum community, where only one person has to act honestly for the setup database to be secure. If you wish to participate please let us know at hello@aztecprotocol.com

Packages

@aztec/contract-artifacts

npm

AZTEC smart contract compiled artifacts

@aztec/contract-addresses

npm

A tiny utility library for getting known deployed contract addresses for a particular network

@aztec/dev-utils

npm

Dev utils to be shared across AZTEC projects and packages

AZTEC.js

The methods required to construct AZTEC zero-knowledge proofs and to create the required EIP712 signatures (to spend notes) can be found in our AZTEC.js library.

Gas Costs

The gas costs for AZTEC transactions scale with the number of input and output notes in a join-split transaction. For a fully confidential transfer, with 2 input notes and 2 output notes, the gas cost is approximately 900,000 gas. Planned EIP improvements will reduce the cost of these transactions dramatically, to approximately 200,000 - 300,000 gas.