The Benefits of a smart contract wallet

Since smart contract wallets bring the functionalities offered by smart contracts while replicating those of traditional wallets (access & transfer funds), the possibilities become near-endless. We will dive into the main one we’ve implemented and are exploring here at Monolith.

Fund safety is paramount

There are essentially two ways to go around increasing users fund safety with a smart contract wallet. You can either reduce the number of assets exposed if a breach was to happen or provide additional features to recover funds if the seed phrase is lost. Even better, you can do both!

A/ Protect assets, even if the access is compromised

To reduce the exposure in case of attacks while preserving usability, we currently have two main features live and implemented in the contract wallet:

The Daily Limit specifies a maximum daily limit for the entire contract. The amount can be denominated either in ETH or fiat currencies (using an oracle). Address Whitelisting defines a list of trusted addresses that are not affected by the daily limit. Any address (up to 5) can be used.

Together, these two simple mechanisms greatly reduce the potential impact of an attack. In a worst-case scenario, even if your seed was compromised, the daily limit restricts the damage that can be done on the first day of the attack. By then, you’ll have found out about the compromise, and will have moved your assets out quickly thanks to the whitelisted addresses.

B/ Recover lost assets

While the solutions we presented so far are well-conceived and efficient, they don’t solve the million-dollar problem: what happens when a user loses his seed, be it by death or negligence? So far the answer has had to do with the custodial vs non-custodial debate.

Since custodial wallets have access to users’ funds, they can sometimes provide a solution for this issue. The user (or his family) can re-verify his identity in the hopes of recovering the funds. On the non-custodial side, we couldn’t really do much better than a “Sorry, that sucks!” until very recently.

Indeed, having a contract wallet opens an array of possibilities to finally solve this challenge without requiring custody over users’ funds. We’re now seeing the light at the end of the tunnel and studying the different methods we could use to offer a credible answer to this issue.

One of the most promising is the dead man’s switch.

Through regular usage of the wallet (such as a card top-up), users will be automatically sending “keep-alive” signals. If they don’t, the contract assets can be recovered on another address, as defined in the contract. With this mechanism, the assets can be safe even if one forgets or loses one’s seed phrase.