2022 Predictions: Zero-Knowledge Proofs Become Web3’s Killer Feature
By: Evan Shapiro, CEO of Mina Foundation
Last year brought increased clarity to the important role zero knowledge proofs (ZKPs) will play in crypto and Web3, for both scalability and user-permissioned privacy. This is exciting as it sets the stage for ZK applications to roll out across the crypto ecosystem (also matching my timeline and predictions from early 2021 :)) and become the killer feature of Web3.
Web3 is a term that’s thrown around a lot, but it’s a little nebulous. Optimistically, the best definition of it is that it will offer the decentralization of Web1, with the richness of Web2. And in doing so, solve the many problems of Web2.
And Web2 has many problems — centralization allows for hacks, data leaks, ruthlessly monetizing users — and no one disputes that. These are systemic problems with the system.
Web3 brings to the table user-centered values, decentralization, and cryptography that offer a promise of countering some of those problems.
Moving away from just the optimistic, eventual definition, I would say Web3 today, practically, is just the user experience of accessing crypto from the web, and the ecosystem being built around that. This opens up many exciting possibilities; decentralized finance, NFT marketplaces, and decentralized organizations to name a few.
But, it’s missing some of the key building blocks it will need to achieve its more broadly impactful possibility.
Web3 and Privacy
With Web2, we’ve gotten used to a model of federated privacy. In this architecture, we retain privacy over our personal information from the general set of participants on the web, while giving privacy up to the particular entities we interact with.
While this opens up the design space for working with private data, which is great, it introduces a huge counterparty risk. Data leaks, private data monetization, and the permanency of availability of leaked data are all substantial drawbacks of this architecture.
Web3 on the other hand, doesn’t have functionality for private data. This means it hasn’t had to deal with the drawbacks of Web2 privacy but has also so far been missing this component. With Web3, you’re interacting not with a centralized party, but with a decentralized network. While this does remove the downsides of sharing data and counterparty risk, only having decentralized entities to interact with also creates a challenge of how to achieve trust in this new environment.
Changing this, and introducing privacy functionality will be essential if Web3 is to become competitive at a wide range of applications. It will either not be viable for many use cases, such as bank accounts, online shopping, identity, social networking, and business, or in the move to cryptocurrency for other improvements, create a worse privacy landscape than Web2.
Web3 and Security
Web2 has other clear problems of centralized power, with many other bad outcomes for users aside from a loss of privacy. In theory, Web3 has a huge opportunity to do away with this dynamic, instead declaring the rules of its systems in decentralized code.
Crypto as it is today though, falls short of this potential. If you are running a full node, you are getting the full, mathematically guaranteed cryptographic security made possible by cryptocurrencies. However, running a full node isn’t something that is feasible for most cryptocurrencies or users. It requires expensive hardware and downloading and staying connected to large, many 100 of gigabytes blockchains.
This paradigm is especially a problem with Web3. There is just no way for crypto clients running in the browser to handle those sorts of requirements.
As a consequence, Web3 works today by relying on trusted centralized intermediaries that relay connections to the decentralized networks behind Web3. This is concerning because it replicates many of the concerning dynamics that already exist in Web2. To kick off the year, Moxie Marlinspike, wrote about this at length — the few central services that serve as intermediaries in the space are replicating the same dynamics as Web2, just with a much larger surface area. Combined with the privacy concerns above, these entities have the power of super-ISP’s, that can read and control access to all of our data, a disaster for user sovereignty.
These entities, such as Infura and Alchemy, are a weak point in the Web3 opportunity for decentralization. Users in Venezuela and Ukraine have recently seen their access to Infura censored. While these strong powers have been limited to select regions so far, we shouldn’t be surprised if these access points become tools of government to generally control cryptocurrency, and ways for the corporate owners of these access points to give preferential treatment to their favored projects over others, and generally profit from Web3.
Impact of ZKPs
These problems of security and privacy are both technical ones. And fortunately, ZKPs neatly solve the problem. On the privacy front — ZKPs allow users to privately share information to the decentralized network while giving networks a secure guarantee that the data is authenticated. On the security front — they give users guarantees the data they’re receiving from the network is authentic, without needing to trust intermediary access points.
This opens up the paradigm we are used to in Web2, sharing trusted information back and forth with applications. But Web3’s decentralization does so while removing the possibility, so often seen in Web2’s centralized world, of applications betraying that trust.
On the privacy side, consider identity. Say we wanted to create an NFT collection, where each person could only own at most one NFT from the collection. Doing this naively would require users to expose their identity. However, with ZKPs, users can reveal proofs of the uniqueness of their identity, without revealing who they are specifically. In a Web2 context, this would have required a centralized entity to track users and ensure uniqueness. In usual Web3, this would require users to disclose their identities and the corresponding NFTs. In Web3 with ZKPs, this can be done fully privately, with all the same guarantees one would want from this system.
For a security example, consider a world where a substantial portion of the financial state is on cryptocurrencies, accessed on the web. With ZKPs proving the state of chains, DeFi users will be assured the state of their account they are seeing on the web really matches the on-chain state, guaranteeing security. From a user perspective, this is analogous to the transition from HTTP to HTTPS, minus censorship risk.
New features from ZKPs won’t just apply to opening up Web2 functionality to Web3 though. It will also greatly expand the set of novel possibilities available to Web3. For a short preview of possibilities, applications augmented with ZKPs can be built that:
- Allow for NFTs where each person can only own one NFT from a set
- Allow tweet authors to generate NFTs from their tweets in a decentralized way
- Lets users prove ownership of a subset of NFTs without revealing the particular ones they own
- Generate a non-transferrable NFT to recognize real-world or digital achievements (ie; I am a major contributor to an open-source project)
- Enable Twitter users to create DAOs for their followers
- Unlock anonymized voting for DAOs
- Connect existing financial data to crypto to help bootstrap DeFi
This substantial set of augmented functionality offered by ZKPs will be a huge unlock for Web3. And it will let Web3 offer a substantially better experience than Web2. Where Web2 struggles — handling sensitive user data and privacy — Web3 will win with ZKPs. It will solve one of users’ biggest pain points with the centralized web, and help the migration to Web3 accelerate beyond what we’ve seen in DeFi, NFTs, or the other waves that have brought increased interest.
Zooming out, if we want to create a new, decentralized internet, we will need security, scale, and privacy — and there is no better technology for it than zero knowledge.
This leaves the question of, why now? One variable in this is the massive growth of Web3 in the last 12–18 months, creating an environment for further experimentation and development.
But also, it is good timing for ZKs, as they are now ready to be applied in this space. The technical improvements made in 2020 enabled zero-knowledge to roll out more broadly in 2021, enabling ZK Rollups to gain visibility as the dominant tool for scaling. In 2021 ZKPs also saw further technical improvements to verification and prover performance — with Mina’s SNARK, Kimchi, being 4–6x faster than last year while retaining its small and efficient proof size.
Following up on these cryptographic developments ZK saw, 2021 saw substantial product developments for ZK programmability. ZK programmability means taking ZK beyond scaling, zkRollups, or zkEVMs. This next step will bring something even more powerful, dapps that take full advantage of ZK’s core features, or what we’re calling zkApps.
In 2021, O(1) Labs released an early version of Mina’s zkApps. This was the first time developers have been able to code ZK within a widely available language like Typescript. O(1) just had its first workshop and hackathon for Mina’s ZK smart contracts in December 2021, with much more coming this year. At Mina, we see a huge opportunity for unlocking the full potential that ZKPs have to offer to developers through ZK programmability.
With SnarkyJS enabling simple ZK programming, developers already building with it and, the Mina to Ethereum zkBridge taking shape, it won’t be long before we start to see all the ZK app examples mentioned above deployed on Web3.
Whether it’s Mina launching the first wave of apps or the wider industry taking on ZK programming more broadly, ZK will be coming to Web3 dapps in 2022.
Other zkPredictions for 2022 and Beyond
The era of ZK in crypto is beginning, and it’s going to make a huge impact on Web3. Here are some other things I believe we will see play out this year:
- As Web3 takes off, we will see increased clarity around the need for privacy and security. ZKPs will emerge as the most promising tool to enable users to control their own data and selectively share personal information. This will bring in the next great migration of users to Web3, and further, weaken Web2-based networks.
- ZK apps will launch first in the most obvious realms: voting and private identity management along with rollups playing a big part of this development.
- At least one zkEVM will be released in beta before the end of the year
- At least one large tech company will announce something big to do with ZKPs — it’s too early for a product, but the formation of a team or major research effort.
Between all of this, we also see the general timeline for the broader rollout of ZKPs coming into focus. When we look back, I would predict we will see it unfold under a timeline like what follows:
Up to 2020 — the technical groundwork was laid
2020 — The underlying cryptography reached a tipping point of functionality
2022 — disruption begins and starts taking off as ZKPs start to become an important component for differentiating products, for scaling and otherwise
2023/2024 — disruption in full swing as ZKPs become a major component of product growth
2024/2025 — dominance of applications leveraging ZKPs and ZKP platforms
2025/2026 — normalization of ZKPs and ZKP powered platforms
A Final Thought
As ZKPs and crypto go mainstream for building a scalable, private, and secure Web3, there will be the opportunity to build tech that truly empowers users.
And fortunately, we’ve seen within Web3 the will to execute products with values as a goal. We’ve already seen crypto accomplish feats such as the transition from Proof of Work to Proof of Stake in this vein. It will be exciting to see what else we can accomplish, as crypto starts impacting the broader world. And at Mina, we’re excited to keep driving towards such a culture that is powered by participants, and build that future with our community.