• Sun. Jun 30th, 2024

What Are Smart Wallets and How to Use Coinbase’s Smart Wallet

What Is A Smart Wallet?

A smart wallet is a non-custodial crypto wallet powered by a smart contract on the blockchain. It enables enhanced security features (like account recovery), programmable logic for custom features, and improved user experiences (like gas fee abstraction and batched transactions).


Key Takeaways

  • Smart wallets shorten the wallet onboarding experience with the help of smart contracts, removing the need for users to manage their seed phrases. 

  • With the introduction of smart wallets, users can participate in various crypto-based activities without needing multiple approvals, and can even batch multiple actions into a single transaction.

  • Coinbase launches its smart wallet on 8 major blockchain networks, aiming to onboard 1 billion onchain users in the future. 


Smart wallets powered by smart contracts offer the best wallet onboarding experience for crypto users, and with the launch of Coinbase’s smart wallet, this revolutionary innovation has taken a significant leap forward.

According to Grand View Research’s report, the global market size of crypto wallets is anticipated to surpass $48 billion by 2030 at a CAGR of ~25%.

Smart wallets’ instant onboarding feature and the entry of big crypto players like Coinbase will play a crucial role in boosting the growth of the overall number of crypto wallets in the coming years.

Introduction to Smart Wallets

A smart wallet is a type of crypto wallet that uses smart contracts to abstract many complexities typically associated with traditional crypto wallets. Some features include multi-sig transactions, automated approvals, and conditional transfers, making them more versatile than standard wallets.

Unlike traditional wallets, which primarily store private keys and sign transactions, smart wallets can execute programmable logic, allowing for more complex operations and interactions with decentralized applications (dApps).

What this means is that smart wallets can automatically manage and execute tasks based on predefined rules and conditions. This ability enables users to perform a broader range of activities within the blockchain ecosystem, such as automating payments, participating in decentralized finance (DeFi) protocols, and securely interacting with various dApps, all without requiring manual approvals for each action.

At the end of the day, the aim of smart wallets is to simplify user experience. Here, the absence of complexities in storing seed phrases and private keys offers a smooth user onboarding experience. Smart wallets also offer users improved flexibility around managing authorization and approvals, which, as Vitalik Buterin highlights below, is exceptionally important for MPC wallets.

How Do Smart Wallets Work?

The key innovation behind smart wallets is account abstraction.

Traditional crypto wallets are often associated with Externally Owned Accounts (EOAs). These accounts rely on a single private key for access and transaction signing, where users have to authorize every interaction with the blockchain on their account. 

On the flip side, smart wallets are built as dApps that use smart contracts on the blockchain to enable users to manage their digital assets. This fundamental shift provides immense flexibility and potential for new features, with the following key elements:

  • Storage: Stores the user’s assets (tokens, NFTs, etc.) and keeps track of the account’s nonce (a number used to prevent replay attacks).

  • Logic: This is the executable code that governs the wallet’s behavior. It defines rules for:

    • Batching: Allowing multiple operations from the same user in a single transaction, where the first operation is part of the input to the second operation. 

    • Authorization: Who can initiate transactions (e.g., multi-sig requirements, time-based restrictions).

    • Transaction Validation: What types of transactions are allowed (e.g., spending limits, whitelisted addresses).

    • Gas Payment: How transaction fees are handled (e.g., paying with alternative tokens, sponsored transactions).

Not all smart wallets are the same, and while ERC-4337 – the intended solution for account abstraction – is not live yet, it has already been approved through Ethereum’s on-chain governance. ERC-4337 avoids the need for consensus-layer protocol changes, instead using UserOperation objects that package up the user’s intent, and these objects are then bundled into a single transaction which will be included into an Ethereum block.

In the meantime, smart wallets are still being built using the following three foundational technologies:

  1. EIP-5792

  2. ERC-6492

  3. ERC-7677

 

EIP-5792

EIP-5792 aims to standardize the interaction between decentralized applications (dApps) and wallets, particularly focusing on smart contract wallets.

This proposal seeks to improve user experience and developer workflows by simplifying how dApps request and execute complex transactions on the blockchain.

EIP-5792 introduces three new JSON-RPC methods:

  1. wallet_sendCalls: Allows dApps to request a wallet to execute a batch of on-chain calls (transactions) in a single request.

  2. wallet_getCallsStatus: Allows dApps to query the status of a previously submitted batch of calls (using wallet_sendCalls).

  3. wallet_getCapabilities: Allows dApps to discover the capabilities of a connected wallet. These capabilities might include supported transaction types, fee payment options, or other advanced features.

Coinbase Smart Wallet is among the first in the industry to support EIP-5792.

ERC-6492

A big downside of smart contract wallets (SCWs) is the inability to sign messages or transactions before they are deployed on the blockchain. This is because the contract’s address, which is used to derive the public key for signature verification, isn’t known until after deployment.

As a result, UX takes a stab, particularly for account abstraction wallets, where users want to interact with dApps even before their wallet contract is created.

ERC-6492 introduces a new standard for signatures that are compatible with the widely-used ERC-1271 (Standard Signature Validation Method for Contracts).

Here’s the process:

  1. Pre-Deployment Signature: Before the SCW is deployed, the user (or the wallet creation mechanism) generates a signature using the deterministic CREATE2 address of the yet-to-be-deployed contract.

  2. Signature Format: The signature includes a special suffix (0x64926492…) to signal that it’s a pre-deployment signature.

  3. Verification Contract: A standard “Universal Validator” contract is deployed on the blockchain. This contract can validate both traditional ECDSA signatures and EIP-6492 signatures.

  4. Verification Process: When a dApp or another contract needs to verify a signature from an SCW, it checks the signature format and if it’s an EIP-6492 signature

ERC-7677

Paymasters are services that can sponsor transaction fees (gas) on behalf of users, allowing for gasless or reduced-fee transactions.

ERC-7677 defines a standard interface for paymaster services to interact with wallets, making it easier for wallet developers to integrate paymaster functionality and for users to benefit from gasless transactions.

In simpler words, users can perform transactions without worrying about the associated gas fees, as these fees can be covered by the paymaster. This functionality is particularly beneficial for new users who may find the concept of gas fees confusing and off-putting.

ERC-7677 introduces a set of JSON-RPC methods that paymaster services must implement:

  1. pm_getPaymasterStubData: Called by the wallet when a user is constructing a transaction. It returns “stub” values for the paymaster-related fields of the UserOperation (a data structure used in account abstraction transactions). These stub values are used for gas estimation and transaction validation.

  2. pm_getPaymasterData: Called by the wallet after a user has signed a transaction. It returns the final, valid data for the paymaster-related fields of the UserOperation. This data is included in the final transaction that is submitted to the blockchain.

Benefits of Smart Wallets

Smart wallets bring numerous benefits to the table, transforming the user experience and making blockchain technology more accessible.

Here are six key benefits of smart wallets.

No Third-Party Installs

Smart wallets eliminate the need for users to install third-party applications or extensions.

Traditionally, setting up a crypto wallet involves downloading an app or browser extension, which can be a deterrent for less tech-savvy individuals.

With smart wallets, users can create and manage their wallets directly within their web browsers or dApps, making the process seamless and user-friendly. It reduces the friction associated with onboarding new users.

No Seed Phrases

One of the major pain points in traditional wallets is the management of seed phrases. Users are required to securely store a series of words that serve as a backup for their wallet. Losing this phrase means losing access to their assets, and anyone with knowledge of the seed phrase can access the wallet and its contents.

Smart wallets do away with the need for seed phrases, enhancing security and ease of use. Instead, they utilize more intuitive and secure methods for account recovery, such as passkey compatibility and encrypted backups. Implementing passkeys protect against unauthorized access, ensuring that only authorized individuals can initiate transactions or access sensitive information on the wallet. 

Highly Flexible

Smart wallets are highly flexible, allowing users to manage their balances across different platforms and spending across multiple apps. Based on the user’s needs, smart wallets can support a wide range of functionalities, from simple transactions to complex multi-step interactions with decentralized applications (dApps).

This flexibility makes smart wallets suitable for both beginners and advanced users. Developers can also leverage this adaptability to create customized user experiences, enhancing the utility and appeal of their dApps.

Gas Abstraction

Smart wallets integrate paymasters, which are entities that can sponsor transactions on behalf of the user. This feature is particularly useful for enabling gasless transactions.

Users can perform transactions without worrying about gas fees, as these fees can be covered by the paymaster. This reduces the financial barrier to using blockchain applications and makes the experience more user-friendly, especially for newcomers.

Explore the Base Gasless Campaign here.

Batched Transactions

Batched transactions, enabled by EIP-5792, allow multiple actions to be bundled into a single transaction. This significantly improves efficiency and reduces costs.

For example, users can approve and execute a trade in one seamless step rather than navigating through multiple transactions.

Batched transactions streamline processes and enhance the overall user experience by making interactions more straightforward and cost-effective.

Magic Spend

Magic Spend is a unique feature of the Coinbase Smart Wallet that simplifies the process of spending cryptocurrency. It allows users to spend their funds directly from their Coinbase account without needing to transfer assets to their smart wallet first.

This eliminates the many steps involved in managing balances and ensures users can quickly and easily complete transactions.

Risks of Smart Wallets 

Smart wallets are undoubtedly one of the revolutionary innovations around crypto wallets. However, it is not totally immune to risks.

  • Smart Contract Bugs: The smart wallets’ reliance on smart contracts opens the door for possible attacks. For example, the existence of smart contract vulnerability allows attackers to access users’ wallets and misuse their crypto assets. 

  • Malicious Guardians: Smart wallets collaborate with multiple third parties for various purposes like transaction relying, wallet locking or recovery, and multi-signature validating. Therefore, there exists a possibility that malicious guardians can initiate foul plays to negatively influence the smart wallet activities.

Guide to Coinbase’s Smart Wallet 

Coinbase, which is one of the top crypto exchanges with an asset holding of over $330 billion, launched its smart wallet on June 5, 2024.

Coinbase’s Smart Wallet is a new type of self-custody crypto wallet designed to make it easier for users to interact with DeFi. It aims to combine the simplicity of centralized wallets with the security and control of self-custody.

What Is Coinbase’s Smart Wallet?

Coinbase’s smart wallet was launched to offer simplified crypto onboarding, which expires with the elimination of recovery phrases. Along with that, these smart wallets provide interoperability with various apps and allow gasless transactions.

With the help of this smart wallet, Coinbase aims to onboard over 1 billion onchain users. This smart wallet also comes with major dApp integrations like PancakeSwap, Zora, Moonwell, etc. 

The highlighted advantages put forward by Coinbase’s smart wallet include:

  • Seamless onboarding experience with the use of a passkey without the need for seed phrases or private key storage. 

  • Easy payment using Coinbase’s wallet or other self-custodial wallets.

  • Provides support to thousands of on-chain apps.

  • Developers can offer the gasless experience to users through paymaster integration. 

Presently, Coinbase’s smart wallet supports 8 blockchain networks with more additions in the future. A companion web app is also available with Coinbase’s smart wallet for identity and crypto asset management, along with other features to buy, sell, swap, or send NFTs and crypto assets. 

Setting Up Coinbase’s Smart Wallet

Coinbase’s smart wallet is only accessible through browsers, and there are no apps or browser extensions. To set up this smart wallet, follow these simple steps:

1. Visit Coinbase’s smart wallet website and click Create smart wallet.

2. Then click Create a smart wallet on the pop-up window.

3. Next, you need to create a passkey for your Coinbase’s smart wallet.

For this demo, we are creating a Passkey on MacOS.

For other Windows devices, you select any of these two options:

  1. Windows Hello or external security key.

  2. Phone, tablet, or security key.

4. Your Coinbase’s smart wallet is ready for use. 

Buy, Receive, and Swap Tokens Using Coinbase’s Smart Wallet

Now, let’s look at how to buy, receive, and swap with Coinbase’s Smart Wallet.

To Buy Tokens with Coinbase’s Smart Wallet

1. Click on Buy in the top right corner of your screen.

2. Next, select the crypto asset, the required amount, and your smart wallet address and continue to your Coinbase account. 

3. Then, either you can log in and pay through your Coinbase account or use a supported debit card. 

 

Send Tokens on Coinbase’s Smart Wallet

You can use your normal Coinbase wallet to send tokens to your Coinbase smart wallet.

1. Click on the Send icon between the Buy and Swap icons.

2. Enter the amount to be sent, and choose the wallet address of your Coinbase smart wallet. Ensure to verify your wallet address and click Preview send.

3. Verify the details, including network fees, and click Confirm.

4. Once again, click Confirm on the pop-up window with the asset’s price estimate.

5. Next, the crypto asset is transferred to the wallet address of your Coinbase smart wallet.

6. Finally, check your transaction history on the Coinbase smart wallet’s main menu to verify the asset received.

Swap Tokens with Coinbase’s Smart Wallet

1. Click Swap on the top right corner of your screen.

2. Choose the asset available on your Coinbase smart wallet and the asset that needs to be swapped. Here, we’ll swap ETH for a USDC token.

3. Select the value of ETH tokens that need to be swapped with USDC tokens and click Find the best price.

4. Check the slippage tolerance and fees and then click Swap.

5. Click Confirm on the next pop-up window. 

6. Verify with a passkey on your desktop or mobile device.

7. Finally, your ETH and USDC token swap is complete.

8. Verify the swap in your transaction history on the Coinbase smart wallet’s main menu.

Other Top Smart Wallets 

  1. OKX Smart Wallets: This smart wallet, launched by one of the largest exchanges, OKX, is the first web3 wallet to utilize multi-party computation (MPC) technology supported with 37 blockchains. In addition, its ‘Emergency Escape’ feature helps users recover their smart wallets using their mobile device, OKX account, or cloud backup.

  2. Fuse: This is the first Solana-based smart wallet that allows users with mobile wallet experience with social recovery options. Fuse wallet, which is initially available for the public to test on their iOS devices, uses a dual key system including a device and 2FA key to enhance the wallet security. 

  3. Locksmith: With wallet recovery mechanisms, multisig security, and automated transfer, Locksmith‘s smart wallet facilitates a smooth wallet onboarding experience. The multi-call transaction feature of this smart wallet allows users to execute numerous transactions at once, helping to minimize transaction fees. 

Conclusion

Writing down seed phrases on paper and storing them without getting damaged or lost is a problematic task. With a smart account, you just need a passkey to access and manage your wallet with minimal clicks. You’ll also be able to batch multiple actions into a single transaction, removing the need for multiple approvals. 

Coinbase’s smart wallet can play a crucial role in fostering smart wallet adoption in the crypto space. Once we understand the convenience of using smart wallets, then there’s no going back to traditional crypto wallets. 

This article is only for information and education purposes, and should not be taken as financial advice. Always do your own research and ensure you understand how smart wallets work before depositing your assets onto the platform.