撰文:潘致雄
WalletConnect 团队靠着社区的捐赠资金,已经开发了接近 4 年的时间,期间从没讨公开商业化或者代币化的方式,而是坚持不懈地小步迭代,去年也公开了其 2.0 版本的计划,扩展至多链。但靠着捐赠是很难扩张和商业化的,所以他们终于在想清楚自己的方向和路径之后,决定融资 1100 万美元和扩张团队,在他们擅长的信息通讯方面探索出更具体的协议:消息通讯和信息推送。更多的细节还没有公开。其实我从这位开发者的上一个项目 Balance.io 就开始关注了,这是一个起步于 2016 年的以太坊链上资产管理的应用,在当时来看由于太超前了(还没这么多资产),并且 2018 年之后的熊市期间由于没能找到商业模式,所以最终选择了关闭。而 WalletConnect 依靠社区却维持至今。我正好在两年前写了一篇关于 WalletConnect 的介绍文章,现在来看他们的体验和流程没有明显变化,但稳定性应该是有所提升,也可以看到他们在 GitHub 上已经发布了几十次版本更新。以下原文发表于 2020 年 3 月 12 日的链闻微信公众号,作者为潘致雄。
加密货币钱包的易用性一直是个让人频频吐槽的大问题。好消息是,这种情况正在一点点改善。比如说,扫描二维码登陆的功能。中国的用户应该很熟悉使用二维码扫一扫的功能,可以用来支付或登录网站,比如常用的微信电脑端就需要通过手机扫码的方式登录。现在,越来越多的加密货币钱包也在借鉴这套成熟的流程,并采用了一套开源且标准化协议,这样,安全性更佳的手机就能与功能性更全面的电脑打通,为用户提供更全方位的产品体验。这套开源协议被称为「WalletConnect」,由同名的非盈利组织 WalletConnect 基金会支持开发,负责人为 Pedro Gomes。Pedro Gomes 曾经是以太坊一站式 DeFi 入口级产品 Balance.io 的网页端全栈工程师,在 2018 年的时候,他离开 Balance.io,全职投入 WalletConnect 的开发。以太坊社区基金(ECF)和以太坊基金会(EF)都曾资助过 WalletConnect,而且将 WalletConnect 视为 Web3 基础设施中的重要一环。对于绝大多数钱包工具开发商来说,没有必要重新造轮子,直接集成 WalletConnect 的开源协议即可,而且不用担心未来会更改商业模式。从功能上来说,WalletConnect 非常简单,就和你使用微信和支付宝一样。用户可以打开一款支持 WalletConnect 的移动端钱包,然后在电脑浏览器中访问 DApp 时,只需要通过扫码授权,就可以进行链上的交易或执行智能合约。从安全性来说,WalletConnect 采用的是成熟的方案,有点类似于在互联网中很普遍的开放授权标准 OAuth。最关键的是,使用该功能时,私钥不会离开用户的手机,在获得用户授权确认后,手机端钱包会签署交易信息,然后将签署过的信息提交至桌面端的 DApp 中。当然,从技术架构来说,WalletConnect 的方案远比上面描述的更复杂。WalletConnect 第一版手绘架构图目前 WalletConnect 的采用率已经很高,一些主流的钱包和 DApp 都已经集成,包括 Trust、Metamask、Argent、Gnosis Safe、Infinito、Atomic 等 17 款钱包,以及 MakerDAO、Uniswap、Binance DEX、DDEX、1inch、dYdX 等 39 款 DApp。这些钱包和 DApp 工具覆盖了很多流行且活跃的项目,且以去中心化交易所(DEX)和去中心化金融(DeFi)为主。在 WalletConnect 尚未普及时,大多数的 Web3 应用或 DApp 都是网页端优先的。原因比较简单:手机端原生应用的开发周期较长和开发难度较大,网页版应用的开发速度和工具更符合目前加密货币生态的迭代速度。而且很多网页端 DApp 尚未很好的适配手机的屏幕尺寸,体验较差。然而,对于加密货币钱包而言,又是以移动端优先的。哪怕业内最常用的电脑桌面端插件钱包 MetaMask,也已发布移动端,而更多的钱包都没考虑开发桌面端产品。为什么会这样?一个很明显的结论是,「移动端优先」是全球互联网的趋势,无论是电商、O2O、社交还是科技金融,手机作为载体比电脑更易获得,也能随时联网,这些都是加密货币钱包的最基础要素。此外,考虑到便携性、私密性,移动版钱包也比桌面端更合适。除此之外,很多新款手机都增加了隐私保护的特性,如苹果的安全隔区就是物理硬件层面的安全措施,虽然安全性比不上定制化的硬件钱包,但对于大多数人而言已经足够。而且普通的加密货币钱包无需强大的运算性能,所以性能也不会是瓶颈。所以这会让 DApp 的用户产生割裂的体验:大多数钱包在手机上,因为更便捷和安全,而 DApp 用网页开发更快速,适合用电脑浏览器使用。MetaMask在 WalletConnect 之前,解决方案是 MetaMask 或已经被砍以太坊官方的桌面端钱包 Mist。MetaMask 是一个大家都很喜欢的网页插件钱包,只需要一个 Chrome 浏览器就可使用,但对于那些更喜欢用手机端钱包的用户而言就很不友好了,这些用户可以选择将私钥拷贝至电脑端的 Metamask,或者将一些 ETH 转账至 MetaMask,前者可能会导致私钥泄漏,后者的用户体验比较差。而 WalletConnect 正是解决上述问题良方,让移动版钱包和桌面版 DApp 可以兼得,同时,也不会产生额外的安全隐患或让用户体验脱节。WalletConnect 原本并不是一个独立的产品,而是以太坊上的老牌项目 Balance.io 研发过程中的一个附属产品。当时,网页端全栈工程师 Pedro Gomes 希望为 Balance.io 提供一套业内标准的用户体验。在经过几个月的研发后,他和团队设计出一套可以将管理工具打通手机钱包的用户体验。于是在他们制作出原型产品后,将这套工具开源,并取名为「WalletConnect」。后来这个产品获得了以太坊社区基金(ECF)和以太坊基金会(EF)的资助,团队也决定以非盈利组织(也就是基金会的形式)运作。Pedro Gomes 也就离开了 Balance.io,全职开发并运营 WalletConnect 项目。Balance.io 是一个起源于 2016 年的项目,创始人 Richard Burton 是一名早期的以太坊支持者,今日依旧活跃在以太坊社区中,扶持一些早期的 DeFi 项目,并在开发一个名为 Shell Protocol 的稳定币交易协议。Balance.io 的初期产品类似于一个观察钱包的工具,用户输入自己的多个以太坊地址,就可以汇总查看资产或者 DeFi 协议内的资产情况。Balance.io后来 Burton 在 2019 年底决定关闭这个项目,核心问题来自于项目的商业模式,未能产生营收。他认为自己并没有想清楚这个产品的用户群体到底是谁,只是对一个追踪资金和以太坊数据的工具非常感兴趣——「好奇心是好的,但烧钱并不好」,他这样总结这段经历。不过必须得说,Balance 在关闭前作出了不少贡献,整个项目开源回馈社区,其他开发者可以利用他们代码搭建类似的产品。WalletConnect 因为以基金会和被资助的方式运作,所以不需要考虑商业回报层面的问题,而是将自己定位一块积木即可,任何项目都可以免费使用。另一个 Web3 和以太坊的钱包开源解决方案 Web3Modal 已经接入了 WalletConnect,再加上支持 Metamask、Dapper、Gnosis Safe、普通 Web3 浏览器等,DApp 开发者就可以考虑不用直接对接 WalletConnect,而是选择 Web3Modal,一次接入所有的钱包。至于 WalletConnect 体验如何?和主流的 C 端互联网产品应该不会差太远,都是用户熟悉的交互方式。来,让我们和读者一起体验一下 WalletConnect 的流程。整个流程一般仅需要 3 至 4 步即可,我们这里以 Argent 钱包和 DDEX 的存款功能为例。1. 电脑端:在桌面浏览器中问 DDEX.io 网站并进入「借贷」模块,然后点击右上角的「连接钱包」按钮,选择 WalletConnect,这时候会出现二维码。2. 手机端:打开 Argent,然后选择扫描(Scan)功能,用摄像头扫描 DDEX 的二维码,在手机上出现的授权页面中点击「Connect」。这时 WalletConnect 已经为移动端钱包和电脑端 DApp 建立起了连接。3. 电脑端:进入 ETH 的存款功能。输入存入数量,点击「存款」按钮。4. 手机端:在钱包工具中会弹出授权页面,需要用户的授权才可签署交易。点击「Approve」即可完成交易。后续就是等待交易完成,可以在桌面浏览器中查看具体的交易细节,也就不需要手机了。如果在进行进一步拆解,其实也就是两类操作:在 WalletConnect 之外,还有一些同类的产品,其中最相近的要数由 Coinbase 在 2019 年 8 月推出的「WalletLink」。WalletLink 也是开源项目,目前用户仅在 Coinbase 旗下的钱包内可以使用这个功能,其体验和 WalletConnect 相近。不过 WalletLink 对于 DApp 开发者来说比较麻烦,除了需要支持更广泛的标准 WalletConnect 之外,还要单独为 Coinbase 钱包开发并适配支持 WalletLink。目前,主流的 DeFi 平台都已经支持该项目,如 Compound、dYdX、IDEX、Maker 和 Uniswap 等。Torus 和 Formatic 则是比 WalletConnect 更激进的产品,他们的目标群体不仅是已经有了加密货币钱包的业内用户,更有希望触达原本尚未接触加密货币的用户。用户无需安装过加密货币钱包,只需要邮箱、手机号、Google 账号等,就可以直接接入加密货币生态,然后通过一些公开透明且去中心化的机制完善资产的托管流程。Torus 的注册界面整体而言,这类基础设施看起来似乎并不起眼,对于用户而言,甚至都没有辨识度,毕竟这仅仅只是一个可以用完即走的开源协议,但是,他们却能省下开发者很多的精力,给用户带来极佳的使用体验。这意味着,开发者可以用最灵活的方式构建网页应用,以 SDK 的形式快速集成 WalletConnect,并提供统一且标准化的技术和用户体验,还能以更安全的技术研发移动端或硬件钱包,这些将构成了用户体验中的一个个流畅的环节。也是 Web3 和加密货币生态的重要基石,也是让用户真正接受加密货币产品的敲门砖。
原创文章,作者:惊蛰财经,如若转载,请注明出处:http://www.xmlm.net/wang/16307.html