Existing first-level blockchains either provide anonymity of transactions, but do not provide the opportunity to implement decentralized calculations using smart contracts, or have great capabilities in terms of their functionality, but do not care at all about user privacy. Ether was the next step in the development of decentralized computing, but did not advance privacy. ZCash and Monero solved the problem of maintaining the privacy of data in transactions, but in terms of “programmability” they remained at the same stage of development as Bitcoin.
The Aleo project was founded in 2019 with the goal of creating a completely private and yet functional blockchain, which is based on Zero Knowledge Proof (ZK) technology. Aleo provides all the necessary tools for creating modern decentralized applications, while ensuring complete confidentiality of data transmitted over the network.
Aleo aims to combine these two areas and implement them in one network. His goal is to integrate ZK technology at every level to create not just a secure network, but also to develop the idea of privacy on the Internet as a whole. Aleo's vision extends beyond scale and aims to bring ZK into any application, giving users control over how and when they share their data.
Such an ambitious project certainly requires ambitious investments. The Aleo team raised $200 million - the best result for L1 solutions based on the implementation of ZK. Funds such as Kora Management LP, SoftBank Vision Fund 2, Tiger Global, Sea Capital, Samsung Next, Slow Ventures, and the well-known Andreessen Horowitz (a16z fund) invested in the project).
From a decentralization point of view, Aleo has a very large infrastructure, more than 10,000 active validator nodes, which is already more than most L1 networks on the mainnet.
Let's take a closer look at what problems Aleo is going to solve and in what ways.
The main problem of blockchain arises from its main advantage - since the data is stored decentralized, it is transparent and visible to everyone. As a result, network explorers make available to everyone data on personal and commercial financial activities on the network. This data can be used unfairly and lead to the loss of money by participants in the money exchange. For example, in DeFi applications, all the data about which orders are placed by which users is visible - by analyzing such data, automated bot systems can place orders in such a way that they always close transactions more profitable than others. “Front running” is a well-known and widespread problem when a transaction can be “knocked out” by promptly offering exactly the same one to the network, but with a higher gas. If the network uses mining, then miners can select transactions from the mempool in such a way as to have the maximum benefit for themselves - thus raising gas on the network and making transactions unreasonably expensive. This phenomenon is called asymmetry - when one participant in the process has more opportunities than another due to the fact that he exploits the peculiarities of the process. This means that trained technical teams have the ability to aggregate more information to make a decision per unit of time than the average user. The solution that Aleo proposes is to eliminate such asymmetry by encrypting all data in such a way that only the direct participants in the information exchange have access to only the information that they need to carry out this exchange. All other information should be hidden from other users. At the same time, the issue of compatibility is critically important - all decentralized applications must work correctly with such limited information. Therefore, in the Aleo network, all information that the user sends to the network is initially encrypted at the lowest level. To interact with decentralized applications, he chooses what information to disclose to them. This approach allows the user to be given full control over their data, while using the Aleo toolkit it is possible to achieve smart contract functionality that is in no way inferior to Ethereum.
Aleo uses ZK technology precisely for this purpose. In general terms, the essence of this technology is as follows: one party to the information exchange (the prover) provides the other party (the verifier) with evidence that some information is reliable, but without disclosing exactly how this information became reliable. Let's look at an example from the “ordinary” world – COVID certificates. You can prove that you are immune from Covid by presenting a QR code issued by a government agency in your country. The QR code does not contain information about how exactly you received immunity (whether you got sick or received a vaccine), and also does not disclose information about when exactly you received this immunity. It only tells you the verifiable fact that you are immune from a given disease for a certain period of time. However, this scheme requires a centralized data source, which does not exist in the blockchain. Therefore, in the “crypto world”, encryption and electronic signatures, that is, mathematics, come to the rescue. You can provide encrypted and signed data about your credit history to your borrower, without having to give your entire financial history to some centralized organization, which, based on this data, will not only assign you a rating, but will also sell this data to everyone. That is, this approach greatly reduces the number of your data required to carry out the operation, and also reduces the number of possible options for inappropriate use of your data.
However, the approach itself is not even half the solution to the problem. We need tools, and at the technical level – completely new ones. The Aleo team also understood this very well, so they focused on creating not only a network with anonymous transactions, but also a set of tools that would help developers fill this network with functional decentralized applications.
Programming language
First of all, Aleo uses its own Leo programming language. It is optimized for fast performance of low-level cryptographic operations, and also contains the necessary libraries for working with ZK, simplifying the integration of this technology into an application. Its syntax is quite high-level, which simplifies development on it and simplifies reading other people's code, and it is inspired by such popular languages as JavaScript and Rust.
IDE
Also, Aleo has its own IDE (development environment) for this language - Aleo Studio.
Package manager for building a project
It is much easier to share development results with the community when there is no need to search for code on Github and assemble it manually. Therefore, the Aleo team prepared its own package manager and integrated it into its development environment, allowing you to install additional packages necessary for development without leaving the editor, as well as simplify joint development within a large team.
Оperating system
And finally, Aleo network nodes run on their own snarkOS OS, specially created to work with ZK-proofs of changes in network state without reducing the availability of this data.
Links:
Website ~ https://www.aleo.org/
Twitter ~ https://twitter.com/AleoHQ
Community Twitter ~ https://twitter.com/aleocommunity
GitHub ~ https://github.com/AleoHQ
Community Forum — https://community.aleo.org/
Community Calendar ~ https://www.aleo.org/community/calendar
YouTube — https://www.youtube.com/channel/UCS_HKT2heOC_q88YQLiJt0g
Developer Documentation ~ https://developer.aleo.org/
Leo Playground ~ https://play.leo-lang.org/
Aleo Block Explorer ~ https://www.aleo.network/
Community Blog ~ https://medium.com/@AleoHQ
Announcements Blog ~ https://www.aleo.org/blog