Inspiration

We were inspired to build this solution as one of the main problems we've seen with Metamask so far by now was that user is in most of the cases blindly signing transactions, and except he can see the URL of the app he's currently at, he doesn't know anything else. This was built in order to significantly reduce chances of MM users being victims of scams / phishing attacks, and as well, to give them a better general overview of the transaction they're about to sign.

What it does

By taking just a transaction calldata and destination contract address, we have pulled out a wide set of information about the transaction user desired to make such as:

  1. Adding a detailed transaction preview by encoding calldata, and showing to the user things such as:
  2. contract name he's interacting with
  3. method name & input data in human readable format

  4. Security guidebook / Warning system (Determination factors) →

  5. Is contract user is interacting with is verified on-chain?

  6. When contract was created?

  7. Is contract having N+ transactions? (scale - trust score)

  8. Is there an uploaded smart-contracts audit to etherscan?

  9. Was contract ever hacked?

  10. What’s the balance of the contract in $USD

How we built it

We have built our solution by using ethers.js, node.js, Laravel, as well as React.js for the snaps on the client sides.

Challenges we ran into

The most of the challenges while building this product were actually to aggregate the data from the right sources, and wrap it all together in a meaningful sense for a user

Accomplishments that we're proud of

We're proud of that we have made a fully working product in less than a day, as well as the whole figma design proposal for MM.

What we learned

We have learned how snaps are working, which actually opened a wide range of ideas which might be useful for MM experience.

What's next for Vikings

Given the opportunity, we might be waiting for MM to support adding tabs, and then implementation of the proposed figma UI as well as optimization / expand of the data sources, as well as increasing set of meaningful information shown to user. We have achieved so many points which require additional validation, which should also be the part of the security guidebook. Vikings can be official guards of MM users while they're signing their transactions :)

We're here to win

Metamask bounty

Built With

Share this project:

Updates