Account Abstraction: The True Path to Mass Blockchain Adoption

What does a user need to start using Web3? Of course, the user must create an account to interact. And the number one blockchain with which users can interact and on which many Web3 projects are built - Ethereum.

As you all know, there are two types of accounts in Ethereum: Externally owned accounts and Smart contract accounts (which are enhanced with Account Abstraction).

Before talking about Account Abstraction, what's wrong with the Externally owned account?

Externally Owned Account (EOA) is the most popular way to create an account in Web3 today. But this is not the best solution, especially for beginners, because of the terrible User Experience (UX). User Experience is how a person feels while interacting with a system: more problems - less desire to use it.

Let's talk about the problems of Externally Owned Accounts (EOA) and why it's so hard for beginners. And problem number one - the onboarding process is breaking users' habits. What does it mean? Let's compare eCommerce CJM (Customer Journey Map) and Externally Owned Account CJM.

Comparing eCommerce CJM and Externally Owned Account CJM.
Comparing eCommerce CJM and Externally Owned Account CJM.

At first glance, it seems that eCommerce is complicated because it consists of many steps and sometimes the use of different applications: website opening, registration with email and password, mail verifying, and (after shopping) the user has to enter next: personal data, delivery address, delivering type, credit card data (sometimes with 3D Secure confirmation) and this is it, the purchase is completed.

eCommerce is complicated, but it's more familiar for everyone because they know what to do. For this reason, the number of e-commerce worldwide users should have already reached 3.8 billion (99firms).

Externally Owned Accounts are not very complicated. The user downloads the application, copies the seed phrase, deposits crypto for paying a fee and is ready to make the first transaction. Yes, it is simple, but users are not used to this. The problem is a Seed Phrase.

The Seed Phrase differs from what users expect to see because all classic financial products users trust require personal things - mobile phone, email, passport or client number. In the case of a client number, the bank, for example, can confirm authentication using a mobile phone confirmation (via SMS or voice call) or any other Two two-factor authentication.

When getting the Seed Phrase, users usually need help figuring out what to do with it. In the world of digitalization, we do not have the habit of keeping all access to financial products in one singular place. Even if we do, usually, this is protected by some two-factor authentication, like SMS, email, etc.

You may have already guessed problem number two - Seed Phrase cannot be protected by Two Factor Authentication. Lost phrase - lost everything.

Advantages of a Seed Phrase

A Seed Phrase is a simple set of words that gives access to a crypto wallet, and it is much easier to copy them somewhere safe, and there is less chance of making a mistake in some characters than saving a private key of random characters.

Disadvantages of a Seed Phrase

Access to a crypto wallet requires only this set of words. If you store those words online, the server it resides on may be compromised.

The ways to save Seed Phrase
The ways to save Seed Phrase

It can be hacked if you hold it on an Internet-used device. If you store it on a device that does not have access to the Internet, there is a risk that the device will fail, like any electronic device. If you store the phrase on a physical medium, there is a risk of losing or that medium may be damaged due to other factors. For example, the paper may get wet, metal rust, etc.

And the worst thing about this situation is that you can't implement Two Factor Authentication (which I highly recommend putting on all your mailboxes and social applications if you want to keep access to them safe).

If the user is unsure about the protection of the keys to the crypto wallet, he does not trust the blockchain.

Therefore, product designers creating interfaces for crypto wallets try to suggest different options for forcing a person to save this phrase and verify it by offering to manually enter parts of the phrase or choose the order of words.

Losing the Seed Phrase is not a unique situation. You can see a lot of headlines like "Fenbushi Capital Partner Loses $42 Million in Personal Funds From Supposed Leaked Seed Phrase" or "This man owns $321M in bitcoin — but he can't access it because he lost his password"

Why is Account Abstraction the critical solution to push mass adoption forward?

As I wrote above, the Seed Phrase is not as complicated as e-commerce can be, but it's not familiar to the users, and they are not used to this. Make things familiar - and they will become convenient for users. And this is where Account Abstraction can help us.

What is Account Abstraction? It's a smart contract account. Unlike an Externally Owned Account, which can only sign transactions with a pair of public and private keys, this smart contract account can contain many functions, which makes it more flexible and increases security.

A smart contract wallet is a decentralized wallet that allows users to interact with smart contracts on the blockchain. Users can create, deploy, and execute smart contracts directly from the wallet with a user-friendly interface. There are a few examples of smart contract wallets: Clave, Safe, Ambire Wallet, Argent, etc.

What is Native Account Abstraction?

zkSync (zk-rollup platform from Matter Labs) supports native Account Abstraction. Accounts in zkSync can initiate transactions, like an EOA, but can also have arbitrary logic implemented in them, like a smart contract.

Native Account Abstraction on zkSync fundamentally changes how accounts operate by introducing the concept of Smart Accounts and Paymasters. Smart Accounts are fully programmable, allowing for various customizations such as signature schemes, native multi-sig capabilities, spending limits, and application-specific restrictions.

You can check the differences between Native Account Abstraction and EIP 4337 on zkSync Documentation.

Account Abstraction improves User Experience

Account Abstraction is a custom code that allows you to have a lot of functions that increase security, recovery options, pay gas for someone else, and, my favorite - improve User Experience.

Improving UX and security is crucial for mass adoption. Account Abstraction, which eliminates the need for seed phrases and enables social recovery or biometric signatures, can provide these necessary improvements. Alex Gluchowski, zkSync

So, what is UX? According to Nielsen Norman Group, User experience includes all the aspects of the interaction between the end-user and the company, its services, and its products.

To know more about this interaction, User experience focuses on profoundly understanding users, what they need, value, abilities, and limitations. We must understand users to help them avoid the main obstacles of mass blockchain adoption.

How to onboard users using Account Abstraction?

What is the first most popular obstacle users have in interaction with any digital product? Onboarding. How can Account Abstraction help us here?

Account Abstraction is a code that can include different authentication options like mail confirmation, phone confirmation, any social media, and anything that can be implemented, like your digital identification.

Biometric authentication is the perfect solution for mobile applications.
Biometric authentication is the perfect solution for mobile applications.

My favorite is Biometric authentication. Approve your identity using Face ID or Touch ID, and this is it, you open yo ur account. Fantastic flow. And if we want to replace Externally owned accounts with Account Abstraction in the context of mobile applications, Biometric authentication is more than cool enough.

What do we know about users?

But if you want to push mass adoption, you have to know what is better for whom, you have to learn about users. But how can we learn about millions of users? We can categorize them. We can even create personas that will describe each category. Let's have Mike, who is new in the blockchain sphere, and Amy, an expert with five years of experience.

In 2017, I worked with some centralized exchanges, and at that time, there was a trend to divide users into less experienced and more experienced categories. For this reason, you can notice somewhere simple mode for Mike and pro mode for Amy.

At that time, centralized crypto exchanges dominated the Web3 market, and this newbie mode was the attempt to provide mass adoption for users like Mike, who wanted to invest in crypto. But what if Mike does not trust centralized crypto exchanges and wants to avoid investing or touching crypto?

Today, we must stop dividing users into two categories to provide mass blockchain adoption. We do not have less experienced users and more experienced. We have users with their habits, with something they got used to doing.

Onboarding the player of mobile console games to the blockchain

Let's continue to learn about Mike. Mike is a gamer without any passion for crypto or crypto wallet. He uses a game console where it is impossible to install Metamask, and he does not want an external crypto wallet that he can connect to the game using Wallet Connect, for example.

He wants to play and get achievements. Can we use his habits and integrate blockchain to add to his process blockchain value?

What if the game allows him to keep his game achievements and items in the blockchain in NFT? Authorization to this game account can unblock his smart contract wallet.

What about paying a fee? The game platform where Mike downloaded a game can pay a fee instead of Mike. Because of Paymaster. One of the Account Abstraction key components.

Blockchain can add value to products by adding benefits such as trust, security, transparency, etc. Mike can play games as always he did it before, but with the benefits blockchain can provide. Earned items in NFT Mike can transfer or sell and be a blockchain user. By the way, this selling and transferring can be additionally protected by SMS or mail confirmation because Account Abstraction allows it.

Onboarding of investment consultants and their clients

Another case is Amy. Amy is an investment adviser. You can ask her to help you to invest in crypto. But instead of sending your crypto tokens to Amy or sharing a seed phrase with her, you can ask Amy to initiate the transaction for you and approve it in your smart contract wallet. This transaction can be delayed because Amy can set the price from and to and add fees and time limitations.

What about the fee? Amy can pay instead of you because you already paid for her services. Also, Amy can be a guardian and protect this investment portfolio if someone wants to withdraw above the daily limit or send tokens to unknown addresses.

To realize this scenario, Amy can have a smart mobile phone crypto wallet protected by Biometric authentication. Amy can log in to the desktop devices with the same authentication at home and office, allowing them limited access.

This allowed her to work all day without opening her mobile phone for approval every time she initiated transactions, but she had to use her mobile phone, in some specific cases, as a guardian to protect client portfolios.

This case with Amy improves security and trust to the blockchain. This is also important for blockchain adoption.

More examples of mass adoption with Account Abstraction

What about corporate cases? As you remember, we have to use something users get used to. Employees worldwide have corporate accounts they can use to do something inside the company. This personal corporate account can be a way to open a personal smart contract wallet.

This is how a company can integrate blockchain inside the processes and pay fees instead of employees, so they will not even know about crypto. The security department will be a guarantor for this employee's accounts, so risk management from Account Abstraction is an excellent tool.

Just imagine another example - every MS Office user can authorize transactions directly from their email or MS Teams app.

What about entertainment? Imagine every YouTube channel can have its own custom YouTube smart contract account that holds history, video links etc., in decentralized storage, which would instantly turn YouTube into a decentralized social network.

Here are just a few examples out of a million possible use cases thanks to the Account Abstraction.

Stop forcing everyone to install a crypto wallet to push mass adoption!

The users even can do not even know how blockchain works. It's like driving a car. You can love driving and enjoy it without knowing how a car works inside.

Learn about your users and their habits. Allow them to use your product in their own way with blockchain value, and they will love it.

Account Abstraction allows you to create products and unique flows for users and their habits. Here's how Account Abstraction makes mass blockchain adoption close.

You can check my speech about Account Abstraction on DappCon 2023 on YouTube.

About Author

Andrii Bondar is here ✋ I'm a product designer at Matter Labs, the team creating zkSync - a Layer2 protocol that scales Ethereum. I focus on User Experience (UX) and Developer Experience (DX) to make web3 easier and blockchain closer to users and developers.

Follow me on social media if you like my content: X Twitter, LinkedIn, YouTube

Subscribe to Andrii
Receive the latest updates directly to your inbox.
Mint this entry as an NFT to add it to your collection.
Verification
This entry has been permanently stored onchain and signed by its creator.