Why Chain Abstraction Is the Next Frontier for Web3
Most of today’s dapps are not actually dapps, i.e. decentralized applications. If you need to leave the app in order to start using it, it’s not really an app––it’s just a frontend. If users have to manually onboard themselves through exchanges and manage multiple accounts and gas fees and bridges, did you even build an app? I think not––which may explain why only a few million people in the world are using dapps.
If we want to see mainstream adoption of Web3 because we believe a more open, decentralized internet that supports self-sovereignty for all people is better for the world, then we will need to do better.
The prevailing narrative in Web3 today is modularity, or separating out the different functional layers of a blockchain, i.e. settlement, data availability, and execution, for the sake of scalability. Layer-twos, optimistic and ZK rollups, data availability layers, sidechains, and state channels are all examples of modularity solutions.
This proliferation of blockchains & rollups has led to a degraded experience for users and developers. Modularity and a world of many chains leads to more fragmentation of liquidity, apps, and users––a significant degree of complexity in the user experience that no mainstream user could ever be expected to navigate. This also applies to developers, who feel pressure to commit to a specific tech stack while limiting the audience for their application. Now when you build a dapp, you’re enshrining yourself into a small addressable market by choosing a single chain.
I want to propose a better vision for the entire Ethereum ecosystem and all of Web3: let’s work together on advancing mainstream adoption via chain abstraction. The idea is that blockchains must be abstracted away from the user so they are not barriers to entry or participation. NEAR has been focusing on this vision since 2018 and today has achieved the most users of any network in Web3: 12.4 million monthly active accounts and 34 million accounts overall.
Here’s how we can defragment Web3 and onboard billions of users via dapps.
What does this look like for the user?
Let’s imagine how using a dapp should actually work: transacting across networks and navigating between experiences with ease, all within a single interface. As one example, Alice picks up her phone and opens KAIKAI from her lockscreen. She orders a smoothie from a local place and sees in the app that there’s a discount offer from her favorite clothing store, Maison, and orders a pair of shoes for the spring. Alice sees she has earned enough KAICHING rewards to get a badge from Maison, not knowing it’s an NFT on Polygon, and redeems it in her account.
When she browses Maison on the KAIKAI app later that day, she notices that her new badge reveals an offer to buy tickets for an exclusive event at their store with a DJ she likes. She buys the ticket with KAICHING and receives 2 tickets, still not knowing it’s an NFT on Arbitrum. Since she gets a +1, Alice invites her friend Bob to come with her and pings him for his address.
Bob sends his NEAR address to Alice and opens his app to check out the ticket. He sends Alice some ETH to say thanks for the invite and looks at the different cryptos he has in his account. Since he’s on the metro and has some time, he decides to buy some BTC and borrow against it with USDC so he can mint a Fighting Dragon NFT on Magic Eden. His friend Charles texted him earlier to get one so they could play each other in Year of the Dragon, a new game on NEAR where their dragons can battle each other for coins they can stake.
All of these interactions and transactions can take place in a single interface and in a completely private way. There are no wallets, no switching networks, and no transaction fees to deal with; those are embedded directly in the swap or the buy and handled on behalf of the user. Alice didn’t need to worry about which network the ticket is on and Bob can send her funds for the ticket in whichever crypto he wants, moving seamlessly into buying a different one the next second. All inside of an app. This is the level of seamlessness we should be striving for as an ecosystem.
How do we achieve Chain Abstraction?
Everyone building an app in Web3 will benefit from being able to access such a broad market of potential users as in this example––i.e. anyone who uses apps. Whereas today, developers choose a network based on access to liquidity or the users of a specific rollup or chain, in a chain abstraction future they can just build with the best tech. The users will show up for the best experiences.
Imagine if a Gmail user couldn’t just send a message to an Outlook address––it doesn’t make sense. The same is true for Web3 addresses. The core assumption of chain abstraction is: end users don’t care about the underlying blockchain. They just want apps to work. In reality, blockchains are simply infrastructure to receive value out of Web3: security of assets from seizure, economic opportunity, removing middlemen for transactions, global permissionless identity, data provenance, entertaining experiences, and more.
The core goal of chain abstraction is to defragment the increasingly fractured modular landscape of Web3. While this will be most visible at the user experience layer, this defragmentation of liquidity and accounts is possible thanks to innovation at the security layer.
Zero knowledge (ZK) introduces a principally new approach to ledger security. Whereas before one needed to trust a decentralized set of validators, now even a single computer can prove that rules were followed with a simple proof. This means that where before, developers would be forced to either build on a shared chain or spend immense resources to launch a new one, now they can just spin one up on their single server.
This new paradigm introduces the idea of cross settlement: as more chains become fully ZK provable, if some proof is published on other chains, there is no way to revert this chain without also needing to revert other chains. Transactions from one chain can also settle on multiple others via ZK proofs. This provides mesh security as all proofs continuously get aggregated, allowing the safe movement of assets between such chains.
In order to achieve unified security, two things are needed at the bottom of the stack: Data availability, which provides a way for everyone to sync even if the operator is offline, and a decentralized sequencer for applications that don’t have a central operator.
The next layer is identity with that security unified. Users can have an address on all possible chains and move assets between them freely. From a user perspective, this should be a single account where they interact with apps on different chains, and assets either get bridged or swapped automatically.
I call this “account aggregation” and will share more details about it in another post soon. NEAR will launch the next version of FastAuth in March 2024, which has mapping for NEAR addresses to EVM, Bitcoin, and other addresses. NEAR accounts can request to sign a transaction for another chain. This allows them to build multichain apps directly as smart contracts on NEAR.
The final layer is unifying the experience layer, or the application layer (e.g. DapDap)––providing a way to interact with apps on various chains without users switching or needing to leave a single interface. A decentralized frontend can provide easy components to build in a chain-abstracted way. NEAR can achieve this through NearJS, combining data indexing and decentralized frontends––V2 also coming in March 2024.
How is NEAR enabling Chain Abstraction?
The NEAR ecosystem has been building towards the chain abstraction vision since its beginnings in 2018, focusing on usability, a flexible account model, and a highly scalable blockchain that could support mainstream apps with billions of users. Today, the stack has expanded to support full chain abstraction across chains and all kinds of apps.
- Scalable, integrated blockchain that can grow to 1B+ daily active accounts.
- Security aggregation stack consisting of NEAR DA, zkWASM (collaboration with Polygon Labs), and EigenLayer-powered Fast Finality.
- Account aggregation on top of this to enable transacting on all chains using a single account
- Data layer that supports everything from monolithic, integrated, modular, private and permissioned chains to query data in a predictable protocol.
- Intent relayers that can execute complex intents across chains using this infra.
- Decentralized frontends that provide discoverability and composability for multiple apps across chains into one experience.
- Super (app) wallets that are user friendly and offer a way to navigate all of Web3 without having to switch networks or deal with gas tokens and bridges.
Importantly, each of these layers supports builders from across Web3, including Ethereum, rollups & L2s, and beyond––the multichain future is becoming the chain abstraction future.
Call to Action
2024 is the year of hiding the complexity of multichain infrastructure to deliver the Web3 experiences we’re striving for. Improving usability and discoverability should be a priority for all Web3 builders, as well as solving for liquidity fragmentation and security tradeoffs.
Let’s make chain abstraction a movement. The NEAR ecosystem invites builders from across Web3 to take advantage of the solutions we’re offering and to collaborate with us to build more chain abstraction solutions together. Stay tuned for more news on collaborations as well as details on an exciting event that NEAR Foundation will co-host at ETHDenver 2024.
Special thanks to Zaki Manian for conversations that led to this post as well as for his review.