Build
4min
15th August, 2024

Building the Dream Wallet with Safe

Jesse Pollak from Base recently tweeted about the Dream Wallet. We believe our vibrant ecosystem and stack have all the crucial components to build such a dream wallet. Here's a screenshot of the wallet's diagram from the tweet. Let's review each component and pick out the associated building blocks from the Safe Ecosystem.
Safe
Ecosystem
Use Case
avatar-safe
Safe

Dream Wallet

Jesse Pollak from Base recently tweeted about the Dream Wallet. We believe our vibrant ecosystem and stack have all the crucial components to build such a dream wallet. Here's a screenshot of the wallet's diagram from the tweet. Let's review each component and pick out the associated building blocks from the Safe Ecosystem.

While these elements exist as smart contracts, a cohesive and user-friendly interface is still lacking. If you're a builder looking to create the dream wallet for the next billion crypto users, this thread is for you. All of these components are available as open-source, modular code. Safe is eager to support the next generation of builders with its open stack, helping make crypto more accessible and secure.

Main Account

The modular nature of Safe’s smart accounts allows them to function as the main account of this dream wallet. They can be extended by a growing ecosystem of native and third-party modules and extensions.

Signers

Add your favorite signers using the Safe{Core} SDK Protocol Kit.

Signers can be anything, ranging from an EOA, to a Passkey, or another smart account including Safe.

Passkey

  • Safe offers the capability to sign into your wallet using passkeys by implementing a dedicated signer that verifies the integrity of the key provided.

  • Rhinestone’s WebAuthn Validator module allows you to use passkeys to sign transactions to be executed on the account.

Multi-factor Authentication

  • Safe is a multi-sig wallet that supports adding multiple owners to a smart account and setting a custom threshold limit for signatures. This feature is like native multiple-factor authentication.

  • Rhinestone’s Multi-Factor module allows you to add multi-factor validation to an account. It validates transactions and other executions on the account.

Recovery

General and Social Recovery

  • Rhinestone’s Social Recovery module allows users to recover their accounts using a social recovery mechanism.

  • Rhinestone’s Deadman Switch module allows users to set a nominee that can recover their account if they are inactive for a certain period of time.

  • Use email addresses as guardians to recover wallet assets with the zkEmail module.

  • Candide Labs Account Recovery module allows the user to assign one or more guardians and a customer recovery period.

Timed Recovery

Zodiac Delay Modifier or the Account Recovery module from Candide Labs allows for the enforcement of a time delay between a module's transaction initiation and execution.

Manage

Subaccounts

Each Safe can have subaccounts with its own address and token balances while inheriting all security attributes from the main account.

Subaccounts can be managed in two ways:

  1. The main account can own 1:1 Safes.

  2. The main account can be configured as a module for a subaccount Safe.

This setup allows you to create ring-fenced, application-specific accounts, limiting any security risks to the assets within the specific subaccount.

Spending

Saving

Rhinestone’s Auto Savings module allows users to automatically save a percentage of their received tokens to a vault.

Beyond the dream

Flash Loan

Execute flash loan callbacks with the Flash Loan module.

Cold Storage

Rhinestone offers the Cold Storage Hook module that allows users to lock down a subaccount and perform actions after a timelock has expired.

Privacy

As @0xStef pointed out in the thread, privacy is missing from the diagram for a dream wallet. Fluidkey is working on solving this.

Enhanced Security

The modular nature of the Safe{Core} stack allows the addition of guards to every Safe. For example, one of the subaccounts could have a guard that allows only specific transactions, while the main account could have a guard that requires 100% of all owners to sign a transaction on the weekend.

Safe’s ERC-7579 compatibility

ERC-7579 offers a universal standard that ensures all modules can work across all smart account implementations supporting ERC-7579. This means that any ERC-7579 modules are compatible with the Safe Smart Account.

Be mindful that modules using the ERC-7579 standard, such as the Rhinestone modules, will be triggered only using ERC-4337 user operations.

I’m ready to build. What’s next?

Are you as excited about the possibilities of building your own dream wallet as we are? Check out our docs for more information about the Safe stack, guides, and tutorials. Here are some resources to help you along in your journey:

  • Get multi-chain gas credits from our Gas Station to make your app go gasless. Apply now!

  • Our funding programs are designed to fuel the growth and success of builders across the smart accounts ecosystem. Read more for info on our

    funding programs.

  • Join our Safe{Builders} Telegram group to connect with other projects, brainstorm ideas, request feedback, and much more!

Do you have any technical questions? Post them on Stack Exchange with the safe-core tag.

Read more

Introducing Candide’s Social Recovery Module: Enabling Composable Recovery for Safe Smart Account.
Insights3min
Introducing Candide’s Social Recovery Module: Enabling Composable Recovery for Safe Smart Account.
Safe
safe-gas-station-header-image
Announcements3min
Safe and Pimlico launch the Safe{Core} Multi-Chain Gas Station program with Polygon PoS and Gnosis Chain to sponsor gas fees for EVM users.
Safe
cover-erc-4337-integrations-now-supported-in-safecores-account-abstraction
Announcements3min
ERC-4337 integrations now supported in Safe{Core}’s Account Abstraction stack

Get the Alpha

Sign up to hear the latest from Safe in your inbox