imToken: Three Problems to Solve for the Next Generation Web3 Wallet

CN
1 year ago

Ownership control, general accounts, and understanding user intentions.

Author: imToken

It is well known that the field of blockchain digital assets has developed rapidly in recent years, and the application scenarios are constantly expanding and entering the public's view. However, as the core medium for users to interact with the blockchain world, decentralized wallets still have a high learning curve and usage threshold for the general public.

A new system, unfamiliar technical terms, special ways of storing private keys, and frequent occurrences of loss, theft, and fraud have made the general public hesitant or only superficially involved.

In addition, the user experience process based on technical implementation also brings a high learning curve for users. Therefore, how to help the general public overcome various obstacles and build a user-friendly decentralized wallet experience has become the vision of imToken and many practitioners.

In the process of exploring the next generation of wallet experience, imToken starts from user research, conducts market segmentation and user profile construction. Starting from user needs and pain points, it has built an information architecture based on usage scenarios and task priorities, focusing on novice users and new users, while also taking into account the needs of expert users for decentralization, high security, and resistance to censorship.

In the process of exploring user experience optimization solutions, we are also constantly summarizing corresponding design strategies, such as:

  • Onboarding should not end with creating an account and backing up the private key, but should also help users understand the new product model, product value, and explore blockchain digital assets. Allowing users to explore without backing up or even without an account can help users build trust in the product and bridge the knowledge gap.
  • Establishing a token-centric information model to gain comprehensive understanding during user interactions with tokens.
  • Segregating the usage scenarios for daily asset viewing and regular in-depth analysis, integrating professional and timely insights into specific scenarios through smart asset analysis, providing effective information for different types of users to facilitate decision-making.
  • Faced with the high threshold of private key backup, imToken is actively exploring biometric verification, personal cloud backup, encrypted file backup, MPC, and backup methods based on smart contracts. However, each backup method has its advantages and challenges. Balancing security, convenience, decentralization, and meeting the needs of different users is an important consideration for wallets.

imToken will continue to explore the next generation of wallet products and work with many outstanding practitioners to jointly promote the optimization of decentralized wallet experience.

The Three Main Issues of Wallets

The following is the product framework developed by imToken for the next generation Web3 wallet, which mainly covers the problems faced by current wallets, existing methods and their limitations, and the future directions we are considering.

Image

△ Chinese interpretation: "I have 3 ETH and want to earn income by staking these assets."

The above sentence covers the three main issues that wallets need to address.

Image

First is ownership, i.e., who owns the encrypted digital assets, and how to securely and easily verify ownership and allow owners to authorize when necessary.

Second is account and asset management, determining the types of assets owned by the owner and presenting the information in an orderly manner to provide insights to users.

Finally, when users participate in blockchain use cases using assets, we need to understand their intentions and help them achieve their goals.

Let's take a look at how current wallets handle these issues.

Image

At the bottom is an ownership control module (also known as key management service), which adopts the EOA structure, containing a pair of private and public keys to manage ownership. imToken is a wallet that supports multi-chain assets and allows users to manage assets on multiple chains using a pair of keys through the HD structure.

However, assets are still stored separately on different chains, resulting in a differentiated user experience when participating in use cases on different chains. Therefore, this approach mainly has two problems. First, we use a pair of keys to manage the wallet, and the concept of public and private keys is a steep learning curve for Web2 users. Second, this pair of keys leads to a single point of failure and very low fault tolerance.

At the top, because assets are separately managed on different chains, the cross-chain user experience is fragmented, and liquidity sharing is limited. To address this issue, we propose the following solution.

imToken will adopt a more universal ownership control module to replace the EOA structure, providing support for more devices and accounts, dispersing risk to multiple accounts and devices, and leveraging Web2 tools to bring a more user-friendly experience. We will also introduce the concept of general accounts to assist users in cross-chain operations. This includes universal identity portfolios and use case abstractions, among other components.

Below is a comparison between existing solutions and the future solutions proposed by imToken.

Image

MPC TSS and AA

Currently, there are two popular solutions in the industry: MPC TSS and AA. MPC TSS does not use a single key or a pair of keys to manage ownership, but divides ownership into different parts, called private key shards. To declare ownership and sign transactions, users may need to present multiple private key shards simultaneously.

This may seem straightforward, but there are many product implementation parameters to consider, such as the number of private key shards generated and the related threshold settings.

Image

A common approach is 2-2, which means generating two private key shards. Users must present both private key shards simultaneously to control the assets. However, this method lacks redundancy, and if a user loses one private key shard, the wallet cannot be recovered.

To address this issue, some teams have adopted the 2-3 method, which only requires any two out of three private key shards to declare ownership. This method increases redundancy but also brings complexity, requiring users to have a certain level of background knowledge. In theory, we can choose any M or N to increase flexibility, but managing more private key shards increases costs. Another key factor is the shared storage solution. After determining the number of private key shards and the threshold, where should these private key shards be stored?

The simplest solution is to store them with wallet operators like imToken, as operators usually have more professional management capabilities and can provide users with more secure services.

However, operators have platform dependencies, and wallet migration across platforms lacks interoperability. Although using social login can bring a more user-friendly experience, reliance on centralized Web2 services may not be suitable for Web3 users. Other optional solutions include using hardware wallets and social recovery, which minimizes reliance on centralized services. However, these concepts are difficult for most users to understand, and the implementation of social recovery also faces obstacles due to the insufficient popularity of blockchain.

Overall, due to the complexity of different parameter combinations, enterprises may need to consider the best combination to meet their needs. imToken is actively exploring different combinations to find the most suitable method for our business environment and target customers.

Another approach is to use an AA wallet, where all wallet logic is written in smart contracts (especially ERC-4337). The advantages of this method include on-chain programmable ownership control modules, the ability to introduce devices, Web2 accounts, and more complex logic such as rules, thresholds, and weight design.

In addition, more programmable use cases can be built, including allowing others to authorize transactions or pay fees, as well as on-chain social recovery, and more. Here, the key issue is not the powerful performance of AA, but more about how we formulate product strategies to identify killer features that best suit our business. Therefore, imToken is actively exploring this approach as well.

Compared to AA, the setup of MPC TSS is more flexible, suitable for different business environments, and most operations are conducted off-chain, with low costs and support for multiple chains, while also inheriting the HD structure of EOA.

However, explaining the concept of multiple private key shards and redundancy to users can be quite complex, and each device and account must have signing capabilities, limiting the types of servers and devices that can be used. In contrast, AA supports multiple use cases, with transparent logic implementation and minimal reliance on off-chain infrastructure. However, because information is stored on-chain, wallet users may face additional costs, and wallets may encounter compatibility challenges when supporting multiple chains, as each chain may implement AA in different ways.

There is no one-size-fits-all solution, and it depends on the specific use cases being served. imToken's Chief Scientist, Changwu, has proposed combining MPC and AA to maximize their respective strengths. This is also the direction that imToken is exploring.

General Accounts

The next concept I would like to introduce is general accounts, including universal identity, universal portfolio, and use case abstraction.

Regarding identity management, users want to be able to manage their wallet addresses using more readable ENS domain names. We plan to expand the functionality of ENS by introducing different formats, such as prefixes, to manage multi-chain wallet addresses and Web2 identities. However, the current cost of registering ENS domain names on the mainnet is relatively high, at around $5-600 per year, which is obviously not cost-effective for most users.

Therefore, we are considering adopting a secure offline data retrieval EIP, where platform operators (such as imToken) purchase main domain names, such as .imToken, and then allow users to register subdomains under that main domain. For example, for Alice, her subdomain would be alice.imToken.

Other users can follow the same format. This structure benefits both platform operators and users, as the operator's cost is not dependent on the number of users, and users do not need to pay additional fees. We expect to expand our product through this structure and better serve our customers.

Image

In addition, users want to be able to view their universal portfolio in all wallets, but currently, asset information is stored at the chain level, so it is most accurate there.

We can operate at the user interface level. For the individual wallet view, when a user chooses to view their individual wallet, we can display relevant information. For the universal portfolio view, we can aggregate assets.

We are considering retaining these two views, allowing users to switch between them freely, as they each have their advantages. The universal portfolio view is intuitively designed and can work perfectly with portfolio analysis tools. The individual wallet view is more suitable for experienced users, as it provides more accurate information, allowing users to perform more targeted operations. The interface layer is not only responsible for providing information but also influences the user's interaction experience.

Operating on the individual wallet view may involve details related to specific wallet use cases. In the universal portfolio view, a new user interaction method is needed to focus on use cases rather than executing details. This is known as use case abstraction. For example, Alice wants to transfer 2 ETH from her universal account alice.imToken to Bob, and Bob specifies his mainnet address to receive the assets.

The question is, how can Alice transfer the money to Bob? There are multiple ways to achieve this goal, and our solution is to introduce the imToken transaction routing module. The design concept of this module is to present the most necessary and critical information to users so that they can make better decisions. Users can choose the fastest interaction speed or the cheapest transaction cost based on different criteria, or make selections based on custom logic, such as preferring to use BTC for payment. Regardless of the user's choice, we provide detailed information so that they understand how assets will be handled in each option.

Image

But users don't have to worry. They can choose the most suitable option based on their priorities and decision criteria. We will handle the rest of the execution details for the users. Bob may not want to worry about the receiving address for this transaction, so if he chooses to use a universal account to receive the assets, the situation becomes more complex. However, the logic remains the same. Our transaction routing module will find the best transaction solution based on different criteria and present it to both parties for selection.

We have adopted this approach because most wallet functionalities today mainly focus on helping users complete specific tasks. However, we recognize that today's users need assistance in making decisions based on valid information.

We are eager to understand the needs of users in depth to understand the fundamental motivations behind their actions. For example, when users consider staking, it is actually their desire to earn investment returns based on their financial situation and risk preferences. imToken will design better product strategies based on this and help users overcome the hassle of execution details to meet their deeper needs.

The wallet framework, ownership control model, and general account model shared above are the exploration directions for imToken's future. Wallets are the entry point for users to enter the Web3 ecosystem, and we look forward to participating in this transformation with everyone to bring a more user-friendly product experience to users.

免责声明:本文章仅代表作者个人观点,不代表本平台的立场和观点。本文章仅供信息分享,不构成对任何人的任何投资建议。用户与作者之间的任何争议,与本平台无关。如网页中刊载的文章或图片涉及侵权,请提供相关的权利证明和身份证明发送邮件到support@aicoin.com,本平台相关工作人员将会进行核查。

OKX:注册返20%
链接:https://www.okx.com/zh-hans/join/aicoin20
Ad
Share To
APP

X

Telegram

Facebook

Reddit

CopyLink