DESOSA 2022

Metamask Browser Extension

Metamask is the most popular in-browser crypto wallet and therefore a critical software package for the security millions of peoples funds.

Available as a browser extension and as a mobile app, MetaMask equips you with a key vault, secure login, token wallet, and token exchange—everything you need to manage your digital assets.

With the total crypto market cap growing above one Trillion dollars, wallets like these have become critical infrastructure of a new type of finance. It’s not only holding the funds for millions of people, it’s also holding billions in value.

Authors

Pieter Tolsma

Currently in my master Computer Science, specializing in AI technology. I enjoy combining experience from different fields to create new things!

Jurriaan Den Toonder

I have done the Bachelor CSE at the TU Delft, now pursuing the Master CS, and honing in on software engineering and distributed systems as specialization.

Francis Behnen

Doing a master Computer science with Information Architecture special programme at TU Delft. Formerly bachelor Computer Science also in Delft.

Jesse Harte

Currently in my master Computer Science, unable to make reasonable choices in what I would like to specialize. I also like and have a degree in mathematics.

MetaMask - Scalability

Figure: MetaMask Logo In this final essay on the Metamask wallet extension we will dive into the scalability concerns regarding the performance and usability of the app. For a short introduction to the project itself, we like to refer you to essay 1. In this essay, we will first identify MetaMask’s scalability challenges and dimensions, after which we will take you along with our journey of finding out how the scalability can be improved along one specific dimension.

MetaMask - Quality and Evolution

Figure: MetaMask Logo Introduction In our previous two essays, we mainly talked about the vision and the architecture behind the Metamask browser extension. In this essay, we guide you through the code quality and the quality culture that exists in this project. We have already emphasized the importance of enforcing the key quality attributes of this project, so we hope you enjoy reading our analysis.

MetaMask - From Vision to Architecture

Now that we have discussed MetaMask’s product vision and problem analysis in our previous essay, we continue to discuss the system’s architecture. Most importantly, we aim to explain how and why the MetaMask developers made the design decisions to come to the current product. We will zoom in throughout this essay, starting with the system context, all the way to how MetaMask has realized its key scenarios and quality attributes.

MetaMask - Product Vision and Problem Analysis

Figure: MetaMask Logo Introduction MetaMask aims to be the singular gateway to the world of blockchain applications. It aims to give everyone everything they need to manage their digital assets in their digital life, like Ethereum and Binance coins. Our project focuses on the MetaMask wallet browser extension, which gives users simple access to blockchain-based apps. Its main utility is providing an interface between your ‘distributed’ wallet and a distributed web application.

Contributions