decoration decoration decoration
decoration
leaf leaf leaf leaf leaf
decoration decoration

从「钱银积木」到 「通道积木」:钱包的可组合性为何重要?

从「钱银积木」到 「通道积木」:钱包的可组合性为何重要?

钱包团队就可以专心于开发可组合的渠道和商场,而 dApp 开发者则专心于开发 SDK 和插件以便利集成。…以太坊,钱包,Dapp,Ledger,MetaMask,ENS,DeFi,Parity 以太坊 钱包 Dapp Ledger MetaMask ENS DeFi Parity以太坊爱好者 图标 Logo以太坊爱好者区块链作者,团队,专栏,大众号,头条· ·阅览约 10 分钟

钱包团队就可以专心于开发可组合的渠道和商场,而 dApp 开发者则专心于开发 SDK 和插件以便利集成。

原文标题:《观念 | 可组合钱包的重要性》
撰文:Andrew Hong
翻译:阿剑

我从前解说曩昔中心化运用(dApp)的产品可组合性,当然,用的是十分简略的层叠示意图:

观念 | 可组合钱包的重要性

实践上,有两个层级被我省掉掉了,便是钱包和 SDK;而且,还可以再加上有关 「链」 的一层:

观念 | 可组合钱包的重要性

本文我预备谈谈,为什么这些额定的杂乱性会导致人们的视角发生改动:可组合的钱包会对用户和开发者两头都发生越来越重要的影响。一般来说,在走到产品开发的 「终究一公里」 的时分,也便是开发团队要决议接入尽或许多的钱包时,人们才会想起还有钱包这回事(假定这个团队既担任产品的智能合约后端,也担任前端)。现在来说这没什么大问题,由于大多数 dApp 在用户交互上都是很简略的(即,授权 + 存入、拍卖 / 买入,以及交换)。在互动的 前 / 后 没有太多需求办理或表明的东西。

但咱们的生态还会变得愈加杂乱的,那时分怎样办呢?在可预见的未来,咱们都要着手办理自己的以 token 办法表现的数字身份,比方 skills、credit scores、social circles,等等。这就会在接入咱们今日所用的规范协议前发生额定的一个交互过程、要办理更杂乱的网路和用户联络,以及相应的商场。思索这个远景,咱们会自问:每个产品都要自己办理一个特定的远景,这合理吗?Web 2.0 年代的办法便是创立另一个 运用商场 / 网站,但我觉得我不会喜爱再有一个网站来盯梢我怎样办理自己的身份和自己所用的网络。我以为,这样私家的东西应该在钱包层完结处理,由于在这个环境中,个人自主和隐私性是榜首位的

尽管我不介意为了运用不同的协议而跳转到不同的网站,但我也不期望为了办理我的链上交互的不同部分而运用多个钱包。这样很蠢,而且每多一个就多一些安全危险。但假如我只运用一种钱包,那我就把自己跟这个钱包背面的开发团队的内涵危险绑定起来了 —— 更不用说总会有他们还没开发的新功用。请记住,咱们现已身处一个迅猛发展的国际中,没有哪个团队可以样样精通。

这便是为什么咱们需求钱包的可组合性。尽管我想直接开端,但我还没讲到钱包是由哪些部分组成的。在谈到 DeFi 和 许多以太坊 dApp 时,咱们现已有了 「钱银积木」 这个词;因而我预备把钱包的可组合性模块称为 「通道积木(access lego)」。

观念 | 可组合钱包的重要性

四个层级中的每一个都应答运用户灵敏地选择产品,而每个层级都应由产品供给者供给定制化的积木。

这儿有许多东西可以深挖,所以咱们先快速回忆下密码学钱银钱包的前史,以便更好地了解这些积木,以及咱们今日所用的先进钱包服务是怎么得来的。

以太坊钱包简史

榜首个以太坊钱包的创意来自 Bitcoin Qt 钱包,是由 Mist 团队做出来的。

观念 | 可组合钱包的重要性图片来历

Mist 钱包看起来跟 Qt 十分像,都是一个需求下载的软件,然后可以导出买卖数据,也支撑 区块同步 / 区块阅览:

观念 | 可组合钱包的重要性图片来历

这个钱包其实是想把一个以太坊节点可以做到的作业都装进一个软件里 —— 那就需求装置很多依靠,全体的用户体会也欠好。到 2016 年,MetaMask 呈现,是最早的根据阅览器的钱包之一。自此,dApp 可以从钱包中解耦出来,只需嵌入钱包的衔接办法即可。这一点跟着生态体系的生长变得十分重要,由于此前单个团队想盯梢一切 EIP 的发展和发展出来的 token/ 协议 是十分困难的(现在也依然如此)。我想指出的是,尽管这增加了 dApp 产品的可组合性,这_还不是_上面的 「通道积木示意图」 中所指的_钱包内_的智能合约集成。这一部分一直到新的集成办法如 WalletConnect 呈现之后才有所改动。

观念 | 可组合钱包的重要性钱包衔接办法嵌入示例

这样一来,钱包的一些职责和担负就移除了,现在它的要点变成了买卖构建、签名以及保持与区块链的衔接。我不想深究细节,但买卖构建意味着要从 dApp 处接纳一些买卖参数、而且其它参数要确保彻底在钱包操控之下。这使咱们走向了对钱包(也可称为 「供给者」)可用的 RPC 调用,最早由 EIP-1193 界说。dApp 可以发送一些参数如方针地址、数据、gas limit/price、数值给钱包,但_无法_操控链 ID、发送者地址以及 nonce 等触及钱包安全的参数。

有了这种新式钱包之后,咱们又多了两种杂乱的用户体会:

    记住 其他用户 / 朋友 的地址是很困难的,不安全,而且容易发生人为的过错买卖顺便的字节码是不行阅览的,除非你十分了解函数选择器以及 数据 / 参数 的哈希值。要是你没有合约的 ABI,那就有你美观的了。

为了处理榜首点,ENS 在 2016/2017 年月 EIP-137 一起推出,成为了咱们的榜首块交际积木。现在,咱们都可以用一个网站域名来表明自己的以太坊地址(比方 vitalik.eth),在 音讯 / 转账 中运用即可免除输入长长的地址。这仅仅交际智能合约层的一部分;其余部分要花更大的精力来 解耦 / 完成可组合性。

关于第二点,Parity 创立了一个 「办法注册表」,被广泛用户在钱包的签名界面给出人类可读的信息。EIP-712 在此发挥了重要作用,尽管它到最近才取得更多重视。不过,即便有了这些设置,仍是很难确保你的阅览器没有被黑或被诈骗然后显示出不真实的 买卖 / 信息。这是运用热钱包(即总是衔接到互联网、而且没有与你的计算机环境的其余部分阻隔开来的钱包服务)的最大问题之一。

常见的处理计划是一个硬件钱包,开拓者是 Ledger,从 2014 年起步。MetaMask 在 2018 年首日增加硬件钱包支撑,正式地解耦了安全层和 买卖层 / 衔接层。咱们后边还会再回忆这一点,由于 Ledger 作为冷存储钱包当然很棒,但一些新产品也有很大改善。

观念 | 可组合钱包的重要性正上方的便是一个 Ledger 钱包

于此一起,咱们看到,许多杂乱的协议在 2020 年夏天开端在 DeFi 国际里领一时之习尚(其间大部分都开发了超越 2~3 年)。这给了咱们越来越多的代币,学会安全办理也变得越来越重要。为了协助咱们跟上圈子的前进,人们创立了一种新的 RPC 端点,让 dApp 可以在钱包所盯梢的代币列表中增加品种。更多办理财物的东西被创立出来,比方 Argent vaults 和 Gnosis multi-sig safes (我还以为这两款产品与交际层有关,由于他们都有多用户机制以及 DAO 机制)。人们还给 dApp 的数据同享创立了 「答应衔接」 规范(EIP-2255),以避免对钱包的歹意拜访。财物办理 / 财物聚合器、剖析器,也由于 Zerion 和 Zapper 而从钱包中解耦了出来(下一章节咱们还会回头解说这两个产品)。

自 2019 年开端,手机钱包也呈现了增加。Rainbow wallet 是最佳典范之一,他们的用户体会规划得十分好。但要讲到无缝集成,他们也才刚刚开端。

大多数其它手机钱包(比方 MetaMask 手机版和 Coinbase Wallet)都测验而且在运用内开发了一个 dApp 阅览器,依靠于 deeplink 而非直接集成。这些 deeplink 无法供给很好的用户体会,但在以太坊上开发的产品又多到钱包团队无法规划出一个可以与一切产品交互的大一统接口。假定每个钱包运用团队都专门为一个运用场景(音讯、NFT/ 商场、DeFi,等等)做优化 —— 那么,我的安全危险都跟我所用的钱包数量成正比。或许它们都是最小化的,由于安全模块现已彻底解耦 —— 但由于商场已变得碎片化,开发者就必须为进入不同的体系排定优先级。Rainbow 钱包团队一开端想做 钱包聚合器 / 办理器(根据他们 从 2019 开端构建的前期 GitHub 库),所以我以为他们现已考虑过这个问题了。也便是说,咱们可以看到,智能合约的接口现已是半解耦的了,但这一集成还不能自由组合,由于钱包团队正是瓶颈。换句话说,一切 dApp 都可推送到某个钱包来运用,但一个钱包并不能确保一切 dApp 都支撑他们。

现在,一个钱包的一切层级,咱们都或多或少有所了解了,现在咱们再回头评论通道积木。这些积木和下列的剖析,部分根据我自己的信仰:咱们未来会走向在钱包产品中直接运用 dApp,比方 MetaMask 供给的币币交换 和 Rainbow 的展现功用。

剖析通道积木

有了对以太坊钱包的更多了解,咱们就可以谈谈我所谓的 「access (通道)」 的意思了。这儿的 「Access」 一般代表用户对资金和协议的计划,也代表协议(经答应的办法)拜访用户以及他们回传的数据。有了通道积木,咱们就可以梦想出五种要害的特点、协助咱们更好地界说钱包可组合性的基本要求:

    安全性可以从用户界面中解耦出来,放到恣意硬件或软件的处理计划中,且无需献身定制化特性;

    用户可以拜访恣意运用,而不用忧虑换代和集成时刻;

    协议可以拜访用户,而不用忧虑被弃用和需求手动推动钱包集成自己的产品

    没有人能操控整个集成商场

    不用献身用户和开发者体会

一个一个聊 : )

安全定制化

我信任 硬件-钱包服务 的衔接办法会越来越规范,对我看过的每一款钱包简直都如此,不管衔接办法是 USB 接口、无线衔接或是蓝牙衔接。所以,解耦一般不是问题所在;相反,问题在于硬件钱包自身。

助记词存储、生成和康复都是值得一读的论题,但当咱们都开端运用朴实的 「冷存储」 时,就仅仅硬件钱包的一部分。合约的 ABI、解码音讯的签名、买卖的约束 / 灵敏性 给用户带来了定制化的空间(和可阅览性),我在上面介绍每一层时都提到了其重要性。

一个很好的产品事例是来自 GridPlus 团队的 Lattice1;这种硬件钱包要调配专门的 SafeCard 运用,并用 SafeCard 完成了地址的可改变。钱包硬件有一个 64 GB 的固件环境,你可以从恣意合约导入 ABI,来协助解码你正在签名的买卖的数据。

观念 | 可组合钱包的重要性来自 https://wallet.gridplus.io/,教训用户办理 Lattice1。这种办法可以说比 「办法注册表」 更安全(特别是当智能合约的一切人没有注册他们的合约时)

我信任这品种型的集成办法会变得越来越重要,由于与你的钱包绑定的价值和 身份 / 名誉 会日渐提高。

集成商场

第二、三、四种特点都可以归结为一个概念 —— 为你所用的钱包创立一种集成 dApp 的商场。从某种意义上上,这儿的首要 「钱包」 是一个渠道,一切安全模块和集成都可以接入的渠道。简直总会是 「买卖和衔接」 层。

我信任 MetaMask snaps 是朝着正确的方向迈出了一步:一切 dApp 开发者都可以接入已有的 MetaMask 钱包 UI,只需自己开发接口和集成办法即可;而用户可以自己选择这些碎片的组合 ——由此形成了钱包内的一个商场。假如我喜爱某一套用户出资、保藏或交际的产品,我可以从 dApp 团队处取得产品,然后私下在我的钱包里运用。既不需求钱包团队手动开发对下一个 ENS、BrightID 或许 proof token 的支撑,也不需求给每个月都有成打呈现的新 DeFi 协议服务。这样的商场关于小众的社区和 DAO 来说也很重要,他们或许有自己的 常用 dApp/ 产品 列表(或许说更有或许自己开发)。假如集成作业总要由钱包团队来做、来推动,那 99% 的时刻里都只会有干流运用。

至于商场的一切权,我达观地信任,这些插件都应被列在一个开源的库中(类似于 Dune Analytics 在一个库中展现一切的暗地景象)。我不会期望 Web 3.0 国际再来一个 Google Play 或许 Apple 运用商场,不管从准入约束仍是价值抽取来说。最重要的是,没人期望一切这些 dApp 插件都会由于 MetaMask 被弃用而云消雾散。

用户和开发者体会

用户体会不该受制于 集成速度 /dApp 功用缺失。我信任这一点上面现已说得很清楚了。开发者体会当时首要受制于两个问题:

    由于产品的可组合性,任何人都能开发任何运用。但谁来担任开发特定的某个东西呢?得到钱包或许一个集成渠道支撑的条件是什么呢?

我以为,由于缺少规范化的协议 SDK,一切人都很受罪,特别许多 前端 / 钱包 开发者不得不开发自己的衔接办法。此外,大多数钱包都没有一个清楚的 dApp 集成办法(deeplink 可不算),而 Zapper 依靠于一个不透明的恳求体系。这对一切人都欠好。

但也有一些正面事例。一些协议,比方 Uniswap 和 Superfluid,就多有自己的很棒的 Javascript SDK。我在钱包集成环节提过 MetaMask snaps,但 Zerion (尽管不是一个钱包)也有很好的集成办法 SDK 和敞开的适配器商场。具有一个快捷且独立的 协议-钱包 集成办法,可以极大优化开发者体会,任何一个开发者都可以将一切部件装在一起。我还要着重,根底协议的接口也是如此,额定的功用如剖析和用户教育,应该直接做在 dApp 页面上(而不是钱包里),以供给更稳健、更分众化的用户体会,捕获仅凭钱包缺乏于捕获的用户。我觉得这样做是对的,由于这些功用关于拜访功用来说都不是中心

把一切这些都放在心上,钱包团队就可以专心于开发可组合的渠道和商场,而 dApp 开发者则专心于开发 SDK 和插件以便利集成。有更多的规范也会有所协助,由于许多 EIP 都是为钱包和库而提出的(假如有人有志与我一起作业,欢迎联络我)。

结语

本文的观念是我在为 Build With Consensys 作研讨并与钱包开发沟通时发生的。在我研讨期间,我看了 Dan Finlay (MetaMask 创始人)在 Devcon 5 (2019)上的讲演的视频。我感觉他对钱包可组合性的主意并没有取得 dApp 可组合性那么多的重视。他从很早开端就一直在推动这一点,由于 Dan 曾在这篇文章中写道:

” 在 Devcon 2 上,我上台呼吁创立一个去中心化的规范化组织。我恳求其他 web3 钱包的开发者参加,环绕一个同享的测验套件,为开发者供给一个跨客户端的、安稳的渠道。尽管有人表露出逼真的热情和爱好(感谢 Casey Detrio),终究,无动于衷和协调的价值,使这个愿望变成梦想。”

因而,尽管本文供给了一些信息,但它也是一种恳求,期望咱们(作为用户也作为开发者)可以花些时刻考虑这个问题,并开发这个重要的范畴,直至我在上面想象的新运用成为实践。在 Dan 的文章中,他以为这会给咱们供给给一个更安全、更好用、更有用的以太坊体会。而在我看来,这意味着每个人都有可组合的通道来拜访以太坊。

来历链接:medium.com

免责声明:作为区块链信息渠道,本站所发布文章仅代表作者个人观念,与链闻 ChainNews 态度无关。文章内的信息、定见等均仅供参考,并非作为或被视为实践出资主张。

[标签:作者]

[标签:时间]

loading
×