Upgradeable wallet
Although it is generally easier to build a great experience with a specific use case in mind, let’s look at a case where we would like to make a wallet that is made for a broad range of uses and audiences. It needs to be suitable both for beginners and expanding users, and for holding anything between small and significant amounts. How do we choose a single private key management scheme for this situation?
The solution in this case could be a wallet that enables the user to upgrade the scheme as their experience and funds grow. The idea is to provide progressive security that doesn’t introduce unnecessary friction until it is required. Our wallet will be able to switch from;
- Automatic cloud backup - as default for new users, who often start out with small amounts
- External signing device - for more experienced users, and when funds have grown
- 2-of-3 multi-key - for seasoned users, and critical amounts
- 3-of-5 multi-key - for really serious situations and/or very high amounts
Design considerations #
- Low friction onboarding
- Guide the user through scheme upgrades as funds grow
Technical considerations #
- Need to handle many schemes; automatic cloud backups, recovery phrases, external signing devices, multi-key
Onboarding & upgrading #
The screens below show how this architecture allows users to get onboarded quickly, with upgrade options easily accessible.

A cover screen should offer clear options to create and import wallets.

Explain what is about to happen. Be transparent about how the private key is stored and the risks. Advanced options can be placed on a separate page.

Due to the default use of automatic cloud backup, users can quickly reach the wallet home screen

Changing the key management scheme is accessed via settings.

Schemes are clearly explained, and changes should guide users through the steps involved.
Resources