A blockchain wallet is the gateway to accessing the blockchain, used for creating accounts, managing assets, participating in the ecosystem, and conducting transactions. Compared to Alipay, it is more decentralized, anonymous, and provides clearer asset ownership. Wallets have evolved from simple forms to multifunctional ones, including DEX and wealth management. However, they still face challenges in private key management. Smart contract wallets and account abstractions are solutions to address the issue of private key management. In the future, wallets may integrate more functionalities and become core tools in Web3.
What is a blockchain wallet?
A blockchain wallet (referred to as a wallet below) is the gateway for users to access the blockchain, serving as their passport to the Web3 world.
Wallets typically include the following functionalities:
Creating blockchain accounts
Creating a blockchain account can be a complex process, and wallets simplify this process for users. After creating an account, wallets usually guide users to back up their private keys or mnemonic phrases and then perform secondary verification to ensure the accuracy of the backup.
Managing blockchain assets
Wallets greatly facilitate users in managing their assets, including transferring, receiving, viewing asset details, and transaction details. Similar to a banking app, users can see what assets they currently own, the quantity, and perform actions such as transferring assets.
Exploring the blockchain ecosystem
In some blockchain designs, users are incentivized to actively participate in the ecosystem through activities like node voting, governance voting, and staking. Wallets enable users to participate in these activities. Additionally, some large DApps exist as third-party independent apps, and when experiencing these DApps, wallets serve as the medium for login and transaction authorization.
Transactions
Some wallets also support cryptocurrency exchanges, exchange transactions, and over-the-counter (OTC) trading services. OTC trading refers to peer-to-peer trading outside of exchanges, facilitated by third-party guarantees. It is currently the main method for fiat-to-cryptocurrency trading.
Other features
Due to the inherent financial nature of wallets, some wallets integrate various financial tools and functionalities, including mining pools, wealth management, mining, and project investments, to meet users’ asset appreciation needs.
Comparison with “Alipay”
For users who are new to blockchain, we can analogize blockchain wallets to “Alipay” from a loosely defined perspective.
Similarities with “Alipay”:
– Both can manage assets, conduct payment transfers, and view asset details.
– Both can manage identities and authorize login access to third-party apps or websites.
Differences with “Alipay”:
– “Alipay” is a centralized product controlled by Ant Group, while blockchain wallets are native to decentralized blockchains and are almost uncontrollable by individuals.
– Creating an “Alipay” account requires identification and mobile information, which can be recovered if lost. On the other hand, blockchain wallet accounts are anonymous and almost irretrievable if lost.
– “Alipay” manages fiat currency accounting, protected by comprehensive legal frameworks ensuring user “ownership,” while blockchain wallets manage assets that truly belong to users.
Development and Challenges of Wallets
During the early days of Bitcoin, wallets were rudimentary and required several days to synchronize and download the entire Bitcoin ledger. Only a few geeks could use wallets on their computers. The image below shows the world’s first Bitcoin wallet designed by Satoshi Nakamoto:
[Image]
With the development of Bitcoin, on June 29, 2011, BitPay, a Bitcoin payment processor, launched the first Bitcoin electronic wallet for smartphones. This was a historic step towards wallets becoming accessible to ordinary users, although it only supported storing Bitcoin.
[Image]
In November 2013, nearly five years after the birth of the Bitcoin Genesis Block, the Ethereum whitepaper was released, heralding the arrival of the blockchain 2.0 era. Smart contracts started being used on the blockchain, and wallets could not only facilitate transfers and receipts but also execute on-chain contract operations.
[Image]
In 2018, the term DeFi was first mentioned on Telegram. With the introduction of protocols like Compound, Uniswap, and DAI, the Ethereum ecosystem began to flourish. The summer of 2020 saw the explosion of liquidity mining and aggregators, resulting in a significant increase in trading activities. The popularity of DeFi liquidity mining led to over 50 million users using blockchain wallets, marking a period of rapid expansion for blockchain wallets.
[Image]
From 2021 to the present, with the narrative of cross-chain and Layer2, blockchain wallets have become a popular choice for storing assets and conducting transactions. Supporting cross-chain asset transfers has also become a significant consideration for users when choosing a wallet.
[Image]
At Devcon 6 held in Bogota in 2022, Tomasz Tunguz presented some statistics about Web3: the cumulative daily active users (DAU) of major public chains is around 2.5 million, while traditional Internet DAU is 5 billion, with the former accounting for only 0.05% of the latter. On the supply side, there are about 16,000 developers in Web3, compared to a total of 27 million developers worldwide, representing less than 0.06% of all developers. Therefore, Web3 still has a long way to go before achieving mass adoption.
As the gateway to Web3, the first challenge for widespread adoption of wallets is to solve the issue of “private key management.”
In the blockchain world, private keys control everything, and there is a consensus that “Not Your Keys, Not Your Coins.”
Decentralized wallets use mnemonic phrases and hierarchical deterministic (HD) structures to derive private keys and self-custody, making them seem like the best practice for managing crypto assets. According to a report by Finbold, there are a total of 295 million cryptocurrency wallet users on global exchanges, with only 81 million using decentralized wallets, accounting for 21.5%.
Entrusting private keys to centralized exchanges is naturally insecure. The collapse of FTX in November 2022 was the latest in a series of exchange security incidents. However, many users are still willing to bear the custody risk in exchange for lower costs and ease of use. For the majority of users, although they can independently manage their assets by controlling their private keys and avoiding handing over assets and data to others, the issue of private key management remains a challenge. Many people have experienced writing mnemonic phrases on paper.
According to data from OKLink, in 2022, the largest losses in digital asset value were caused by private key leaks and losses, amounting to a staggering $930 million, accounting for approximately 40% of total losses. In the blockchain world, once a private key is lost or stolen, it means permanent loss of assets, which is unbearable for ordinary users.
To address the issue of “private key management,” wallet manufacturers are exploring solutions such as keyless wallets and social recovery, with smart contract wallets being one mainstream solution.
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 external accounts, smart contract wallets do not have private keys; they only have addresses. As a result, smart contract wallets cannot initiate transactions proactively but execute transactions based on triggered events following the written code. Additionally, smart contracts need to be deployed on the blockchain, requiring initial costs for creating smart wallets.
One common type of smart contract wallet is a multi-signature (multisig) wallet, which requires M-of-N key signatures to execute transactions.
[Image]
In a multisig wallet, each entity holds their own private keys, and transaction execution requires verification by multiple entities through the wallet contract. The contract usually provides recovery options, allowing a majority of entities to vote and change the authorized key collection, effectively addressing the issue of a few entities losing or having their private keys stolen.
Multisig wallets are widely adopted by DeFi protocols and DAOs but are not the universal technological path for wallet mass adoption. After all, ordinary users are already accustomed to Web2 payment and account methods, such as biometric payments and social recovery accounts.
To achieve such powerful functionalities 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 fragment 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 according to users’ personal needs.Modular Components: The Future of Account Abstraction
The core objective of account abstraction is to enable smart contracts to act as the initiating accounts for transactions, allowing users to customize the security and operational models of their accounts without the need for external accounts. External accounts are tightly coupled with key pairs, making them essentially the same thing and limiting their programmability for authorizing transactions and unlocking user experiences.
In his article “Three Transformations of Ethereum,” Vitalik Buterin mentions that the failure of Ethereum would occur if not everyone migrates to smart contract wallets. Therefore, account abstraction holds significant significance for Ethereum, as it has the potential to give birth to new applications, gameplay, and imaginative possibilities in the Web3 space once it is fully implemented.
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 UserOperation, a special transaction that represents user intent and allows contract accounts to execute operations actively. 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. Then, the EntryPoint contract verifies and executes these UserOperations to fulfill user intent.
The greatest advantage of ERC-4337 is that it does not require modifications at the consensus protocol level, eliminating 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 and interacts with the Wallet contract. The Wallet contract handles transaction verification based on custom logic. If the wallet contract successfully verifies a transaction, the entry point contract executes the transaction and submits it to the next block.
This abstraction gives developers and users the freedom to incorporate anything they want into custom wallet contracts as transaction requirements. For example, wallet contracts can use multi-signature, social recovery functions, and even quantum-resistant signature schemes.
ERC-6551 is a proposal by the Future Primitive team that connects non-fungible tokens (NFTs) to smart contract wallets in a completely new way, enhancing 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, nor is it a new token standard. However, it can significantly enhance the functionality of NFTs when combined with smart contract wallets, making them more practical than ever before. This includes enabling NFT composability, on-chain reputation, game character inventories, and more.
In principle, the holder of an NFT creates a smart contract wallet 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 in the hands of the NFT holder. When ownership of the NFT is transferred, control of the account is also transferred.
With the latest proposals of ERC-4337 and ERC-6551 becoming industry benchmarks, the industry has witnessed rapid development in 2023, as shown in the following figure:
EIP-3074 is another widely supported proposal within the Ethereum community and has been officially included in the next Ethereum hard fork.
EIP-3074, proposed by Ethereum researchers Sam Wilson and Go Ethereum developer Matt Garnett, aims to enable any externally owned account (EOA) to function like a smart contract wallet without the need to deploy additional contracts or perform manual migrations.
EIP-3074 introduces two new Ethereum virtual machine instructions: AUTH and AUTHCALL. These instructions allow an EOA to be connected to a smart contract and delegate control of transactions to the smart contract.
AUTH: This instruction is used to verify a signature and set a context variable called “authorized.” If the signature is valid and the signer’s address matches the given authorization address, “authorized” is set to the authorization address. AUTH allows a smart contract to execute operations on behalf of an EOA, enabling delegated authorization.
AUTHCALL: Similar to the existing CALL instruction, AUTHCALL is used to perform an external call. The difference is that AUTHCALL uses the authorization address set by the previous 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 contracts, delegating control of EOAs to smart contracts. However, since the account itself is an EOA, losing or having the key stolen means complete loss of control.
As an alternative to EIP-3074, Vitalik proposed EIP-7702 on May 7th of this year. EIP-7702 allows EOAs to temporarily adopt the functionality of a smart contract during the transaction process, allowing an EOA to convert into a smart contract wallet for the duration of a single transaction and then revert back to normal afterward.
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 functionality similar to EIP-3074.
Since EIP-7702 does not introduce new opcodes, it does not require a hard fork. Its main goal is to make EIP-3074 more concise and compatible with EIP-4337. The introduced “contract_code” parameter can be existing EIP-4337 wallet code, and with an additional EIP (EIP-5003), an EOA account can be permanently upgraded to a smart contract wallet.
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. For example, it allows users to reset the password of a smart contract wallet using their email.
Users typically set guardians during the wallet creation process or afterward to enable social recovery and reach a certain threshold of guardian verification, such as 2 out of 3 guardians, to log in or recover the wallet. This process is commonly referred to as multi-factor authentication.
Social recovery is currently a hot research direction in account abstraction, and wallets that have implemented social recovery include Argent Wallet, Loopring Wallet, and UniPass.
Intent Transactions
Intent transactions are 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 treat the wallet client as an intent layer, allowing users to express their intent and complete the process from intent to UserOperation.
Currently, intent transactions are only being explored in experimental projects. AI can play a significant role in natural language input of intent, as well as breaking down goals, calculating the optimal path, and executing operations. It has the potential to become one of the scenarios where blockchain and AI integrate.
Device Accounts
Device accounts (DAs) are a technology that uses hardware security modules on modern computing devices (e.g., 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, utilizing biometric technology as an additional security measure, eliminating the need for passwords.
– Seamless synchronization between multiple devices, such as smartphones and computers, through Airdrop/Bluetooth, eliminating single points of failure.
– Secure cross-device login by scanning a QR code with a smartphone and then using biometric authentication to log in to a website, enhancing user experience.
Conclusion
As one of the essential tools for participants in the crypto market, wallets hold a crucial position in the infrastructure field. In the future, the importance of wallet gateways will surpass that of trading platforms and become one of the foundational infrastructures for Web3 traffic aggregation and the metaverse.
By integrating all DApps into wallets while supporting payments and transfers, project developers and users can gather in large numbers to form a new generation of internet ecosystems based on blockchain technology. In this ecosystem, users can perform all their online operations through wallets, including social interactions, short video browsing, shopping, ordering food, hailing rides, and traveling. Wallets will truly become the “Alipay” of Web3.