Introducing MetaMask Snaps

When it comes to accessing the DeFi ecosystem at large, Metamask has quickly emerged as the wallet of choice for many of today’s most active users. As one of the leading web 3 wallets in terms of overall downloads (over 1M users on the Chrome extension), MetaMask has long prided itself on providing a permissionless, non-custodial service that truly places the power into the hands of its users.

As Ethereum continues to explore various scaling solutions and enhanced use-cases such as plasma chains, state channels, and meta-transactions, Metamask poses an interesting intersection when it comes to abstracting technical complexity in favor of ease-of-use.

At this year’s DevCon in Osaka, Metamask is taking a major step in the right direction with the introduction of Snaps, an upgrade that allows for various plugins and APIs to be directly interfaced with the MetaMask extension.

“A MetaMask plugin is a script loaded over a verified and permissionless protocol like ENS, IPFS, or Swarm. These scripts have zero privilege by default, but will be able to request a variety of powerful wallet APIs from MetaMask, via a new API we call the wallet API.”

Why Is This Important?

Snaps introduces a variety of new use-cases thanks to the advent of functions like permissionless extensions. As it relates to you as the end-user, Snaps can be likened to the toolkit your favorite dApp uses to make onboarding and interfacing with an Ethereum-based product that much easier.

To paint a clearer picture, MetaMask is focusing on Web3 Login Permissions. For anyone who’s used a DeFi product such as Maker or Compound, they can remember how new users are required to grant approvals and sign transactions in order to authorize the platform to interact with their wallet.

With Snaps, this entire process can be optimized. By using a series of new APIs and UX upgrades, permissions can become human-readable, drastically optimize the onboarding process while giving the user (and provider) more flexibility in terms of what they want to allow the product to have access to. In practice, this would mean that instead of taking upwards of 1-5 minutes to get started, the entire process could happen instantaneously. Furthermore, users can clearly see what they’re agreeing to, and even have the ability to “uncheck” any permissions they aren’t comfortable with.

What’s the Catch?

A common theme for many blockchain services (in which wallets would fall) include the trilemma of security, usability, and utility. Without going too deep into this topic, when anyone looks to enhance any one of these areas, it’s commonplace for the other areas to suffer as a result.

“While the current model of getting user consent on a per-action basis has high security, there are huge usability gains to be had by getting more general user consent when expressed in a more human-readable way”

As this quote would imply, it’s likely that security would have to suffer (although minimally and likely unnoticeably I might add) in order to enhance usability. While I for one am all for sacrificing a slight degree of security for easier on-ramps, I can certainly understand the position of many developers who would argue this is a trade-off we simply can not make.

Looking Forward

As the industry continues to search for its killer use-case, it’s no surprise that current onboarding barriers continue to serve as a large deterrent for new users. Hopefully, Snaps can provide a framework to keep pushing the envelope on average users being able to quickly and easily access sought after Ethereum products.

Similarly, MetaMask raises an important request to continue searching for a tried and true standard for the ecosystem at large. Whereas competition has resulted in a number of unique wallet providers, none of this matters if we can’t get them into the hands of average users. Moving forward, it’s important to recognize that using MetaMask plugins and APIs as a base-layer solution might be the step new (and existing) wallets take to raise their product to the next level.

Conclusion

It’s no surprise that the core team is extremely excited about the potential Snaps can unlock. In particular, the announcement article boasts:

“The prefix “meta” means beyond, and by providing Snaps, we believe MetaMask finally lives up to its name, and becomes a Meta-Wallet, which will no longer be required to approve each new innovation in the wallet field, but instead will focus on implementing APIs that enable second-order innovation.”

While we watch Snaps unfold over the coming months, be on the lookout for seamless improvements that make your life (assuming you use MetaMask) that much easier.

Leave a Comment