Author: gin-lsl
Source: ZAN Team
MetaMask Snaps
MetaMask Snaps (https://metamask.io/snaps/) is a project with long-term ideals. However, aside from the "ideal" cloak it wears, the author prefers to call it a mini-program of the Web3 world. Or give it a fancier name: dApplet.
As a developer, especially developers in China, they should not be unfamiliar with its concept. In recent years, we often hear internet jargon such as "ecosystem construction" and "super app," and commercial giants always want to make the internet more and more closed in order to transform themselves from service providers to standard setters.
Now, this trend seems to be slowly drifting towards the Web3 field.
As of today (June 2024), although Snaps has been around for almost a year, and the concept has been around for at least 4 years, ordinary users have almost no understanding of it. Some friends around the author who are very concerned about the cryptocurrency market open MetaMask every day as naturally as eating and sleeping, but still do not know what MetaMask Snaps is. However, after the author explains "just like mini-programs," there is always an inexplicable smile on their faces (most of them are developers, mostly front-end developers).
This scene inexplicably reminds people of the situation when WeChat mini-programs first came out. Due to the unclear entry points, the usage was very low. Later, after the entry was changed to appear in the drop-down list on the homepage, the usage began to increase significantly. Since MetaMask wants to build an ecosystem, how to attract users into the ecosystem may become an important problem that needs to be solved urgently.
Since the appearance of mini-programs, there has been continuous controversy in the internet industry. Front-end engineers generally sneer at its appearance, believing that it is just a commercial tool for internet giants to monopolize traffic and block the ecosystem, and does not contribute much to technological development. How much contribution can Web3's Snaps make to the community? Browsing the documentation provided by MetaMask, it seems that future Snap developers will experience the hardship of dancing with shackles.
From the public testing version of Snaps launched by MetaMask to the present, it has been almost a year, but the number of available Snaps listed on its official website is not very large. As of June 2024, there are only 68 at most. It should be noted that before the official public testing, as early as around 2020, the official had already proposed the concept of Snaps, and Web3 companies and developers have had quite a long time to fully understand it.

Some Snaps
The author has not yet seen dedicated developers for Snaps, but there are still many developers in Web2 who have opinions on mini-programs, and the general view of mini-programs is that the development experience is relatively poor. Mini-program development still uses the front-end ecosystem, but it is a castrated version. For various reasons, manufacturers restrict what developers can actually do. And the technical capabilities of various manufacturers and the quality of the documentation they provide are uneven, leading developers to encounter various strange pitfalls on various platforms before they can be praised as "experienced."
Returning to Web3, for security reasons, Snaps are likely to face similar situations. It has to run in an isolated security context and uses "secure ECMAScript," which actually restricts the JavaScript API, such as unable to access the DOM, Node.js, browser plugin APIs, etc.
Due to understandable security considerations, a basic Snaps actually cannot do much. Most of its functions require corresponding permissions first, so Snaps need to request relevant permissions from users when installed. Available permissions include lifecycle, transactions, signatures, CRON, etc.:
https://docs.metamask.io/snaps/reference/permissions/#eth_accounts
So, compared to the prosperous Web3 ecosystem, the number of available Snaps is pitifully small at the moment, and MetaMask has categorized them.
Snaps Types
According to the classification on the MetaMask official website, they can roughly be divided into 4 types:
Account Management
This type of Snaps mainly improves the security of private keys through MPC (Multi-Party Computation, https://blog.usecapsule.com/what-is-mpc/) technology.
Think about how we usually protect our private keys? Many people probably save their mnemonic phrases in some place, and the author guesses that it is generally on their own computer or phone, haha. Of course, if you are very wealthy and have a lot of funds in your wallet, then you may indeed use a more secure method, such as using a hardware wallet. But for most people, to be honest, they just paste their mnemonic phrases in a place that is very convenient for them to find, to avoid completely forgetting.
This way of saving may cause some problems:
If you forget where you put the mnemonic phrase, then you are likely to say goodbye to the assets in your wallet.
If the device where you saved the mnemonic phrase encounters a trojan virus, it is difficult to prevent hackers from stealing your mnemonic phrase. Some users may split their mnemonic phrases to increase security and then store them separately. This may increase some security, but undoubtedly also increases the difficulty of management and the risk of forgetting.
MPC technology can automatically split your private key into multiple parts, store them in different places, and only concatenate them to generate the complete private key when you need to use the private key for transaction signing. At the same time, this process does not generate the complete private key, maximizing the protection of the private key from leakage.
As of June 2024, there are only 3 account management Snaps, namely Capsule, Silent Shard, and Safeheron.
Capsule uses the device's PassKey, recovery password, and 2FA to maintain the same key together, and if one is lost, it can be recovered through the other two.
Silent Shard and Safeheron achieve this by installing their apps on multiple devices.
It is difficult to say how many Web3 users this type of Snaps can attract. From the data displayed on the Snaps website, this type of Snaps is indeed very few, and the installation volume is not high.
They are not complicated to use, and will not be elaborated here. After installation, an additional address will appear in your MetaMask wallet:

Interoperability
This type of Snaps mainly provides compatibility with non-EVM networks. We can see many familiar chains, including Solana, Cosmos, Near, Sui, and so on. Currently, this type is the most numerous, accounting for more than half of the entire Snaps ecosystem.

Rich Multi-Chain Snaps
Communication and Chat
Personally, the author prefers this type of Snaps, but at present, there are so many optional chat applications, and users willing to send messages through chains are obviously in the minority. So, unfortunately, we can only continue to "fight for the future."
Security
The demand for this type seems to be relatively large, especially since MetaMask itself does not provide sufficient warnings to users when they encounter phishing transactions. Transactions, as the most common operations in the cryptocurrency and blockchain fields, inherently have high risks and sensitivities. By providing transaction insight-related functions through Snaps, developers can show users more comprehensive transaction information, provide analysis and insights into transactions, and maximize the avoidance of user asset losses.
The author has had friends who have had their account balances transferred by phishing websites, and MetaMask did not provide any warnings throughout the entire process from connecting the wallet to the successful transfer, so they had no choice but to switch to another wallet. At that time, the author was not familiar with Snaps and only recommended ZAN's KYT (https://zan.top/home/know-your-transaction?chInfo=ch_wxdyh) service to protect their transactions. Hopefully, this type of security-focused Snaps can compensate for the shortcomings of MetaMask itself. In fact, according to the data displayed on the Snaps website, security-focused Snaps are indeed in high demand, accounting for about 20% of the total, in addition to multi-chain support.
MetaMask Snaps provides the endowment:transaction-insight and endowment:signature-insight permissions to meet these needs. After a Snap applies for the relevant permissions, it can read the payload of the original transaction or signature when the user initiates a transaction or signs, analyze it, and then provide users with more comprehensive security explanations.
MetaMask wants to expand its domain to other chain platforms through Snaps, but it may be difficult to achieve its ultimate goal. Taking mini-programs in the Web2 field as an example, although many apps provide mini-program versions, the services provided by rudimentary mini-programs are often far from comparable to apps. They also often lag behind in the introduction of new features, and many mini-programs will directly guide users to their own apps. After the explosive growth of mini-programs, more apps also want to get a piece of the pie and have successively launched their own mini-program platforms, each striving to strengthen their moats, leading to the entire web world becoming more "centralized."
The capital in the Web3 field is not necessarily wiser than that in Web2. If Snaps develop well in the future, more wallets will inevitably follow suit. If it really comes to this, developers in the Web3 field will need to develop corresponding versions of "Snaps" for various wallets, which will likely leave them in a state of confusion for a period of time. However, if each manufacturer builds its own "Snaps" ecosystem, it is almost equivalent to having no unique ecosystem at all. Hmm, this seems to be in line with their "decentralized" label.
We can perhaps predict that in the future, various "Snaps-like" features will appear, with huge platform differences, making compatibility with various platforms the daily work of developers, eventually reaching an intolerable point. As a result, the Snaps Standard is born in the anticipation of many developers, and there will be various "SIPs" for people to participate in discussions, creating a thriving community…
Sorry, the author seems to lack confidence in MetaMask Snaps. In any case, it is at least a product built by a group of passionate developers who want to solve real problems, rather than a scam initiated by a group of financial experts.
However, for most of MetaMask's current users, Snaps is not yet a particularly essential feature. MetaMask probably needs to do more work on how to promote it more effectively.
免责声明:本文章仅代表作者个人观点,不代表本平台的立场和观点。本文章仅供信息分享,不构成对任何人的任何投资建议。用户与作者之间的任何争议,与本平台无关。如网页中刊载的文章或图片涉及侵权,请提供相关的权利证明和身份证明发送邮件到support@aicoin.com,本平台相关工作人员将会进行核查。
