
Author: Sid, IOSG Ventures
Is the experience of using the wallet really bad?
Imagine that every time you watch a video on Facebook, or comment on a post or picture you like, you must log in before you can operate it. Over time, users will be less and less or even no longer use it.
With today's blockchain construction method, there are frictions in user experience from the wallet layer, interaction layer, and settlement layer.
Hasu (strategy lead at Flashbots and strategic advisor at Lido Finance) described some bad experiences with wallets when interacting with 2-3 DeFi protocols. The diagram below compares the current state with the ideal state.
With many game studios starting to develop games on-chain, and developer interest in building social apps, is the current infrastructure ready for the next billion users? What if the user experience is not good?
Ecosystem Status
There are also other solutions to enhance the user experience and security of wallets. I divide them into two categories:
Account Abstract Wallet
Wallet using underlying EOA
MPC (Multi-Party Computing Wallet) Type
MultiSig multi-signature wallet
MPC
A multi-party computing wallet (MPC) means that the single private key of EOA is dispersed into smaller pieces and stored securely among three different parties. m/n or n/n parties can sign transactions together, which can be users, devices, and third-party services.
Shard keys are usually stored and computed off-chain, which may not be in line with the spirit of decentralization, but is a very secure way of managing wallets. We can improve user experience services by reducing the barriers to private key management, such as SSO can be built on top of MPC wallets. Such as Fireblocks, Anchorage, etc.
multisig wallet
Multi-signature wallets are smart contract wallets that require 2 or more external accounts to sign transactions. Multisig wallets don't have many use cases for individuals, but can be very effective for organizations. In the case of preventing a single user from escaping with funds or assets belonging to multiple people, multi-signature is currently the best option. For example, Gnosis Safe is an industry benchmark.
Account Abstraction Wallet
Account abstraction is a new technology unlocked by EIP-4337 that opens new horizons for users of Web3.
Let's take a deeper look at Account Abstraction (AA) again.
Account Abstraction and Why It Matters
To understand what an account abstraction is, we need to first understand what an account means. Ethereum (and most other EVM-based chains) have two types of accounts, which are:
Externally Owned Account (EOA)
Contract Account (Contract Account, CA)
The externally owned account generally refers to the wallet account owned by the user, and the contract account is the address of the smart contract. In the account abstraction, we are mainly talking about the external account EOA.
The architecture of EOA is to use a pair of keys to verify transactions: a public key and a private key. They are used to prove that the transaction was indeed signed by the sender, thus preventing forgery. The private key is generated through the "mnemonic phrase" obtained by the user when opening the wallet.
Private keys are used to sign transactions to ensure transactions are signed by the account owner and to prevent malicious transactions. Ownership of the private key defines the "self-escrow" of the EOA.
This architecture works well to some extent for Web3 educated users, but it has many problems.
wallet access
It is easy and free to create EOA, but ETH must be consumed for every EOA transaction. This requires users to interact with a centralized exchange, or have someone send ETH to their external account EOA.
The second problem is that the user needs to save the mnemonic phrase. For users who did not understand this behavior before, they cannot understand the importance of the private key.
private key management
The user (the owner of the EOA) does not know the importance of the private key, but only knows that he cannot disclose his mnemonic to anyone. So the learning curve threshold for users to join Web3 is quite high and the process is cumbersome.
Reliance on ECDSA signatures
The current way to sign transactions on Ethereum is to use ECDSA signatures. ECDSA signatures are not quantum-resistant (elliptic curve cryptography is vulnerable to Shor's algo, a modified version of the algorithm used to solve discrete logarithm problems on elliptic curves, and quantum computers can easily run Shor's algorithm). Although this is not a direct impact, considering the future development of Ethereum, we need to think about what may happen in the future.
action = transaction
Today, any action a user takes on-chain is considered a transaction. So it is very inefficient for users when they have to perform multiple actions to complete a transaction. For example, if a user were to play a Web3 game, it would kill the fun of the game when every action in the game requires a transaction signature.
Why not choose an existing smart contract wallet?
From the user's point of view, the smart contract wallet can accomplish all this by adding EOA's private key management, and then adding a repeater to help gas subsidies. The process is shown in the figure below.
The problem with this system is: EOA also still requires private key management. Although these private keys can be securely managed, it is still necessary to rely on a third-party service MPC/multi-signature service provider. Web3 Auth uses MPC system, while Safe Wallet uses multi-signature mode. For gas subsidies, there are also external dependencies on relayers (such as those provided by Biconomy).
Using these execution layers that are built into the blockchain itself is always better than relying on third parties, as others may have glitches.
future direction
As Vitalik and team made very clear about Ethereum's move to abolish EOAs in general, all wallets that are currently implementing ERC-4337 will lose their unique value proposition that is currently better than EOAs.
Having said that, in the two years (since the account abstraction was first proposed), wallets that implement ERC-4337 will be aggregated and distributed, and wallets are sticky products when users use the blockchain.
While the ultimate goal of Ethereum is to remove EOAs from the Ethereum network, getting rid of EOAs is not as easy as one might think. There are certain trade-offs.
It is not possible to convert existing EOAs to AA wallets due to the existence of only ERC-4337
Gas inefficiency (a basic UserOperation requires 42,000, while a basic transaction requires 21,000)
Benefit less from in-protocol censorship-resistant techniques such as crLists (a mechanism that forces validators to add transactions to mempool blocks) against transactions that miss user actions. (crLists does not apply to the UserOperation mempool).
The Ethereum Foundation recognizes these tradeoffs and proposes a possible solution to address them.
Convert EOA to contract account. EOAs need to be allowed to perform an operation that sets their contract code. Once an EOA has done so, the transition is irreversible; from then on, the account will only function as a smart contract wallet. Therefore a new EIP must be created. The proposal proposes to create a function named "AUTHUSURP". (Reference reading: EIP: 5003 )
Reduce gas. This is possible (but no explicit ETD) when Verkle trees come online. However, bundling UserOperations into a single transaction is more economical than doing a UserOperation in the same block.
Summarize
Summarize
game
game
With blockchain gaming expected to strengthen in 2023, AA wallets will play a pivotal role in the success of blockchain gaming. The user experience of games on the chain will be greatly improved through Session Keys. Session Keys allow users to pre-approve transactions for an application based on a set of parameters: such as a fixed duration, maximum gas amount, maximum transaction volume for a specific token, or specific functionality for a specific contract. Users will be able to pre-approve their session with some basic terms, hit play, and play without being constantly bombarded with their wallet asking you to confirm the transaction. They only need to worry about the blockchain part when the game goes offline or swaps tokens. Wallet providers such as Sequence are already doing this with major blockchain games to improve the experience for gamers.
DeFi
DeFi users have a poor experience when using DeFi protocols. Because every time a user wants to complete a transaction on the perpetual futures platform, they need to sign two transactions and pay Gas fees twice. During this time, transaction prices may change.
High-frequency traders can complete transactions faster and with a better experience when using account abstraction wallets. Account abstraction allows interoperability between dApps with the help of bundled transactions in a single transaction. For example, now I can deposit ETH into Aave and exchange the received AETH into USDC, all of which will be completed in one transaction. Bundling transaction and session keys will help existing DeFi users to have a better experience; SDK-based approaches will not be adopted by DeFi, as DeFi is a private and highly intentional use case, so we need to be familiar with the user's Needs cannot be divorced from users. Usually DeFi users are also familiar with how on-chain works.
Web3 Social (DeSoc)
Web3 social has a strong narrative in 2023.
As the next million users will flood the cryptocurrency market through DeSoc and NFTs, this will be one of the biggest trends the market is watching and the builders are aiming for. Account abstraction can help users settle in with minimal friction points through the SDK, and there may be some initial gas sponsorship into Paymaster to help users have a smooth experience, and Session Keys can be used to interact with social dApps.
Original link