Announcing MetaMask Version 8

Dan Finlay
Jul 2 · 6 min read

Everyone’s favorite way to use Ethereum applications now comes with a host of new features!

Today, we’re rolling out MetaMask Version 8. This represents a major upgrade to MetaMask and offers a number of new features that no wallet has delivered before.

Unparalleled Privacy Control

Most wallets today either manage a single account, or expose the currently selected user current account to all connected sites — broadly revealing users’ private information.

In MetaMask V8, when you connect to a website, you have the option to select one or more accounts to associate with that website or create a new account just for that site. You decide what each site has access to.

Image for post
Image for post

This new feature enables you to easily switch between accounts, so you can control which accounts interact with different sites across the decentralized web.

If you open a site that is not connected to the selected account, MetaMask will alert you and allow you to connect.

Image for post
Image for post

A new connection indicator (seen here with “Not connected” shows your connection status and opens a menu with your account connections and site permissions.

These site permissions reflect our EIP-2255 permissions system, which will become more rich over time. These new and enhanced permissions will enable powerful features like decryption, access to wallet information (like your favorite tokens or contacts), and paves the way for MetaMask Snaps extensibility.

Image for post
Image for post

A Slick, New UI

Perhaps the most obvious change to version 8 is a refreshed MetaMask UI. Our team has focused on delivering these new features with a cohesive experience. When opening MetaMask version 8 for the first time, you’ll be introduced to our new features through helpful UI hints.

Image for post
Image for post

The home screen, asset page, and transaction history have been redesigned with your assets now easier to access. Instead of tapping a hamburger icon to view your assets, you now access them via the ‘Assets’ tab on the home screen.

Image for post
Image for post

The ‘Assets’ tab contains a list of the assets you currently hold and are tracking in MetaMask. Click each asset to view a details page with the transaction history of that asset.

Image for post
Image for post

The new ‘Activity’ tab is a redesigned transaction history view. With new iconography, each type of transaction is more easily recognizable.

Image for post
Image for post

More Features For Developers!

Thanks to a huge community contribution, MetaMask now ships with two new methods that allow websites to encrypt and decrypt messages intended for Web3 users.

Image for post
Image for post

For now, these decryption requests each require user confirmation, so it’s mostly ideal for decrypting infrequent, important messages, like emails. Later on we have an opportunity to make this same decryption strategy available with the permissions system described above.

You can read more about the new decryption API here.

Image for post
Image for post

In the past, we’ve received feedback from developers that on-boarding users is a source friction in their funnel.

We want to make it as easy as possible for your users to interact with your application through their MetaMask account and make sure users who land on your site stay on your site.

To help, we’ve created a new onboarding library which enables applications to implement their own connect button. It allows a user to seamlessly land on your site, install MetaMask, and be automatically redirected back to your application so they can continue their journey. Learn more about using our new on-boarding library here.

Image for post
Image for post

The Ethereum provider just got a non-breaking upgrade! This EIP formalizes a JavaScript Ethereum Provider API for consistency across clients and applications.

The Provider’s interface is designed to be minimal, preferring that features are introduced in the API layer (see e.g. eth_requestAccounts) and agnostic of transport and RPC protocols.

Instead of using the old ethereum.sendAsync(options, callback) pattern everywhere, you now get a nice and simple const result = await ethereum.request({ method, params }).

It’s designed to be ergonomic and extensible API, friendlier to use than sending a full RPC object for each request, and perhaps best of all, it supports returning Promises and registering subscriptions.

Read more about it here.

If you’re a developer that relies on the window.web3 object injected by MetaMask, you’ll need to implement changes before we remove the injected web3 object or your site will break. We recommend migrating to using window.ethereum or ethers.js, ASAP. We will announce a deprecation date as soon as we’re willing to commit to a firm date.

If you’re a developer that only relies on your own version of ethers or web3, you won’t need to take any action — just keep it up to date. If you are choosing a new convenience library, we recommend ethers.

Read our documentation to learn more. Our docs site has recently been revamped, thanks in part to amazing contributions from the MetaMask community (shout out to Austin Akers!).

Cutting Edge Security

Nothing is more important than your security at MetaMask. Our new LavaMoat tool helps raise the bar of security for nearly any JavaScript project.

Image for post
Image for post

MetaMask is a web and JavaScript-based wallet. JavaScript often gets a bad reputation because untrusted code is often pulled into production environments. For a wallet, this is more dangerous than ever.

LavaMoat is a set of tools we’re building that uses Secure EcmaScript to confine every third-party dependency in a piece of JavaScript code at build time. We hope to eventually confine every dependency in our entire wallet, greatly protecting us and our users from the category of “supply chain attacks”.

We’re happy to announce that we now have the first LavaMoat protected process live and in production! We now have our ropsten test-network faucet secured with this new build security system!

You can:

We hope you enjoy this new release of MetaMask. Learn more about MetaMask or download it at metamask.io. If you’ve spotted a bug or have other feedback, please drop an email to our support team.

MetaMask

MetaMask is a bridge that allows you to visit the…

Thanks to Erik Marks

Dan Finlay

Written by

Decentralized web developer at ConsenSys working on MetaMask, with a background in comedy, writing, and teaching.

MetaMask

MetaMask

MetaMask is a bridge that allows you to visit the distributed web of tomorrow in your browser today. It allows you to run Ethereum dApps right in your browser without running a full Ethereum node.

Dan Finlay

Written by

Decentralized web developer at ConsenSys working on MetaMask, with a background in comedy, writing, and teaching.

MetaMask

MetaMask

MetaMask is a bridge that allows you to visit the distributed web of tomorrow in your browser today. It allows you to run Ethereum dApps right in your browser without running a full Ethereum node.

Medium is an open platform where 170 million readers come to find insightful and dynamic thinking. Here, expert and undiscovered voices alike dive into the heart of any topic and bring new ideas to the surface. Learn more

Follow the writers, publications, and topics that matter to you, and you’ll see them on your homepage and in your inbox. Explore

If you have a story to tell, knowledge to share, or a perspective to offer — welcome home. It’s easy and free to post your thinking on any topic. Write on Medium

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store