Web3 is a term used to describe the next generation of the internet, which is decentralized and powered by blockchain technology. In this new era, blockchain wallets play a crucial role as they serve as the gateway for users to access and interact with the blockchain. These wallets offer a range of functionalities, including creating accounts, managing assets, participating in the ecosystem, and conducting transactions. Compared to traditional payment platforms like Alipay, blockchain wallets are more decentralized, anonymous, and provide clearer ownership of assets.
A blockchain wallet, also known as a wallet, acts as a user’s passport to the Web3 world. It offers various features such as:
– Creating blockchain accounts: Creating a blockchain account can be a complex process, but wallets simplify it for users. After creating an account, wallets guide users to back up their private keys or mnemonic phrases and perform secondary verification to ensure the accuracy of the backup.
– Managing blockchain assets: Wallets greatly facilitate asset management for users. Similar to a banking app, wallets allow users to view their assets, make transfers, receive payments, and access transaction details.
– Exploring the blockchain ecosystem: Some blockchain designs incentivize users to actively participate in ecosystem building through activities like node voting, governance voting, and staking. Wallets enable users to engage in these activities and also serve as a medium for logging in and authorizing transactions on third-party DApps.
– Conducting transactions: Some wallets support services like cryptocurrency exchange, trading on exchanges, and over-the-counter (OTC) trading. OTC trading, in particular, involves peer-to-peer transactions outside of exchanges, facilitated by third-party guarantors. It is currently the primary method for fiat-to-cryptocurrency trading.
– Additional features: Due to their inherent financial nature, some wallets integrate various financial tools and functions such as mining pools, asset management, mining, and project investments to meet users’ asset appreciation needs.
When comparing blockchain wallets to Alipay, a popular payment platform, there are similarities and differences. Both wallets enable users to manage assets, make payments, and view their holdings. However, Alipay is a centralized product controlled by Ant Group, whereas blockchain wallets are native to decentralized blockchains and are nearly impossible to control. Creating an Alipay account requires personal identification and mobile information, and lost accounts can be recovered. In contrast, blockchain wallet accounts are anonymous, and once lost, they are challenging to retrieve. Additionally, Alipay manages fiat currency transactions protected by robust legal frameworks, while blockchain wallets manage assets that genuinely belong to users.
The development and challenges of wallets have evolved significantly over time. In the early days of Bitcoin, wallets were simple and required users to download the entire Bitcoin ledger, which could take days. Only a few tech-savvy individuals could operate wallets on their computers. As Bitcoin evolved, BitPay introduced the first Bitcoin electronic wallet for smartphones in June 2011, marking a historic step towards mainstream adoption. However, it could only store Bitcoin at that time. In November 2013, with the release of the Ethereum whitepaper, blockchain entered the 2.0 era, and wallets expanded their functionalities to include interacting with on-chain smart contracts alongside traditional transfer and receipt capabilities.
In 2018, the term “DeFi” was introduced, and with the launch of protocols like Compound, Uniswap, and DAI, the Ethereum ecosystem flourished. The summer of 2020 witnessed the explosion of activities like yield farming and aggregation, leading to a massive increase in wallet users. The number of blockchain wallet users surpassed 50 million, marking a period of rapid expansion.
In 2021, with the emergence of cross-chain and Layer 2 solutions, blockchain wallets became a popular choice for storing assets and conducting transactions. The ability to support cross-chain assets also became a significant consideration for users when choosing a wallet.
In 2022, at the Devcon 6 conference in Bogota, Tomasz Tunguz shared some statistics about Web3: the cumulative daily active users (DAU) of major public chains amounted to approximately 2.5 million, while traditional internet DAU reached 5 billion, indicating that Web3 adoption still has a long way to go. From the supply side, there are around 16,000 Web3 developers out of a total of 27 million developers worldwide, accounting for less than 0.06%. Therefore, widespread adoption of Web3 is still far off.
The first and foremost challenge for the widespread adoption of wallets as the gateway to Web3 is addressing the issue of “private key custody.” In the blockchain world, private keys control everything, and there is a consensus that “Not Your Keys, Not Your Coins.”
Decentralized wallets, which use mnemonic phrases and hierarchical deterministic (HD) structures to derive private keys and self-custody, seem to be the best practice for managing crypto assets. However, according to a report by Finbold, out of the 295 million cryptocurrency wallet users globally, only 81 million (21.5%) use decentralized wallets.
Entrusting private keys to centralized exchanges is inherently insecure. The FTX exchange crash in November 2022 was the latest incident in a series of exchange security breaches. Nevertheless, many users are still willing to bear the custody risk in exchange for lower costs and usability. While users can independently manage their assets by holding their private keys, the challenge lies in securely storing those private keys. Many people have experienced the dilemma of writing mnemonic phrases on paper.
According to OKLink’s data, in 2022, the largest losses of digital assets were due to private key leaks and losses, totaling $930 million, accounting for approximately 40% of total losses. In the blockchain world, once a private key is lost or stolen, the assets are permanently lost, which is difficult for ordinary users to bear.
To address the issue of private key custody, wallet manufacturers are exploring solutions such as keyless wallets and social recovery. One mainstream solution is the use of smart contract wallets.
In Ethereum, there are two types of accounts: externally owned accounts (EOA) and contract accounts (CA). A smart contract wallet is a contract account that behaves like a wallet, allowing users to manage assets and interact with DApps. Unlike externally owned account wallets, smart contract wallets do not have private keys; they only have addresses. As a result, smart contract wallets cannot initiate transactions actively; they can only execute transactions when triggered according to the code written for them. Since smart contracts need to be deployed on the blockchain, creating a smart wallet incurs initial costs.
One common type of smart contract wallet is a multi-signature (multisig) wallet, which requires multiple entities to sign with their respective private keys to execute a transaction. Each entity holds its private key, and the wallet contract verifies the signatures. The contract usually provides recovery options, allowing a majority of entities to vote and change the authorized key set, effectively solving the problem of a few entities’ stolen or lost private keys.
Multisig wallets are widely adopted by DeFi protocols and DAOs but are not the universal path for wallet mass adoption. After all, ordinary users are accustomed to Web2 payment systems and accounts, such as biometric payments and social recovery accounts.
To achieve such powerful capabilities in the Web3 world, the concept of “account abstraction” needs to be introduced.
In computer science, “abstraction” refers to extracting relevant parts from a larger entity and dividing something into smaller parts.
In Ethereum, account abstraction refers to separating transaction verification and execution from a monolithic process into smaller parts that can be adjusted based on the user’s individual needs. This abstraction allows users to interact with the blockchain using familiar account-based models while benefiting from the security and flexibility of smart contracts.
Account abstraction is a step towards making blockchain wallets more user-friendly and accessible to the masses. It combines the advantages of traditional web-based accounts with the security and programmability of smart contracts.
In conclusion, blockchain wallets serve as the gateway to the Web3 world, providing users with access to blockchain networks, asset management, participation in the ecosystem, and transaction capabilities. Over time, wallets have evolved from simple tools to multifunctional platforms, but they still face challenges in private key custody. Smart contract wallets and account abstraction are solutions to address these challenges, and future wallets may integrate even more functionalities to become the core tools of Web3.Module Component.
The core goal of account abstraction is to enable smart contracts to act as initiating accounts for transactions, allowing users to customize the security and operational models of their accounts, eliminating the need for external accounts. Due to the tight coupling between external accounts and key pairs, they are essentially the same thing and cannot be programmed with custom code to authorize transactions and unlock user experiences.
In his article “Three Transformations of Ethereum,” Vitalik Buterin mentioned that the failure of Ethereum would occur if not everyone migrated to smart contract wallets.
Therefore, account abstraction is significant for Ethereum and once fully implemented, it may give birth to new applications, gameplay, and imaginative possibilities in Web3.
Account Abstraction
Since the launch of Ethereum in 2015, discussions about account abstraction have never ceased. The latest proposal, ERC-4337, introduced by Vitalik Buterin and others, introduces UserOperations, which are special transactions that represent user intentions and allow contract accounts to execute operations proactively. These UserOperations are managed by a role called the Bundler, which simulates the execution of UserOperations and adds valid operations to a special transaction pool. The EntryPoint contract then verifies and executes these UserOperations to fulfill user intentions.
The biggest advantage of ERC-4337 is that it does not require modifications at the consensus protocol level, thus avoiding the need for a hard fork.
The verification and transaction processes are separated into two smart contracts: EntryPoint and Wallet. EntryPoint acts as a coordinator, interacting with the Wallet contract. The Wallet contract handles transaction verification based on custom logic. If the wallet contract successfully verifies a transaction, the EntryPoint contract executes the transaction and submits it to the next block.
This abstraction gives developers and users the freedom to encode anything they want into custom wallet contracts as requirements for valid transactions. For example, wallet contracts can use multi-signature, social recovery functionality, or even anti-quantum signature schemes.
ERC-6551 is a proposal by the Future Primitive team that connects non-fungible tokens (NFTs) to smart contract wallets in a whole new way, allowing for more control and flexibility over assets. This protocol, called “Token bound accounts,” allows each NFT to have its own wallet address.
ERC-6551 is not account abstraction or a new token standard. However, it can significantly enhance the functionality of NFTs when combined with smart contract wallets, making them more practical, such as enabling NFT composability, on-chain reputation, game character inventories, etc.
In principle, NFT holders create smart contract wallets by interacting with the Registry contract. The Registry contract, which is immutable, permissionless, and ownerless, deploys a unique and deterministically addressable smart contract wallet for each NFT, with control only belonging to the NFT holder. When ownership of the NFT is transferred, control of the account also transfers.
With the recent proposals of ERC-4337 and ERC-6551 becoming industry benchmarks, the industry has experienced rapid development in 2023, as shown in the following graph:
EIP-3074 is another widely supported proposal in the Ethereum community and has been formally included in the next Ethereum hard fork.
EIP-3074, proposed by Ethereum researchers Sam Wilson and Go Ethereum developer Matt Garnett, aims to allow any externally owned account (EOA) to function as a smart contract wallet without deploying additional contracts or manual migration.
EIP-3074 introduces two new Ethereum Virtual Machine instructions: AUTH and AUTHCALL, which connect an EOA to a smart contract and transfer control of the transaction to the smart contract.
AUTH: Used to verify a signature and set a context variable “authorized.” If the signature is valid and the signer’s address matches the given authorized address, “authorized” is set to the authorized address. The AUTH instruction allows a smart contract to execute operations on behalf of an EOA, enabling delegated authorization.
AUTHCALL: Similar to the existing CALL instruction, it performs an external call. The difference is that AUTHCALL uses the previously set authorized address from the AUTH instruction as the caller address. This means that AUTHCALL uses the authorized EOA as the sender instead of the contract itself.
EIP-3074 requires implementation through a hard fork and aims to give EOAs similar functionality to smart contract wallets, delegating control of EOAs to smart contracts. However, since the account itself is an EOA, losing or having the key stolen means losing complete control.
As an alternative to EIP-3074, Vitalik proposed EIP-7702 on May 7th this year. EIP-7702 allows an EOA to temporarily adopt the functionality of a smart contract wallet during a transaction and revert to its regular state after the transaction concludes.
EIP-7702 introduces a new transaction type with a “contract_code” parameter and signature. During the transaction, the signed EOA account is temporarily transformed into a smart contract wallet, achieving similar functionality to EIP-3074.
Since EIP-7702 does not introduce new opcodes, it does not require a hard fork. Its main goal is to streamline EIP-3074 and make it compatible with EIP-4337. The introduced “contract_code” parameter can be existing EIP-4337 wallet code, and through an additional EIP (EIP-5003), EOA accounts can be permanently upgraded to smart contract wallets.
In the endgame of account abstraction, all accounts on Ethereum will use smart contract wallets to manage assets and transactions, no longer relying on traditional EOAs.
Current cutting-edge research on account abstraction includes the following:
Social Recovery
Social recovery is a mechanism that helps users regain account access in the event of key loss by leveraging social relationships, such as using email to reset passwords for smart contract wallets.
Users typically need to set guardians during the wallet creation process or afterward to achieve a certain threshold of guardian verification, such as two out of three guardians, to log in or recover the wallet. This process is often referred to as multi-factor authentication.
Social recovery is a hot research direction in account abstraction, and wallets that have implemented social recovery include Argent Wallet, Loopring Wallet, and UniPass.
Intent Transactions
Intent is a set of signed declarative constraints that allow users to outsource transaction creation to third parties without giving up full control over the transaction. In simple terms, if a transaction specifies “how” to perform an operation, intent defines “what the expected result of that operation is.”
Intent transactions use the wallet client as an intent layer, allowing users to express their intentions and complete the process from intent to UserOperation.
Currently, intent transactions are only experimental projects, and both natural language input for intent and the breakdown of goals, calculation of optimal paths, and execution of operations can benefit from AI. It has the potential to become one of the scenarios where blockchain combines with AI.
Device Accounts
Device accounts (DAs) are a technology that uses hardware security modules on modern user-side computing devices (such as PCs, smartphones, tablets) to manage user keys and wallet accounts.
Device accounts rely on passwordless authentication technologies like Passkey/WebAuthn, which are more convenient and secure compared to traditional authentication methods:
– Protected by the device they are stored on and use biometric technology as an additional security measure, eliminating the need for passwords.
– Can seamlessly synchronize between multiple devices, such as phones and computers, through Airdrop/Bluetooth, resolving single points of failure.
– Can securely log in across devices, scanning a QR code with a phone and then using biometric authentication to log in to a website, improving user experience.
In conclusion, as one of the essential tools for participants in the crypto market, wallets occupy a crucial position in the infrastructure field. In the future, the importance of wallet entry will surpass that of trading platforms and become one of the foundations of Web3 traffic aggregation and the metaverse.
By integrating all DApps into wallets while supporting payments and transfers, project developers and users can gather to form a new generation of internet ecosystems based on blockchain technology. In this ecosystem, users can perform all online operations through wallets, including social interactions, short video browsing, shopping, ordering food, hailing rides, and traveling. Wallets will become the “Alipay” of Web3.