As a technology that is generic enough, ZK can have multiple use cases, and we’re in the early stages of figuring out all the use cases that the technology can enable. Some obvious ZK use cases have found real applications, such as implementing transaction privacy and data compression (i.e., rollup), but further potential use cases and technological advancements need to be explored for ZK to be adopted mainstream.
In this article, we will first review the different applications of ZKP, and then we will discuss what can enable the next phase of this technology, as well as some entrepreneurial ideas that can benefit from this technology.
Application map for ZKP
Since its invention, zero-knowledge proofs (ZKP) have gained a foothold in the crypto industry.
There is indeed some magic in ZKP that makes this technology very exciting – it allows entities to prove to the rest of the world that they know a piece of information or have completed a task correctly, without revealing that information or displaying detailed execution information about that task.
The mathematical magic of ZK allows us to trust that knowledge or task has been performed by checking the generated ZKP, and for this reason, the first and most consistent use case for ZKP is privacy-centric cryptography networks, ZKP is also used to provide proof of validity of L2 transactions on Ethereum L1 to introduce the concept of ZK Rollup, and ZKP is also widely used in other niche applications in different projects.
Privacy-focused payments and protocols
ZKP naturally implements privacy features, especially in decentralized networks where people lack a centralized authority that can act as a source of truth – ZKP allows Web3 users (provers) to prove to network validators that their transactions are valid, i.e. they have enough balance to spend without revealing transaction details such as transaction amount, sender or receiver address.
Originally developed to support covert payments (i.e., private payments) in the Zcash network, ZKP has since expanded to other networks, including:
- Privacy-conscious L1: Zcash, Horizon, Aleo and Iron Fish;
- General on-chain privacy smart contracts: Tornado Cash;
- Privacy-conscious L2: Aztec;
Verification of ZK Rollups
Another major use case for ZKP is to generate Rollup Proof of Validity on the underlying L1, where generic Rollup optimizes throughput by not taking advantage of ZKP’s privacy features, i.e. proving more transactions (TX), in which ZKP is only used to justify L2 transaction execution.
Since some general-purpose functions cannot be effectively proved, it is difficult to generate ZKP to prove the correct execution of arbitrary smart contracts, and solving this problem requires the implementation of specialized virtual machines (VMs) that can be efficiently verified using the underlying ZK circuitry. Due to this complexity, ZK Rollup initially only supports payments or single applications, such as DEXs that can easily generate ZKP.
Examples here include zkSync 1.0 and Loopring, after which general-purpose zkEVM implementations began to appear on the market, including Starknet, zkSync 2.0, Polygon zkEVM, and Scroll. Currently all ZK Rollup is on Ethereum, but ZK Rollup can also be implemented on other chains, including Bitcoin.
However, the implementation of Bitcoin Rollup will require changes to the Bitcoin opcode and a hard fork of the chain, which is generally unpopular with the Bitcoin community.
Other ZKP applications
In addition to privacy-focused applications and Rollup, ZKP is also being used in a broader way in other blockchain protocols.
Mina uses ZKP to compress the blockchain state to a very small size (about 22 KB), and to achieve this, Mina uses recursive ZKP, which is the ZKP of other ZKPs.
When a block is generated in the Mina network, zk-SNARKs are used to generate proofs of the block to ensure its validity; When a new block references a previous block, ZKP for the new block validates all previous blocks while maintaining a constant size.
Filecoin uses ZKP to ensure that storage providers properly store the data they claim to store, a process known as Proof of Replication (PoReb).
During this process, storage providers generate ZKPs to prove that they are storing the only copy of the data, that is, a copy that is not maintained by another storage provider. ZKP provides guarantees for Filecoin users who want a certain level of redundancy and availability, and because the size of the attestation is much smaller than the stored data, using ZKP reduces the bandwidth requirements of the storage provider.
Celo Plumo uses ZKP to create an ultra-lightweight web client that can be used on mobile phones and other resource-constrained devices, and despite its lightweight nature, it guarantees the correct access state.
Dark Forest is ZKP’s most popular app in the gaming space. While the use of ZKP meets privacy use cases, Dark Forest is using it outside of financial applications in payment networks to create applications that do not fully incomplete information games, so this is a different use case.
The trajectory of ZKP and its application
Before 2016, ZKP as a research topic was only discussed in a few academic circles. That all started to change when the Zcash founding team created the first ZKP variant (zk-SNARK) to support shielded/private transactions in the Zcash network.
With real use cases, there is growing interest in ZKP, which in turn leads to better ZKP variants that form the basis for many of the projects discussed in the first chapter, however the technology requires further ZKP development before it can be mainstreamed.
To see how to further improve the technology, we can learn from similar technologies such as artificial intelligence (AI), because in many ways ZKP technology is similar to AI technology, so it is expected that it will follow a similar trajectory as well.
Like ZKP, AI started out as a promising technology that could solve many problems. However, the original AI algorithms were functionally limited and the computational complexity far exceeded the capabilities of the available hardware, making AI applications slow and impractical, and thus largely confined to research labs.
Subsequently, through the invention of new architectures such as deep neural networks (DNNs) and the use of GPUs to increase execution speed, AI continued to achieve incremental improvements, culminating in breakthroughs, such as AlexNet in 2012, which won by a huge margin in the most famous computer vision competition, ImageNet. AlexNet was the beginning of the AI era, which led to current exciting AI applications such as GPT-3, Dall.E 2, and Stable Diffusion.
Today’s ZKP state is similar to the early state of AI, a promising technology that is still under active development and has a long proof time due to compute-intensive nature. Learning from the trajectory of AI’s advancement, we can identify bottlenecks that need to be addressed for ZKP technology to take off.
1. Algorithm/circuit improvements
Just like AI from LeNet-5 to AlexNet and from Resnet-50 to Transformer, the ZKP algorithm will go through a development phase to significantly improve performance. We are already seeing progress in this area, and since the introduction of zk-SNARKs in 2011, the industry has developed more advanced algorithms.
For example, STARK, developed by Starkware’s founders in 2018, is a ZKP method that does not require a trusted setup and has a shorter proof generation time, and this technology is the basis of several products, including Starkware’s StarkNet.
ZKP continues to make progress with the introduction of PLONK in 2019 – PLONK is a SNARK implementation that allows many applications to use a single trusted setting without having to repeat it. PLONK has stimulated the development of multiple ZKP implementations, used by multiple Web3 protocols such as Aztec, Mina, and Celo.
2. Perform engine optimization
A major limitation of ZKP is that computational complexity results in long proof times. The recently announced Polygon zkEVM, for example, would need to run on a 64-core server for about 5 minutes to generate proofs of 500,000 gas calculations.
Reducing ZKP validation time is a critical part of bringing ZKP technology into the mainstream, and similar to AI, optimizing the software execution engine and using dedicated hardware are necessary to achieve this.
Many ZKP build operations are massively parallel, which means that parallel processing, such as GPUs, can speed up ZKP computations. Dedicated GPU libraries such as CUDA can be used to accelerate calculations for ZKP on Nvidia GPUs, and since each project uses a different ZKP algorithm, several projects are trying to develop in-house.
A notable example is Filecoin’s implementation of the Groth16 algorithm, which uses GPUs to speed up the proof process; Another example is that Edgeswap has reduced PLONK’s verification time by 75% using GPUs.
Since GPU improvements to ZKP verification time are often limited, another option is to use dedicated hardware, such as FPGAs or ASICs.
Before the expensive effort of manufacturing specialized chips, or ASICs, FPGAs were often considered hardware prototyping platforms. FPGAs, or hybrid solutions that combine GPUs and FPGAs, can accelerate ZKP applications for rollup and privacy-conscious networks in the short to medium term.
However, if ZKP technology develops to the level we expect, ASIC will eventually win this market. At present, ZKP’s hardware acceleration has not been fully addressed, which may be due to the diversity and fragmentation of ZKP algorithms, but we believe that with the right business model, some startups can focus on developing and monetizing this part of the technology stack.
3. Software abstraction layer
To unlock the potential of ZKP, multiple abstraction layers and tools need to be built that are necessary to simplify the development process of ZKP applications – allowing each group of developers to focus on what they do best, such as the fact that application developers shouldn’t worry about the low-level details of ZK circuits and how they work.
Using the AI analogy again, AI can make huge strides by creating multiple layers of abstraction. Using these abstractions, AI application developers don’t need to worry about NN architectures or hardware resource allocation, as frameworks like TensorFlow and PyTorch abstract away all these low-level details.
The ZK development stack is not yet as complete as the AI stack, but there is still some effort to build these layers of abstraction: low-level ZKP libraries such as PLONK and STARK exist at the bottom of the stack; On top of that layer, high-level languages such as Noir attempt to abstract away the underlying ZK cryptography and help application developers focus on application logic; Circom is another popular ZKP language that sits between these two layers because it can be used both to create complex ZK backends and to develop ZKP-based applications.
Another example of ZKP abstraction in Web3 is StarkWare’s Cairo language, which allows developers to implement generic smart contracts that use STARK proofs at the bottom level. To provide further abstraction, Nethermind’s Warp tool allows Solidity developers to convert their Solidity code directly to Cairo.
With Warp, for example, Uniswap V3 code can be translated into Cairo with minimal changes to the original Solidity code.
Entrepreneurial opportunities at ZKP
Based on a discussion of ZKP’s possible paths, we identified some entrepreneurial ideas related to ZKP, which are divided into two main categories: tools and applications.
1. Advanced development framework
Similar to Tensorflow and PyTorch in AI, advanced ZKP development frameworks are critical to enabling innovation at the application level. These frameworks require:
- Abstracting the complexity of the underlying ZKP backend;
- Supports various ZKP backend and hardware environments, such as CPU and GPU;
- Allows efficient debugging and testing;
- Provide a rich development environment with samples and tutorials;
The closest examples in the Ethereum ecosystem are Hardhat and Foundry, but they are unlikely to support zkEVM or ZKP anytime soon, and instead, existing abstract work like Cairo may eventually evolve to fill this space.
2. ZK Rollup SDK
ZK Rollup is gaining popularity to enable application-specific L2 for gaming or high-throughput DeFi protocols. In this case, ZK Rollup is primarily responsible for execution and settlement, while consensus and data availability will be handled by L1.
But launching an application-specific ZK Rollup is still very complex, and we believe that startups that provide developer-friendly SDKs to launch custom ZK Rollup will address real business needs and can be a valuable business by providing development kits, developer services, sequencer services, and supporting infrastructure.
3. ZKP hardware accelerator
Specialized hardware companies that target specific use cases and build early market leadership end up becoming companies with great value, as is the case with AI – Nvidia has become the most valuable North American semiconductor company by focusing on AI hardware.
The same is true in Bitcoin mining, when Bitmain, Canaan, and Whatsminer became unicorns by focusing on ASIC miners, and companies that design and manufacture efficient ZKP hardware accelerators will follow the same trajectory.
ZKP Web3 applications
1. ZK cross-chain bridge and interoperability
ZKP can be used to create proofs of validity for cross-chain messaging protocols, where cross-chain messages can be quickly validated on the target chain, similar to how ZK Rollup is validated on the underlying L1. But for cross-chain messaging, the complexity is higher because the signature scheme and cryptographic functions to be verified may differ between the source and destination chains.
2. ZK on-chain game engine
Dark Forest demonstrated that ZKP can make incomplete on-chain games possible, which is critical to designing more interactive games where player behavior is kept secret until a decision is made public. As on-chain gaming matures, we expect ZKP to become part of the game execution engine, so the opportunity is huge for startups that successfully integrate privacy features into high-throughput on-chain game engines.
3. Identity Solutions
ZKP can create new opportunities in the identity space, such as for creating reputations or connecting Web2 and Web3 identities, which are currently separate, and projects like Clique connect these identities by using oracles.
ZKP can take this approach a step further by enabling anonymous linking of Web2 and Web3 identities: use cases such as anonymous DAO membership can be provided to those who can use Web2 or Web3 domain-specific expertise; Another use case is to offer unsecured Web3 loans based on the borrower’s Web2 social status, such as the number of Twitter followers.
4. ZKP in compliance with regulatory requirements
Web3 enables anonymous online accounts to actively participate in the financial system, and in this sense, Web3 enables great financial freedom and inclusivity. With the increase in Web3 regulations, ZKP can be used on a compliance basis without compromising anonymity, such as ZKP can be used to prove that users are not citizens or residents of sanctioned countries, ZKP can also be used to prove accredited investor status or any other KYC/AML requirements.
5. Native Web3 private debt financing
TradeFi debt financing is often used to support growing startups to accelerate their growth or launch new lines of business without raising additional venture capital.
The rise of Web3 DAOs and anonymous companies has created opportunities for Web3 native debt financing, such as using ZKP, where DAOs or anonymous companies can obtain unsecured loans at competitive interest rates based on proof of their growth metrics without revealing borrower information to lenders.
6. Private DeFi
Financial institutions often keep their transaction history and risk exposures secret, but due to the continuous development of blockchain analytics, it is challenging to meet this when using on-chain products (i.e., DeFi protocols), and one possible solution is to develop privacy-focused DeFi products to protect the privacy of protocol participants.
For example, Penumbra’s zkSwap, and Aztec’s zk.money also provide some private DeFi earning opportunities by obfuscating the DeFi protocol in which users participate.
In general, the successful implementation of protocols for efficient and privacy-focused DeFi products can generate a significant number of users and revenue from institutional participants.
7. ZKP-based Web3 ads
Web3 drives user ownership of their data, such as browsing history, private wallet activity, etc., and Web3 can also monetize this data for the benefit of users. Because data monetization can contradict privacy, ZKP can play an important role in controlling what aspects of personal data can be disclosed to advertisers and data aggregators.
8. Sharing and monetization of private data
If shared with the right entity, much of our private data can have a big impact. For example, personal health data can be crowdsourced to help researchers develop new drugs; Private financial records can be shared with regulators and regulators to identify and punish corruption, among other things; ZKP enables private sharing and monetization of such data.
9. Decentralized intelligence organization
ZKP can give birth to decentralized intelligence organizations. In these systems, intelligence officers, data detectives, and spies can be part of a network without interacting or knowing each other. Participants can use ZKP to demonstrate knowledge of certain intelligence data before receiving private payments in exchange for that data. Such systems can also facilitate collaborative and composable ways to enrich or interpret collected data while maintaining the privacy of participants.
10. Private governance
With the proliferation of DAOs and on-chain governance, Web3 is moving closer to a democracy of direct participation, and a major flaw in the current governance model is the non-privacy of participation. ZKP may be the basis for solving this problem, and governance participants can vote without revealing how they vote. In addition, ZKP can limit the visibility of governance proposals to DAO members, allowing DAOs to build competitive advantage.
ZKP technology is one of the most innovative in the Web3 space, offering multiple opportunities for breakthrough protocols and companies.
Posted by:CoinYuppie，Reprinted with attribution to:https://coinyuppie.com/an-in-depth-discussion-of-how-zkp-in-the-web3-era-moves-into-the-mainstream/
Coinyuppie is an open information publishing platform, all information provided is not related to the views and positions of coinyuppie, and does not constitute any investment and financial advice. Users are expected to carefully screen and prevent risks.