Smart Contract Wallet — Part 2. We are happy to share that our MVP was…
By: Pawan Dhanwani
Tags: Blockchain, Wallet, Smart Contracts, Tezos, Tezsure

Smart Contract Wallet — Part 2

In part 1 we announced our plans to roll out a smart contract wallet. We are happy to share that our MVP was tested internally and we are working on our first public testnet release. Pawan Dhanwani Follow Jan 27 · 3 min read

Features

Tezos Domains

We have integrated Tezos-Domains through which users can buy and utilize domains. A user will need to pay 3 Tez per year per domain.

Not willing to pay for a domain? Utilize Tezsure’s subdomain!

We facilitate the registration of sub-domains for users who are not willing, or not able to pay for a domain.

We developed a queuing system to queue all incoming requests and process them one-by-one. This process may take more time depending upon the traffic.

Sub-domain registration service architecture

Importance of Social Recovery Wallets

We have witnessed various instances of users losing access to their crypto-currency due to the loss of relevant keys. Users have limited options. They can either rely on electronic devices for storing keys or they have to write it down on some piece of paper which gets lost easily.

Vitalik Buterin has recently posted about the need for wide adoption of social wallets, where he highlights the pros of using such a wallet. When you use a social recovery wallet you rely on people important and close to you to help you recover your funds, instead of a device or a piece of paper.

When you use a social recovery wallet your funds are locked in a smart contract and you use that smart contract to send and receive funds. The smart contract is still controlled by an EOA (See part 1 for our glossary) who is the admin of the contract. The great thing here is that with using multisig functionality one can change/regain access to that smart contract if access to that particular EOA is lost.

Steps to recover a wallet using social recovery

1. When you create such a wallet you need to add wardens (See part 1 for our glossary) which will help you restore the wallet in the future.

2. When you have lost access to the wallet (contract) you can stake a claim using your new EOA. Once you stake a claim a multisig inside the contract gets created.

3. All wardens need to sign the multisig unanimously for a successful account transfer.

4. Once 36 hours are elapsed to stake a claim and all wardens have signed the register for transfer the new EOA can certify the claim to become the admin of wallet (contract).

Why 36 hours?

In case wardens go rogue and fraudulently try to transfer ownership to someone else. The actual owner has 36 hours to destroy the claim and subsequently relieve wardens from their duties if fraudulent behavior is detected. It is important to note that even if all wardens have signed the account transfer register (multisig) the actual owner can destruct the claim within the stipulated time.

Support for FA1.2

We recently added functionality for users to able to transfer tokens from one SCA to another and we will be adding token transfer support in the wallet.

Roadmap

Support for Stablecoins

A wallet needs to facilitate users to allow the transfer of stablecoins between its users and we also consider it an important feature.

We have successfully tested support for Kollibri stablecoin and are working towards adding support for one or more stablecoins in our wallet.

In-app signer

Till now we were thinking of aiding the signing of operations through a third-party signer. But with the user experience in mind, we have decided to design an in-app signer that will be safe and user-friendly.