Why smart contract-based accounts will drive further adoption of Web3
Improving the Onboarding and User Experience
The user experience of web apps has improved drastically in the last 5–10 years. Everybody uses the web to quickly book flights, make reservations, send money, schedule meetings, read the news, connect with friends, etc.
Internet companies do everything to make their web applications as fast and user-friendly as possible. You only need an internet connection to get started.
Now think of the web3 applications and summarize the steps you must take before starting. And what can go wrong along the way:
- Download a browser extension Most people start with installing the Metamask browser extension.
- Create a wallet Write down 12 words that you need to keep safe. “Lose your keys, and you lose your funds” - a scary message for newcomers.
- Sign up on a crypto exchange This usually requires KYC verification, which could take a couple of days to complete. Not something you want to do if you just want to try out web3. You have to be highly motivated to go through this process.
- Deposit money If everything goes well, you can now deposit some money into your account. If you don’t have a credit card, you might need a wire transfer, which could take a couple of days.
- Buy tokens Many days later, you can finally buy some ether (or another native token) needed to cover the transaction fees (gas) for interacting with the blockchain.
- Send tokens to your wallet Now you need to send that ether to your wallet. This can go wrong; if it does, you might not be willing to give web3 another try anytime soon. You probably also get charged for that transaction, and with high gas fees, this could mean you end up with much less ether in your wallet than you anticipated.
- Make a transaction Finally, after your ether has arrived in your wallet, you can try to do a transaction. Maybe you want to buy an NFT, but you don’t have enough ether to cover the gas fees because you didn’t expect the transaction fees to be that high. Now you need to go back to the crypto exchange, buy more ether, etc.
A lot of effort must be spent before making your first transaction on a blockchain. Although crypto adoption seems to grow massively, it’s mostly still the early-adopter and tech-savvy people willing to go through this process.
Adoption vs. Speculation
Although it’s estimated that almost 1 of 5 adults in the US owns crypto, the number of people who have transacted with their own crypto wallet is likely only a fraction. A big group of crypto buyers is only involved in speculation and never gets their crypto off exchanges.
The benefits must be clear for web3 to get more widely adopted, and the initial onboarding needs to become way more effortless.
The steps you must go through to make your first interaction with a decentralized application are just too much of a hassle for the regular person. Every action the user needs to take increases the change they give up.
People expect fast and easy-to-use applications, and there is no reason to make an exception for applications powered by a blockchain.
Improving UX with Blockchain Accounts
We can not continue with the industry's current standards to solve the onboarding problem.
The user experience needs to be better for wider adoption ever to happen.
Fabian Vogelsteller, once a lead developer at the Ethereum foundation and the creator of the ERC-20 standard, has been working on solutions for the most important problems of the web3 experience. He started LUKSO, a new EVM chain much like Ethereum 2.0, and with his team, developed new standards that could help the industry forward. Potentially the most impactful one is Universal Profiles: smart contract-based accounts.
A Universal Profile (often called UP) can serve as your wallet and the public profile you use to interact with decentralized apps. They provide the flexibility needed to create better user experiences that key-based wallets like Metamask do not.
A Universal Profile can:
- hold funds (crypto/NFTs)
- interact with any address or contract
- have any information attached
Although the profile can be created like any other web profile, much more is under the hood. A Universal Profile contains three smart contracts that work together:
- The ERC725Account is a smart contract that contains some specific ERC725Y keys that describe the profile. This standard represents the core account contract, allowing the profile to interact with any address or smart contract on the blockchain.
- The Key Manager is a smart contract attached to an ERC725Account and can act as the profile owner. Permissions for an address are stored inside the key-value store of the ERC725Account contract, and the Key Manager can read those permissions and perform a transaction or restrict access. It also allows relay transactions, enabling third parties to pay a user’s transaction fees (GAS). This can solve the issue of losing all your funds when you lose your keys. You can now have a backup account that you can give specific permissions. You can also permit platforms to relay a transaction for you, meaning they can cover the gas fees. If a platform makes money, with a subscription model, for example, it can easily cover the gas fees for its users. This solves the issue of first needing to go to a centralized exchange. LUKSO will subsidize early adopters by running a public relay service, allowing anyone to interact with the LUKSO blockchain without complexity.
- Universal Receiver Delegate. This contract knows incoming transactions and handles those incoming value transfers by registering the data keys representing them. Your Universal Profile will be updated directly when it receives new tokens or NFTs, so you are always aware of what tokens you own. It can execute any custom logic. For example: - reverse all receiving tokens - reverse only the tokens that are not verified - automatically selling all incoming tokens directly through a decentralized exchange
LSP0 ERC725 Account overview (from the LUKSO documentation)
A platform-independent profile
A Universal Profile is an open standard and operates platform-independent. Consider current web2 accounts' limitations, like your Twitter profile. Going to a different social platform means you must build your following and reputation from scratch. You can not take all your Twitter data with you. It’s also not your data. You don’t own that account, you are renting it. The data lives inside the company's database and is controlled by them.
With Universal profiles, you own your data, and you can give platforms permission to access (parts of) it. If you don’t like the platform anymore, you can go to a competitor and take all your data with you. This puts users back in control and improves the user experience. With the click of a button, you can connect your profile to an app, and all your data is right there.
Web3 can give great benefits to people on the internet. From interacting with defi-protocols to gaining ownership over digital items to decentralized social networks that give back control and ownership to creators. It can improve the user experience because people only need to connect their wallet/profile and have all their data and belongings available.
But for web3 to get further adoption and see more people use blockchain applications (instead of only speculating on the price of tokens), we need a more frictionless onboarding experience and easy-to-use apps that demonstrate the benefits for the users.
There are solutions in the making, and Universal Profiles is one of them that has a lot of potentials. Initially available on Lukso, a new blockchain with a set of tools and standards for developers to take the current state of web3 to the next level.
Although you still need to download a browser extension, everything after that is way better than the current state of crypto wallets.
You can already experience the ease of creating a UP by downloading the browser extension and creating your profile.
You can mint your first NFT for free on Universal Page, the first NFT marketplace on LUKSO, which also allows you to turn your Universal Profile into a customizable website where you can showcase and sell digital assets.