Web3 小程序?MetaMask Snaps 解读

时间:2024-09-25 编辑: 浏览:(604)

MetaMask Snaps

MetaMask Snaps(https://metamask.io/snaps/) 是一个有很长远理想的项目。不过,抛去它所披着的“理想”的外衣,笔者更愿意称它为 Web3 世界的小程序。或者给它取一个花哨点的名字:dApplet。

作为开发者,特别是中国国内的开发者,应该对它的概念并不陌生。我们近些年常会听到“生态打造”、“超级App”之类的互联网黑话,商业巨头们总是想要将互联网打造的越来越封闭,以便让自己从服务提供者的角色转变为标准制定者的角色。

现在,这股风潮似乎也开始慢慢向 Web3 领域飘荡了。

到今天(2024 年 6 月),虽然 Snaps 已经出现了快要一年时间了,从概念提出更是至少 4 年了,但是普通用户对它的了解却几乎没有。笔者身边有一些非常关注加密货币市场的朋友,每天打开 MetaMask 就像吃饭睡觉一般自然,却仍然连 MetaMask Snaps 是什么都不知道。不过,在笔者向他们解释“就像小程序那样”之后,脸上也总是会立马出现一抹难以言喻的微笑(他们都是开发者,大部分是前端开发者)。

这场景莫名让人联想到微信小程序刚出来时的境况,由于功能入口不明显,使用量很是低微。后来将入口改到在首页下拉出现小程序列表后,使用量才开始大幅增长。MetaMask 既然想打造生态,那么如何吸引用户进入生态大门,恐怕会成为一个亟待解决的重要问题。

小程序从出现开始,在互联网行业就争议不断。前端工程师普遍对它的出现嗤之以鼻,认为它就只是互联网巨头为了垄断流量、封锁生态的商业工具,对于技术发展并没有太多贡献。Web3 的 Snaps 不知又能对社区有多少贡献呢?浏览 MetaMask 提供的文档,愈来愈觉得未来的 Snap 开发者将会饱尝带着镣铐跳舞的艰辛。

从 MetaMask 开启 Snaps 的公共测试版到目前已有将近一年的时间,然而其官网列出的可用的 Snaps 数量其实还不是很多,截止 2024 年 6 月,满打满算也只有 68 个。要知道,在正式公测之前,早在 2020 年左右,官方就已经提出了 Snaps 的概念,Web3 公司与开发人员其实已经有相当长一段时间来对它进行充分的了解。

一些 Snaps

笔者还没有见过专职开发 Snaps 的开发人员,不过身边 Web2 中的小程序开发者还是有不少的,对小程序的普遍看法就是开发体验比较差。小程序开发使用的依然是前端生态,但却是阉割版的,厂商因为各种各样的原因对开发者实际能做的事情进行限制。并且各厂商的技术能力、提供的文档质量参差不齐,导致开发者要在各种平台踩过各种奇奇怪怪的坑之后,才能被人称赞一句“有经验”。

再回到 Web3,出于安全等因素考虑,Snaps 极有可能面临着相似的状况,它不得不在一个隔离的安全上下文中运行,所使用的是“安全 ECMAScript”,实际上是对 JavaScript API 做了一些限制,例如无法访问 DOM、Node.js、浏览器插件 API 等。

由于可理解的安全考量,一个最基本的 Snaps 其实做不了太多事情。它的大部分功能都需要先具有相应的权限,所以 Snaps 在安装时就需要向用户申请相关的权限。可用的权限包括生命周期、交易、签名、CRON 等: https://docs.metamask.io/snaps/reference/permissions/#eth_accounts

所以,相比于繁荣的 Web3 生态,目前可用的 Snaps 少的可怜,MetaMask 将它们做了一些分类。

Snaps 类型

按照 MetaMask 官网的分类,大致能分为 4 种类型:

账户管理(Account Management)

这类 Snaps 主要通过 MPC(Multi-Party Computation,多方计算, https://blog.usecapsule.com/what-is-mpc/)技术,提高私钥的安全性。

想想我们平时是怎样保护私钥的呢?大概很多人会将助记词保存在某个地方,笔者猜普遍是自己的电脑或者手机上,哈哈。当然,如果你非常富有,钱包中的资金非常多,那么你确实可能会使用保密性更强的方式,例如使用硬件钱包。但是大多数人,说真的,仅仅是将他们的助记词粘贴在某个自己很方便就能找到的地方,以避免自己完全忘记。

这种保存方式可能会造成一些问题:

如果你忘记把助记词放在哪里了,那么你大概率是要和自己钱包中的资产说再见了。

如果你保存助记词的设备遭遇木马病毒,则很难防止黑客盗窃你的助记词。有些用户可能为了提高安全性,将自己的助记词拆分,然后分别存放。这也许能增加一些安全性,却无疑也增加了自己的管理难度与遗忘的风险。

而 MPC 技术,则可以自动将你的私钥拆分为多份,分别放到不同的地方存储,只在当需要使用私钥进行交易签名时,再将它们拼接起来生成完整的私钥,同时这个过程中并不会生成完整的私钥,最大限度保护私钥免遭泄漏。

到目前(2024 年 6 月)为止,还只有 3 个账户管理类的 Snaps,分别是 Capsule, Silent Shard 和 Safeheron。

Capsule 使用了设备的 PassKey、恢复密码和 2FA 共同维护同一份密钥,同时如果丢失了某一个,则可以通过另外两个来恢复。

Silent Shard 和 Safeheron 是通过使用多台设备安装它们的 App 的方式来实现这一点。

很难说这类 Snaps 能吸引多少 Web3 用户,从 Snaps 网站上显示的数据来看,这类型的 Snaps 确实很少,安装量也并不高。

它们使用起来并不复杂,这里不再赘述。安装完成后,你的 MetaMask 钱包中多出一个地址:

互操作性(Interoperability)

这类 Snaps 主要提供了对非 EVM 网络的兼容,我们能看到许多熟悉的链,包括 Solana、Cosmos、Near、Sui 等等。目前这类是最多的,它们占据了整个 Snaps 生态的一半以上。

丰富的多链 Snaps

通知和聊天(Communication)

笔者个人更喜欢这类型的 Snaps,不过在当下,可选的聊天应用那么多,愿意通过链来发送消息的用户显然还是少数。那么很遗憾也只能继续“战未来”了。

安全(Security)

这类的需求想来还是比较大的,特别是,MetaMask 自身在用户遇到钓鱼交易时的警告做的其实并不够。交易作为加密货币和区块链领域最常见的操作,本身具有高风险和高敏感的特点,通过 Snaps 提供的交易洞察相关功能,开发者可以对用户展示更丰富的交易信息,提供对交易的分析和见解,最大限度避免用户的资产损失。

笔者身边就有朋友曾遇到过被钓鱼网站转走账户余额,而 MetaMask 从连接钱包到转账成功,全程毫无警告的情况,无奈之下只能换用其他钱包。而且笔者当时对 Snaps 也并不了解,只是给他推荐了 ZAN 的 KYT(https://zan.top/home/know-your-transaction?chInfo=ch_WZ) 服务来保护他的交易。希望这类安全型 Snaps 能够弥补 MetaMask 自身的不足。实际上,从 Snaps 官网显示的数据来看,安全型 Snaps 也确实是除了多链支持外需求最大的,目前占据了总数的两成。

MetaMask Snaps 提供了「 endowment:transaction-insight 」和「 endowment:signature-insight 」权限来满足相关需求,Snap 申请相关权限后,可以在用户发起交易或签名时,可以读取到原始交易或签名的有效负载。Snap 可以对其进行分析,然后向用户显示更多更丰富的安全性说明。

想法

MetaMask 想要通过 Snaps 将自己的领域扩张到其他链平台,但是最终究竟能走到多远,恐怕很难如其所愿。拿 Web2 领域的小程序来说,虽然很多 App 提供了小程序版本,但是往往,简陋的小程序所提供的服务远无法与 App 相比,对新功能的跟进也经常落后,甚至许多小程序会将用户直接往自己的 App 引导。而到小程序爆发式增长后,更多 App 也都想来分一杯羹,又纷纷推出了自己的小程序平台,各家努力加固着自己的护城河,整个 Web 世界越来越“中心化”。

Web3 领域的资本也并不会比 Web2 的更高明,如果后面 Snaps 发展良好,那势必会有更多钱包跟随。如果真的到了这种地步,Web3 领域的开发者需要针对各个钱包的“Snaps”开发相应的版本,届时恐怕会让他们焦头烂额一段时间。只是,倘若各厂商都来打造自己的“Snaps”生态,又几乎等于全部没有自己独有的生态。咦,这似乎倒是也暗合它们“去中心化”的标签了。

我们也许能稍微预测一下,未来可能会有各种“Snaps-like”出现,平台差异巨大,此时对各平台的兼容成了开发者们的日常工作,最终到了不可忍受的地步。于是 Snaps Standard 在众多开发者的期待中诞生了,同时会有各种 “SIP” 供人们参与讨论,社区一片繁荣景象……

抱歉笔者个人似乎有些对 MetaMask Snaps 太没有信心了点。无论怎么说,它至少是由一群有激情的开发者所构建的、想要解决实际问题的产品,而不是由一群金融专家发起的骗局。

只是,对于 MetaMask 眼下的大部分用户来说,Snaps 确实还不算是一个特别必须的功能,MetaMask 接下来恐怕需要在如何更有效的推广方面做更多工作。

本文由 ZAN Team(X 账号 @zan_team) 的 gin-lsl 撰写。

最新 更多 >
  • 1 RYO币最高的时候是多少钱?

    RYO币最高时价RYO币是一种加密货币,与其他数字货币一样,其价格波动不可避免。RYO币的创始人和社区在不断地改进和发展这种加密货币,但市场仍对该货币造成了巨大影响。那么,RYO币价格曾经达到过多高呢?RYO币诞生以来的价格趋势RYO币最初于2018年3月上市,当时,它的成交价约为2美元。一直到2018年6月,RYO币价格走得非常平稳,甚至一度下跌。直到2018年8月,价值8美元,RYO币开始相对

  • 2 RH31币最高的时候是多少钱?

    RH31币最高价值 RH31币是在2018年5月首次面世的数字货币,起初被大多数人认为是一个泡沫,但随着市场的慢慢成熟,它的价值也逐渐攀升。那么,RH31币的最高价值是多少呢? 首先,我们来了解一下RH31币的背景和基本情况。它属于分布式应用平台类别的数字货币,使用了区块链技术,可以用来进行交易、支付等。和比特币等其他数字货币一样,它的价值也由供求关系决定。 在2018年初,RH31币的价格还不

  • 3 PULSE币历史价格走势怎么样?

    PULSE币历史价格走势怎么样?PULSE币是一种基于区块链技术的数字货币,发行于2016年。该币种的目标是提供更快、更安全、更透明的支付体验。本文将介绍PULSE币的历史价格走势。2017年初期:价格波动较大2017年初期,PULSE币价格在0.0008美元左右浮动。在3月初,价格快速飙升至0.012美元,随后一度回落至0.0004美元。价格波动较为剧烈,但整体上仍保持在较低的水平。2017年中

  • 4 RBO币最高的时候是多少钱?

    RBO币最高达到多少钱?随着加密货币的普及,越来越多的人开始关注热门币种的价格走势,其中包括RBO币。RBO币是一种以区块链技术为基础的去中心化数字货币,它具有匿名性、安全性及快速转账等特点,逐渐受到越来越多投资者的关注。那么RBO币最高价是多少呢?在2017年12月1日,RBO币达到了历史最高价,当时价格约为每个RBO币19.38美元。当时,加密货币市场在庞氏骗局质疑和监管合规压力的围攻下,大面

  • 5 SALT币的创始人是谁

    SALT币的创始人是谁?SALT币(SALT)是区块链领域中的一种代币,是个去中心化的平台,可用来借贷加密货币资产。那么SALT币的创始人到底是谁呢?本篇文章将深入挖掘SALT币的创始人信息,为大家做一个详细的介绍。 SALT币的创始人介绍SALT币的创始人是Shawn Owen。在SALT之前,Owen曾是Adepxe的联合创始人和首席信息官,并在该公司负责开发和管理技术部门。Owen还曾是一名

  • 6 RAZOR币历史价格走势怎么样?

    RAZOR币历史价格走势怎么样?RAZOR币是一个新兴的数字货币,目前在加密市场中备受关注。它是以太坊区块链上的一个协议,旨在为用户提供覆盖交易,预测市场和准确评估市场议价的解决方案。本文将探讨RAZOR币的历史价格走势以及其未来走势展望。RAZOR币历史价格走势RAZOR币于2021年2月正式上市,当时价格为0.11美元。在接下来的两个月里,RAZOR的价格快速上涨,价格达到了6.4美元,这是一

  • 7 PTT币最高的时候是多少钱?

    PTT币历史最高价探究随着区块链技术的不断推广,各种新型的数字货币应运而生,其中,PTT币作为一种区块链技术的产物,引起了小众投资者的极大关注,更是有着不少的追随者。那么,PTT币历史最高价是多少呢?下面我们一起来探究一下。PTT币历史价格波动PTT币是基于以太坊平台发行的数字货币,在其2017年创立之初,价格一直稳定在1-2元之间。2018年初至6月份,价格逐渐上涨,盘坛价值迈入了5元以上,并一

  • 8 SCI币最高的时候是多少钱?

    SCI币最高时价值多少钱?SCI币是一种数字货币,创立于2014年,旨在为科学家和科研团体提供一种安全、透明、去中心化的交易货币。作为一种新兴的数字货币,SCI币的价格经历了波动,曾经出现过历史最高价。SCI币的历史价格在SCI币的发行初期,价格相对平稳,维持在0.001美元左右的水平。直到2017年,SCI币价格开始出现明显的波动,一度达到了历史最高价。2017年底到2018年初,全球数字货币市

  • 9 SCOP币最高的时候是多少钱?

    SCOP币最高的时候是多少钱?SCOP币是一种基于区块链技术的数字货币,是Skypeople公司运用区块链技术,依据全球玩家交易数据推出的新型数字货币,并且它是一种游戏普及型代币。SCOP币在2018年开始逐渐进入人们的视野,成为了众多数字货币爱好者关注的对象。在数字货币市场波动起伏的情况下,SCOP币的价格也在不断发生变化。SCOP币于2018年1月12日在KUCOIN交易所上线,上市首日开盘报

  • 10 RRT币最高的时候是多少钱?

    RRT币最高时价达到多少钱?随着加密货币市场的崛起,越来越多的数字货币进入了大众的视线。其中RRT币在加密货币市场中备受关注,它是一种QTUM区块链上的数字货币。自从RRT币的推出以来,它曾经经历过巨大的波动和涨跌,它的价格从最初的几美分飙升到数美元。好奇心驱使我们去探索 RRT 币最高的时候到底是多少钱。RRT币的历史价格RRT币于2016年7月份的时候开始发行,当时它的价格为每个币0.01美元