Aleo
September 13, 2022

Zero Knowledge Primitives by Aleo

Introducing the core components of any proprietary programmable application for the Web3 ecosystem. Powered by Aleo.Zero knowledge technology

In our daily activities on the Internet (for example, when using a search engine or a social network), the amount of data that we unnecessarily and irreversibly transfer is a choice that we do not have to make, and we receive nothing in return.

But zero knowledge provides a potential solution. The ability to validate knowledge without disclosing it and provide accurate answers to precise questions improves privacy, enhances security, and increases efficiency. This can empower consumers by allowing them to selectively disclose what is relevant to a given application. This could allow companies to enter into partnership agreements without compromising trade secrets. It can enforce laws and regulations without burdensome supervision. All in all, ZK opens up a whole new world of possibilities for our interaction and coordination.

Aleo’s mission is to enable developers to create truly private applications. The cornerstone of our approach is zero-knowledge cryptography, or ZK for short. This method allows parties in a decentralized network to prove knowledge of some information without revealing the underlying facts that confirm its validity.

A simple ZK metaphor in action is a bartender checking a person’s age. They usually asked for ID to verify the date of birth and match the physical characteristics of the person in front of them. But the bartender also sees other identifying information on the ID, such as a home address. Even though the buyer only needs to prove that he is of drinking age, he unintentionally reveals much more.

Zero-knowledge cryptography is the same as giving a person the ability to prove they are of legal age without revealing anything else. The bartender can confidently confirm this statement without even knowing the person’s age. This person, waiting for a drink at a bar, should be able to answer the question, “Are you of legal age?” with “yes” without disclosing any irrelevant personal information.

This technology will create business models that were previously impossible. These models and their applications will take advantage of the new capabilities provided by the underlying technology. In the next section, we will look at the following building blocks or primitives that zero-knowledge cryptography uniquely provides.

Zero Knowledge Primitives

A “primitive” is the basic building block of a programming language, an atomic unit that is not divisible into smaller components. When applied to a higher system level, primitives can also be thought of as ingredients that can be combined in many ways to create different recipes. They represent a first-principle approach to new technologies, representing the core components of any solution that can be combined and iterated to create new solutions.

For decentralized finance (DeFi) on Ethereum, an example of a primitive is the connection curve that powers decentralized exchanges like Uniswap. In the emerging Web3 privacy space, defining useful and unique primitives is an important first step in developing private applications.

Blockchains have so far faced a challenge when it comes to negotiating programmability and privacy. Existing solutions either do not prioritize or offer users an unbalanced balance. On Ethereum and other highly coded blockchains, transactions are public and addresses/identities are pseudonyms. The zero-knowledge Aleo primitives provide a set of basic technical expectations that users and developers can specify for each particular programming application.

So what are the primitives of zero-knowledge applications?

  • Shielded identities are like a firewall that protects the personal information of a specific person or organization. Remember our bartender example? Secure identities are like cryptographic driver’s licenses that hide all unnecessary information from the asker. Secure identities allow individuals, smart contracts, DAOs, and enterprises to interact with each other without exposing any information other than what exactly needs to be known. A simple example is an on-chain know-your-customer (KYC) process for an exchange or dark pool. Unlike Ethereum, where the user would have to reveal their entire account and complete assets under a pseudonym, shielded identities allow the user to both authenticate to the application and remain completely anonymous.
  • Shielded transactions are a primitive first created by Zcash. But secure transactions at Aleo are more than just asset transfers. They describe all kinds of interaction with another person or program. Some examples beyond simple payments include providing liquidity, voting in governance, identity authentication, decentralized notifications, and more. Since only the interacting parties know the details of the transaction, attackers cannot learn the details of this interaction or use it in any way.

Shielded identities describe individuals, and shielded transactions are the means by which they interact. At Aleo, they do this offline in what we call zkCloud, a component of the Aleo stack that forms the basis for a more secure, private, and personalized app paradigm.

zkCloud describes a peer-to-peer, decentralized, private computing model in which secure identities interact either directly (as in an asset transfer) or programmatically (through a smart contract). By moving this interaction off-chain, we not only guarantee confidentiality, but also provide greater transaction throughput. Shielded transactions link the interaction of one or more parties in zkCloud to the Aleo blockchain. These transactions contain cryptographic evidence that these interactions were valid. However, by default, they do not reveal which program was running and who participated in it. The Aleo blockchain keeps records of these transactions that can be referenced to determine the global state of the application at any point in time.

zkCloud applications can be run locally on a user’s computer, or delegated to a third-party verification service that creates evidence and submits transactions on behalf of users. This makes the broader range of applications on Aleo practical today and opens the door to a new market for delegated private computing.

To summarize:

  • ZkCloud is the cornerstone of a new model of peer-to-peer, decentralized, private computing that can be run locally or delegated to specialized provers.
  • zkCloud enables programmatic interoperability between secure identities, which can be users, organizations, DAOs, etc.
  • These interactions take place through shielded transactions, which provide cryptographic proofs that ensure that a given program runs correctly.
  • These transactions are transmitted to the Aleo blockchain, which updates the global state, captures activity in zkCloud, and provides a decentralized and censorship-resistant guarantee of data availability.

Aleo’s core technology stack unlocks the power of these primitives, which developers can use to build truly private decentralized applications. If applications can be run privately, cheaply, and scalably without sacrificing programmability, then a completely private, truly decentralized Web3 ecosystem is within reach.