Today, there are two ways users can store and use their cryptocurrencies. The first and most common method amongst those new to crypto is to use a custodian wallet. This often places trust in a centralised company like Coinbase or Binance. Though convenient, such a system negates the core principle of the Blockchain movement, aiming at creating a peer-to-peer (P2P) financial system which people can access without the need of third party intermediaries like banks or exchanges. In other words, owning crypto held in an online exchange like Coinbase is no different from having assets in a bank.
The second option is to use a crypto wallet. Crypto wallets are accounts that exist directly on the Blockchain and hold users’ funds. Self-custodial or non-custodial wallets are accounts secured by a “private key” which is needed to authorize transactions and send money to other accounts. Only the user in control of the private key is able to initiate a transaction. As the wallet provider itself has no access to the private key, there is a heavy burden on the user to store their keys safely. Loss of them could mean funds are lost forever.
The aforementioned solutions both have big flaws. Blockchain only makes sense if people are in control of their crypto and if their funds are as safe as they are with banks today. Enter Ethereum’s decentralised smart contract wallets. These wallets hold your assets in a smart contract that exists on the Blockchain. Because smart contracts are programmable (imagine a layer of code on top of the accounts), it allows for new features that make them safer and easier to use.
For instance, it allows implementation of account recovery processes. If a user loses the phone that holds the app with the private key, the user can restore access to the smart contract that holds the funds by following a recovery process. A new private key is created and the smart contract with the users funds is assigned to the new private key.
The recovery processes come in different shapes and forms but one popular method is to let the user nominate trusted family & friends when they first install the app. This is called “social recovery” and works as follows: when the user restores the app (e.g after having lost their phone), the trusted contacts receive requests that they have to confirm. After a majority confirms, the new private key becomes the new owner of the smart contract holding the funds.
How a social recovery process looks like in Argent (Ethereum wallet)
What else is possible with Smart Contract wallets?
The good news is that the possibilities to innovate are endless. It’s basically possible to implement anything. A few examples:
- Transfer limits: a user can define the limits of how much he/she wants to spend per day/week/month
- Bundle transactions: improve user experience by bundling interactions that would take several steps using a conventional wallet into one (e.g Argent)
- No fees: The wallet provider can choose to wave the fees associated with Ethereum transactions to simplify the user experience using so called "Relayers" (e.g Authereum)
Put simply, smart contract wallets are where it’s at. They solve both problems inherent in crypto today; users stay in control of their funds while benefiting from higher security measures than they receive at their banks. If you’re yet to try one out, check out our wallet reviews here.