Author Hu Feitong
Zero-knowledge proof will be one of the most basic technologies of Web3, and most projects will be related to zero-knowledge proof. In other words, zero-knowledge proof will have a far-reaching impact and penetrate into every corner of Web3.
First, let's talk about what Web3 is. Simply put, Web3 is the decentralized Web. It's impossible to talk about Web3 without talking about decentralization.
The premise of the impossible triangle
When it comes to decentralization, we can’t avoid blockchain. When it comes to blockchain, we can’t escape the blockchain impossible triangle. In other words, decentralization, scalability, and security cannot be achieved at the same time.
But this is based on a certain technical condition. Under certain technical conditions, if you want to improve one or two aspects, you must sacrifice other aspects. For example, many current projects claim to be able to achieve TPS of thousands or even hundreds of thousands. There is nothing else, just sacrificing security and decentralization. Therefore, such projects do not have a strong security foundation, and what they do is even more outrageous. In fact, they are Internet projects that are wearing the sheep's clothing of Web3. They are selling dog meat under the guise of sheep meat.
What if technology advances?
However, it is not impossible to have all three, which requires technological progress. When technology achieves a breakthrough, it is possible to achieve overall improvement. For example, if computing power and network speed are improved, TPS can be increased without sacrificing security and decentralization.
Technological progress may lead to unilateral breakthroughs, or all-round breakthroughs. For example, the development of storage proof enables PoC consensus to achieve similar security as PoW consensus. Therefore, blockchain may not need to use energy-consuming methods to provide decentralized basic trust. The development and widespread application of Byzantine consensus allows some scenarios with less stringent security requirements to provide a fallback security foundation based on PoS. The development and progress of cryptography has enhanced the security of transactions, and security and ease of use may be taken into account. The development of zero-knowledge proof may provide all-round breakthroughs, that is, it can provide all-round support for decentralization, security and scalability.
What is Zero-Knowledge Proof?
Simply put, a zero-knowledge proof is a cryptographic method that allows one party (the prover) to prove to another party (the verifier) that certain information is true without providing any additional information.
This is too abstract. To put it simply, there are two aspects:
1) Proof: A proof string (a random number of fixed length) can be used to prove something. This thing can be a piece of stored data, a completed calculation, etc.
2) Zero knowledge: This means proving relevant information to you without leaking relevant information; proving to you that the calculation has been done without revealing the specific calculation information and input data.
It's still too abstract, let's talk about it in more detail: for example, if you store a piece of data on Baidu Netdisk, how do you know that Baidu Netdisk has not lost or tampered with your data? You don't know unless you download it and make a comparison, which is very troublesome, so you simply choose to believe it, and if something really goes wrong, you sue it afterwards.
For example, you rent a virtual machine on Alibaba Cloud and run a program. How do you know that the result of the program is correct? You just assume it is correct. You think, why would Alibaba Cloud go to the trouble of deceiving me? So you believe it. But there is no guarantee or proof here.
However, if technology advances, Baidu Cloud or Alibaba Cloud computing platform can provide you with a proof that you can easily verify after each storage or calculation, a mathematically rigorous proof, you will not choose to simply believe, you can choose to verify. This is especially important in a decentralized network, remember: Don't Trust, Verify!
It would be perfect if these proofs were publicly verifiable, meaning anyone, including you, could verify them without exposing privacy. This is zero-knowledge proof.
Why Zero-Knowledge Proofs Are Everywhere
Let's first take a look at why Baidu Netdisk or Alibaba Cloud don't provide this kind of proof? The reason is simple. Zero-knowledge proof is a new technology. Although it is developing rapidly, it is still immature. The cost of using it is still very high. In simple terms, the cost of generating a proof is much higher than doing it again, which is a difference of multiple orders of magnitude, so it is not practical.
However, in a decentralized network, the situation is slightly different. First, decentralized networks are expensive in themselves. For example, Ethereum calculations, you can see it by looking at the gas fees. It is so expensive because each node has to repeat the same calculations, so the cost is thousands of times that of centralized calculations. If we can calculate off-chain and submit the proof directly to the chain, then the calculation only needs to be done once and it can be guaranteed to be safe. This is the theoretical basis of zkRollup. Most zkRollup calculations are centralized, but its calculations are submitted to the decentralized network for verification, which borrows the security of Layer 1, and the network is expanded through grading. In other words, the network has expanded, but the security has not been reduced, and the decentralized foundation remains the same.
Not only can we have zkRollup to use the security foundation of Ethereum Layer 1 through zero-knowledge proof. We can also directly innovate Layer 1. With zero-knowledge proof, we don’t seem to need to do repeated calculations on Layer 1, and we only need decentralized verification. Depreciation has derived zkVM. For example, Aleo is a new emerging blockchain network that uses zero-knowledge proof for off-chain calculations and on-chain verification. Its security is guaranteed by a large number of verification nodes.
So, since zkRollup can extend Layer 1 through zero-knowledge proof, can other applications do the same? Of course. This is why many applications now directly run a Layer 2 and submit proofs directly to the main chain to borrow security and achieve decentralized trust. In this way, a large number of Web2 applications can be grafted into a secure blockchain network, and can directly connect to BTC, Ethereum or Filecoin, etc.
With zero-knowledge proof as the basis, there is a chance to transfer Web2 applications to Web3. A possible Web3 architecture is:
There are some sufficiently decentralized blockchain networks, whose consensus is mainly PoW or PoC, or PoS networks with a strong ecosystem. They establish decentralized network trust, which is the security foundation of Web3.
Zero-knowledge proof service layer, used to provide zero-knowledge proof services, link applications and secure blockchain networks;
Decentralized storage network, building DA layer, using zero-knowledge proof technology to ensure privacy and data security;
For various applications, they use centralized computing, build proofs through a zero-knowledge proof service layer, and verify through a blockchain network to ensure correctness and integrity; data storage uses a decentralized storage network, also using zero-knowledge proof to ensure correctness and integrity.
How long we have to wait?
Someone may ask, the current Web3 applications don’t seem to be like this? That’s right, it’s not like this. Web3 is still a seedling, just starting out.
At present, Web3, from the application layer, either places contracts on Layer 1 and relies on repeated calculations to provide security, or simply puts tokens into contracts to disguise as Web3 (without decentralized security). A welcome trend is that many Web3 projects can be run in Rollup, so that Layer 1 can be used to provide security through OP or ZK methods. However, we can see that Web3 is still very niche and is still dominated by finance (DeFi). GameFi and SocialFi, which have been talked about for several years, are also constantly trying.
Imagine that if there is no decentralized storage (sufficiently decentralized DA network), data cannot be decentralized, and applications with large amounts of data interaction cannot be Web3. In addition, zero-knowledge proof technology has only proved its feasibility in theory, and its efficiency and cost-effectiveness need to be greatly improved in engineering and methods. These two parts are the key to the future development of Web3. When both aspects have achieved substantial breakthroughs, the era of decentralization of the entire Internet has arrived, and the era of Web3 has also arrived. By that time, whether it is Baidu Cloud or Alibaba Cloud, it will also need to prove that its services are verifiable through a decentralized trust network, otherwise, there will naturally be new application paradigms to adapt to this demand.
I don’t know how long we have to wait, but the trend is clear. Don’t have too high expectations in the short term, and don’t underestimate the power of long-term gradual development. Maybe the singularity will come in the next cycle.