Web3 小程序?MetaMask Snaps 解读

时间:2024-10-02 编辑: 浏览:(10)

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 RHFC是什么币种,RHFC币怎么样?

    了解RHFC币RHFC币是一种数字货币,全称为Roaring Health Finance Coin。它是基于区块链技术的加密货币,旨在为全球健康领域提供更安全、便捷的支付和结算解决方案。RHFC币的优势首先,RHFC币采用了最新的区块链技术,具有极高的安全性和匿名性,确保用户的交易信息和资产安全。其次,RHFC币可以实现全球间的即时转账和结算,大大提高了健康领域合作伙伴之间的交易效率。最重要的是

  • 2 PTC是什么币种,PTC币怎么样?

    PTC是什么币种?PTC(PesetaCoin)是一种数字货币,基于比特币区块链技术创建的加密货币。它的名称来源于西班牙的传统货币Peseta,象征着西班牙的文化和历史。PTC的目标是成为一种可持续、安全、低成本的货币,在全球范围内流通和使用。PTC币的特点1. 去中心化:PTC采用区块链技术,没有中心化的机构控制。所有交易记录都被保存在区块链上,确保透明和安全。2. 全球通用:PTC可以在全球范

  • 3 RAY是什么币种?RAY币前景和价值深度分析

    RAY是什么币种?RAY是一个加密货币,是Solana区块链上的原生代币。Solana是一个快速、高效、安全的区块链网络,RAY作为Solana生态系统内的通证,可以用于支付交易费用、参与去中心化金融(DeFi)应用、进行投资和交易等。RAY币的前景RAY币有着巨大的潜力和前景。首先,Solana是一个高性能的区块链网络,具有每秒处理数万笔交易的能力,这使得RAY币在交易速度和效率上具有优势。其次

  • 4 ACH币在哪里买?

    ACH币在哪里买?ACH币是一种基于区块链技术的数字货币,最初于2020年推出。随着数字货币市场的发展,越来越多的投资者开始对ACH币产生兴趣。那么,我们该在哪里购买ACH币呢?1. 加密货币交易所加密货币交易所是购买ACH币的主要场所之一。一些知名的加密货币交易所,例如Binance、Coinbase和Bitfinex都提供了ACH币的交易对。在这些交易所注册账户并完成KYC(了解你的客户)认证

  • 5 SPF是什么币种,SPF币值得投资吗?

    SPF是什么币种?SPF是Sun Token的缩写,是基于区块链技术的数字货币。Sun Token是一个去中心化金融(DeFi)项目,旨在通过将链上数字资产与真实世界的太阳能发电项目相结合,推动可持续发展和清洁能源的应用。SPF币值得投资吗?投资SPF币的潜在价值有以下几个方面:首先,SPF币的应用场景广泛。通过与实际太阳能发电项目的结合,SPF币可以用于支付清洁能源产品与服务,进一步推动可持续能

  • 6 RING是什么币种,RING币怎么样?

    介绍RING币RING是由新加坡团队发起的一种数字货币,基于以太坊区块链技术,致力于构建社会化金融和跨链生态。RING的发行总量为100亿,其中70%用于挖矿和生态建设,15%用于社区发展,10%用于团队奖励,5%用于私募。RING币技术特点RING采用了PoA共识机制,即“Proof of Authority”,通过验证节点掌握最高权威,确保网络的安全和高效。同时,RING币支持ERC20协议,

  • 7 TCH币值得投资吗,它前景如何?

    TCH币值得投资吗?它的前景如何?随着加密货币市场的迅速发展,越来越多的投资者开始关注新兴的数字资产。其中,TCH(Ticker Symbol)币作为一种备受瞩目的加密货币,引发了广泛的关注。那么,TCH币值得投资吗?它的前景如何呢?1. 概述TCH币是一种创新的去中心化加密货币,具有高度安全性和私密性。它建立在区块链技术之上,旨在通过提供匿名、快速和安全的交易来满足用户对数字货币的需求。2. 市

  • 8 SCRIBE是什么币种,SCRIBE币怎么样?

    什么是SCRIBE币?SCRIBE币是一种区块链数字货币,它旨在创建一个去中心化的内容共享平台。这意味着用户可以通过SCRIBE平台分享和获取内容,而无需经过中介。SCRIBE币的特点SCRIBE币具有一些独特的特点,例如:1. 去中心化:SCRIBE平台不受任何中央机构的控制,内容创建者和消费者可以直接交互,消除了中介的需求。2. 激励机制:通过SCRIBE币,内容创建者可以获得奖励,鼓励他们分

  • 9 RLC是什么币种,RLC币有什么作用?

    RLC是什么币种RLC,全称iExec,是一种基于区块链技术的数字货币,也是iExec平台的代币。RLC币有什么作用RLC币作为iExec平台的代币,可以用于支付平台上的各种服务和商品。在iExec平台上,用户可以使用RLC币购买计算资源,包括计算能力、存储空间和数据传输等。RLC币还可以作为奖励分配给提供计算资源的节点,鼓励节点参与平台建设和维护。通过使用RLC币,用户可以更方便、更快速地获取和

  • 10 RDN币最高价格涨到了多少,RDN币最低跌到了多少?

    RDN币价格波动分析最近一段时间,RDN币价格出现了剧烈的波动,最高价格一度达到了XXX美元,而最低价格则跌至XXX美元。最高价格涨至XXX美元RDN币的最高价格涨至XXX美元,让投资者感到兴奋。这一波动可能受到市场热度和投资者情绪的影响。不少投资者看好RDN币的未来发展,导致市场需求增加,价格也随之上涨。投资者在这一过程中可能会看到价值的增长,有些人可能会选择获利了结,而有些人则会选择持有等待更