Infrastructure and developer toolkit Biconomy and Virtual Labs are partnering together to enable a seamless UX that abstracts blockchain complexities away from the user. The future of Web3 is faster and easier than traditional Web2, necessitating dApp user experiences which are more seamless, secure, and scalable than the current status quo.
What is Biconomy?
Their reputation precedes them. For the uninitiated, Biconomy provides full stack account abstraction. Smart contract wallets, high efficiency gas bundling, and gas-sponsoring paymasters form their triumvirate of core offerings. DApps without Biconomy's tech stack find themselves limited to web3 native users, resulting in poor onboarding of new users, low user retention, and even lower user growth.
Some of the coolest features they offer are social logins, batched and gasless transactions, dynamic token paymasters, and session keys powered by Smart Accounts, allowing users of all levels to easily interact and execute blockchain transactions. DApps are using these features to onboard new users with ease, fulfilling crypto’s promise of becoming truly permissionless. In short, Biconomy makes web3 interactions so intuitive they feel like web2.
How does Account Abstraction work, and what is it anyway?
To understand account abstraction (AA), it is necessary to understand the fundamentals of how the Ethereum Network interacts with Externally Owned Accounts (EOAs). EOAs represents a cornerstone of the Ethereum network, distinguished from its counterpart, contract accounts. Governed by private keys and detached from any smart contract association, EOAs are created by individuals who generate a private key. Then, the EOA becomes the primary vessel to hold and manage Ethereum assets, transact with smart contracts, and interact with dApps.
In comparison to contract accounts, which come to life upon the deployment of a smart contract, EOAs owe their existence to the generation of a private key which then yields an Ethereum address. EOAs not only facilitate the transaction of ERC-20s, but serve as the primary conduit for users to participate in pivotal Ethereum activities like DEXs, NFTs, and other dApps.
Diving deeper into the attributes of EOAs, the private key which generates them is their key attribute. These keys sign transactions, confirming the authenticity of the account. Apart from harboring Ethereum tokens such as Ether (ETH) and other ERC-20 tokens, EOAs actively converse with smart contracts, dispatching transactions and enabling the affiliated code's execution. In stark contrast to smart contracts, EOAs shun any associated code and purely oversee Ethereum's management and storage. EOAs unlock the avenue for individual interaction with the Ethereum blockchain, rendering ETH transactions and smart contracts feasible.
However, the relationship between EOAs and the Ethereum network is not perfect. Ethereum's current transactional system has significant limitations which hurt the user experience and are downright confusing. Namely, the Ethereum network struggles with batched transactions and requires users to keep an ETH balance for gas fees at all times.
Account Abstraction is the solution to these problems. AA gives users more granular control over how their EOAs interact with smart contracts by allowing users to define what constitutes a valid transaction. Biconomy offers AA via Smart Contract Wallets and User Operations. For a fantastic technical overview of how this is possible, see Part 1 and Part 2 of a blog post series written by Biconomy’s CTO. Otherwise, here is a non-technical description:
“At its core, account abstraction is about giving developers the power to programmatically set the validity conditions of a transaction. In simpler terms, it's about making transactions on the blockchain customizable beyond the traditional rules of the Ethereum Virtual Machine(EVM). This can also be described as ‘programmable transaction validity.’
Traditionally, on networks like Ethereum, a transaction is considered valid if it meets certain criteria, such as having enough balance to pay for gas, having the correct nonce, and possessing a valid digital signature. Account abstraction allows developers to define their own set of conditions under which a transaction is deemed valid.”
Source: Introduction to Account Abstraction by Biconomy
Smart contract wallets promise a plethora of user advantages. At the core, they offer customizable security settings, such as establishing personal security rules, facilitating account recovery, sharing security features across devices, and even allowing others to cover transaction costs. In the existing Ethereum framework, only EOAs, which are basically public-private key pairs, can initiate transactions. If an individual loses their private key, they're at a standstill; losing all access to their account and the associated funds. Smart contract wallets present an alternative.
AA simultaneously offers layers of security features such as backup keys, multi-signature approvals, account freezing, transaction limits, and whitelisting. Ultimately, account abstraction paves the way for enhanced user experiences and heightened security at the protocol level, promoting a better overall user experience.
What is Virtual?
Virtual Labs increases dApp retention and usability by eliminating gas fees and latency. Our flagship product, the Virtual Rollup, is blockchain’s first ZK state channel which bundles unlimited transactions from an unbounded user base. DApps not utilizing Virtual Rollups require time and cost intensive wallet interaction for every single in-game action. Even with a smart contract wallet, the user is required to wait for finality.
As a tangible example, think about playing on-chain poker without Virtual Rollups. Players are betting around three to four times for all four rounds (pre-flop, flop, turn, and river) for every single hand they play. Each time a player wants to make a bet, that player needs to confirm this transaction which requires opening Metamask, paying gas, and waiting for finality. This leads to a game which is unbearably slow and unnecessarily costly because of gas fees, causing the user experience to be so bad it’s infeasible.
State channels, popularized in 2018, were originally designed to facilitate peer-to-peer cryptocurrency transactions without engaging the blockchain for every single transfer. They work by having two participants deposit funds into a multi-signature wallet, after which they can conduct an unlimited number of transactions over the channel. These transactions only require the two participants to sign and do not involve the blockchain, thereby saving on transaction fees and speeding up the process. However, the popularity of state channels declined due to limitations like their suitability only for two users, the need for predefined relationships, and their operational complexity.
Virtual Rollups are emerging as an evolution of the state channel concept using zero-knowledge proofs, dubbed “ZK state channels.” We aimed to address the limitations of traditional state channels. Unlike their predecessor, Virtual Rollups can handle an unlimited number of participants, making them more versatile. We also introduced features like Dynamic Channels, allowing players to join and exit without creating a new on-chain channel. These channels operate by enabling users to send tokens to a smart contract, establishing a “Virtual Balance.” As users engage in activities, their balances adjust, and when users decide to exit, all participants generate a signature of the final state. This signed state can then be submitted to the mainnet for processing and the release of appropriate funds. If a user refuses to co-sign the final state, Virtual Rollups have a mechanism for dispute resolution and penalization based on timestamps and aggregate agreement throughout the life of the Rollups. A specific, technical description of the entire Virtual Rollups protocol can be found here.
Virtual Rollups facilitate direct, trustless peer-to-peer interactions over any dApp or Web3 game. As the decentralized space continues to evolve, a combination of technologies like AA and Virtual Rollups will be essential for addressing scalability and addressing user experience challenges.
With Virtual Rollups, Virtual Labs is enabling gaming to be fully on-chain and trustless without the limitations of centralized sequencers or servers. In the poker example above, a player would deposit collateral into the Rollup once, then every single bet or action they take afterwards would be instant, gas-free, and replicate what happens in a poker game IRL.
How Virtual and Biconomy Create Perfect Usability Together
Biconomy abstracts, Virtual bundles. Biconomy solves the notoriously onerous crypto onboarding process. Virtual eliminates gas fees and latency by forming ZK state channels that enable users to validate data between themselves. Together, any dApp or Web3 game can use our tech stacks to offer a Web2 style user experience, where players join a lobby without connecting their Metamask wallet, pay little to no gas, and leave with their winnings already deposited in their account.
The Biconomy Full Stack Account Abstraction SDK and Virtual Lab’s Virtual Rollups SDK will be easy to integrate within one product that delivers seamless onboarding, no user gas fees, and zero latency.
Get started by getting in touch with Biconomy and Virtual.
Source
Introduction to Account Abstraction | Biconomy
Decoding EntryPoint and UserOperation with ERC-4337 Part 1 | Biconomy
Decoding EntryPoint and UserOperations with ERC-4337 Part 2 | Biconomy