I

Inter-IIT Gold Medal

Built Metamask snaps for Inter-IIT and won Gold medal in Consensys Problem Statemnet.

2

The problem Inter-IIT Gold Medal solves

You might have heard about a number of cases where the private keys of the users get compromised leading them to lose all their funds. Multi-sig functionality aims to remove these kinds of security breaches. Multi-sig Wallets refer to smart contract wallets having multiple owners and a number of threshold signatures required to execute a transaction. With multisig the users can add an additional layer of security since the attacker can not initiate any transaction from the smart contract account, without the required number of signatures. In this snap, we have applied the Gnosis Safe‘s implementation of multi-sig wallet.

This snap brings in an additional layer of security to metamask. Losing the private key of the account should not be the reason for anyone lossing all assets hence this feature provides the much needed layer that saves users even after lossing the key. The snap utilises a time-based one-time password (TOTP) which is a temporary passcode generated by an algorithm that uses the current time of day as one of its authentication factors. The user gets this one time password (TOTP) on his favorite Authenticator mobile app on initiating a transaction. A secret is generated using a one-way function and is passed on to generate the TOTP.

A malicious dapp can misguide users with its front end. For example, a buy button can withdraw all funds. In such a situation, the transaction snap will give a summary of the exact details of what the transaction will do with the user’s funds. As the name suggests, it shows the entire transaction summary of the upcoming transaction before signing the actual transaction in simple understandable language. This snap provides the user with an AI generated summary for the transaction they are currently performing. This snap provides the contract source code and the function the user is interacting with OpenAI's GPT engine, that generates an user-friendly insight for the ongoing transaction.

Discussion