Zero Knowledge
Zero Knowledge Primitives
Discover the core components of private, programmable applications for the Web3 ecosystem
The Evolution of Privacy
Zero Knowledge Powered by Aleo
Zero Knowledge
Introducing the Core Components of Private Apps
Zero Knowledge Primitives
In our daily interactions with web services on the internet, we unnecessarily leave a trail of data that is used for a variety of different purposes. Irreversibly – and often unknowingly – handing over (private) data about ourselves is a choice we should not have to make. Worst of all, there are no significant benefits to giving out our data as it is often made in exchange for nothing. It is a choice users should not be forced to make in the first place.
Zero knowledge provides a solution to the aforementioned dilemma. By empowering users to give precise and verified answers to precise questions without revealing anything about themselves or why and how certain facts are true, privacy is greatly enhanced.
These are only a few use cases of zero knowledge proofs:
We can see from these areas that the introduction of zero knowledge opens up a whole new world of opportunity for interacting, coordinating, and collaborating on the web.
What are “primitives” exactly?
Primitives are a first-principles approach to emerging technologies and help us to better understand the core components of a solution. They can be combined and iterated in many different ways to create novel solutions. The bonding curves that are used in decentralized applications (dApps), such as Uniswap, are an example of a primitive within the decentralized finance (DeFi) space.
Zero knowledge primitives are designed to help reconciling the discrepancy between privacy and programmability existing blockchains such as Ethereum and Zcash are confronted with. On one hand, highly-programmable blockchains are fully public, leaving its users open to a variety of threads and challenges. On the other hand, highly-private blockchains obfuscate any transaction but cannot easily be built upon because of their lack of programmability.
The zero knowledge primitives Aleo developed for its blockchain provide a set of core, technical building blocks users and developers can utilize for private, programmable applications. Let’s have a look at these primitives:
We’ve learned so far that Aleo empowers individuals to interact with each other through shielded identities and shielded transactions. All of this is done in an off-chain environment, the so-called zkCloud. It is a core primitive forming the basis for a more private, personalized, and secure web. Let’s have a look at Aleo’s zkCloud.
The interactions between two or more parties are linked via shielded transactions within zkCloud to the Aleo blockchain. Included in the transactions is cryptographic proofs that verify the validity of the interactions. Not included is any information about who participated in the transaction, where it was executed or which program was used. The Aleo blockchain can then be referenced to cryptographically verify the state of an application.
User can run zkCloud apps either locally or delegate the task to a third-party proving-service. Such services then construct proofs and submits transactions for the users.
The core technology stack of Aleo unlocks the combined power of the above-mentioned primitives and empowers developers to create truly private decentralized applications. Aleo’s solution of executing applications privately, safely, cheaply, and scalable – without the need to sacrifice programmability – opens the doors to a fully private and truly decentralized Web3 ecosystem.