本文将从最基础的钱包相关概念讲起,为你详细阐述 web3 钱包的源起、分类和优缺点对比,以及最前沿的 ERC4337 账户抽象 和 MPC 多方计算 的解决方案介绍。

作者:sophina2501.eth

封面:Photo by Shubham's Web3 on Unsplash

从本周开始,每周至少一篇研报,欢迎各位 web3 builder 关注 ,也欢迎私下交流,关注 Twitter:@sophina2501 微信号:lzh_jxx 公众号:sophina2501 杂货铺

下篇预告:top5 前沿 web3 钱包应用深度投研报告

web3 钱包是进入去中心化世界的通行证,也是 crypto 世界里最火爆的赛道之一。

在迈入去中心化世界之前,每个人都需要一个钱包地址,地址在 web3 世界甚至比 web2 的手机号还要更重要。那么什么是地址?什么是钱包?该如何选择你的 web3 钱包,web3 钱包赛道的前景又如何?

本文将从最基础的钱包相关概念讲起,为你详细阐述 web3 钱包的源起、分类和优缺点对比,以及最前沿的 ERC4337 账户抽象 和 MPC 多方计算 的解决方案介绍。

目录

  1. 引子:为什么去中心化钱包对我们很重要
  2. 钱包基础概念介绍:什么是地址、钱包、私钥和助记词
  3. 钱包的分类和对比:EOA 钱包(钱包 1.0 时代)和智能合约钱包(钱包 2.0 时代)
  4. 无助记词的解决方案:ERC4337 账户抽象(AA)   和 MPC 多方安全计算
  5. 钱包赛道发展前景和展望
  6. 参考资料

1. 引子:为什么去中心化钱包对我们很重要?

最近加密圈发生了一次大地震,排名第二的中心化交易所 FTX 因挪用用户资产而暴雷,后资不抵债宣布破产。目前余震还在继续,这是继 LUNA、三箭资本事件后加密圈今年发生的第三起,也是对加密圈普通用户影响最大的一起事件。

这次波及范围如此广的暴雷事件引起了人们的恐慌,Twitter 上流行起了 “提币运动”,大家纷纷选择把自己的币从交易所选择提出来,很多小的交易所面临流动性枯竭甚至倒闭的风险。

即便 “吹哨人”CZ (世界第一大币圈交易所币安-Binance 的老板)在 Twiiter 上发起了交易所公示 1:1 储备金的号召,也难以重新建立人们对 CEX 的信心,巨量的资产从交易所涌入了其他地方。

“提币运动”

“Safe(智能合约钱包)获得了 8 亿美元以上的净流入,Ledger(硬件钱包)在短时间内连续经历了多个历史新高的销售额,Trezor(硬件钱包)销售额飙升 300%,ZenGo(MPC 钱包)在一夜之间实现了三位数增长,存款达到历史最高水平,所有这些都发生在同一周内。”(数据来自 @1kxnetwork)

当然 FTX 这次事件发生后,很多区块链源教徒是更加 excited 而非 panic,毕竟区块链从诞生那天起,就是为了去中心化、去信任化而生。

那么也许现在是时候开始你的 web3 钱包之旅了。下面进入正文。

2. 钱包基础概念介绍

对区块链底层技术熟悉的朋友可以直接跳过这部分科普,直接进入钱包分类部分

作为一个初入圈的用户,你一定被 “钱包”、“地址”、“私钥”、“助记词” 这些词给整晕过,这些概念之间有什么区别和联系?

私钥——> 公钥——> 地址

下面我用尽量通俗的语言来解释下这几个名词和彼此之间的关系。

“钱包(wallet)”

首先,“钱包(wallet)” 是一个上层的概念,在链上其实并不存在一个 “钱包” 的东西,钱包本质上是一个存放资产的管理所,一般也可以称之为公私钥管理器。钱包也就有很多种形式,比如各种软硬件钱包、纸钱包。假设你用异于常人的脑子背下来了你的私钥(长达 64 位的随机数)和地址,那你的脑子也是某种意义上非常安全的 “冷钱包”。钱包有很多种类型,分别在安全性、易用性和功能性上有不同的侧重,这部分会在下文详细展开。

“公私钥(Public Key Private Key)”

在加密世界中,拥有加密货币时,实际上我们拥有的是私钥,私钥会提供访问所持有币的权限。

公钥和私钥在区块链世界中有举足轻重的地位,这是密码学上的 “非对称加密” 领域里的概念。所谓非对称加密,即通过私钥可以推出公钥,但是公钥没法逆向推出私钥。 私钥在区块链的表现形式上是一个 64 位 16 进制的随机数,它难以记忆并且备份复杂。但是私钥又非常重要,因为它是你资产的证明。为了降低用户的使用成本,目前主流的钱包解决方案并不会直接向用户展示私钥,而是通过了一系列算法运算转化成用户可读的 “助记词” 的方式来呈现。

“助记词(seed phrase)”

最后,什么是助记词呢?

助记词是帮助我们记忆的一串可读性的单词,因为私钥是 64 位 16 进制的随机数,不具备可读性且备份复杂,所以早在 2013 年比特币社区就通过了一项 BIP39 协议:用算法将私钥转换成了一串 12 ~ 24 个容易记住的单词,通过这串单词可以解析出私钥,这串单词也就被称之为 “助记词”。

目前助记词是大部分主流的自托管钱包都采用的一种解决方案,有了助记词就能解析出私钥也就可以转走你的链上资产,币圈已经发生了无数次因为助记词/私钥被盗的安全事件,所以妥善保存好助记词非常重要(划重点)。

3. 钱包的分类和对比

有了上面的基础概念科普后,我们知道了私钥(以及助记词)的重要性,那么钱包应用主要就是围绕着如何生成以及保存你的私钥来展开的,我们现在看下目前主流的钱包应用和类型。

首先,根据是否为用户自己控制资产,即是否自己掌握私钥,钱包分成了托管钱包、自托管和半托管钱包。

托管钱包

托管钱包顾名思义就是私钥并不掌握在自己手里的钱包,而是托管给了第三方机构,比如中心化的交易所 CEX (如全球最大的交易所币安 Binance,占了市场 70% 以上的份额)。

托管钱包并非全是坏处,相比自托管钱包需要妥善保管自己的助记词,有强背书的交易所对小白用户来说有上手成本低且方便法币出入金、手续费低等天然优势,但是在出让私钥控制权的背后,也就承担了更大的信任风险。crypto 行业相比股票基金等传统金融行业还过于早期,缺乏监管。一旦交易所暴雷或者跑路了,你的资产就归零了。

其实区块链自诞生之日起就秉承了 “去信任化” 的原教思想,正是因为 “无需信任” 所以才更信任。而中心化的交易所因为更加 web2 用户友好,所以在早期发展承担了一部分 “钱包” 的职责。

随着底层技术和 web3 应用的成熟,我们也能看到目前有越来越多交易所在自研或者投资 web3 钱包,比如 CZ 在推特上推的他们自家的 Trust wallet,以及欧易(OKX) 推出的 web3 钱包也越来越完善了,我们有理由相信资产完全托管给 CEX 的模式会随着加密世界的发展慢慢出让市场份额直至退出历史舞,而交易所则会朝着更专注做交易而非托管的方向发展下去。

自托管钱包

下面重点聊一下自托管钱包。自托管就是平台不干涉,完全由用户自己管理私钥的模式。自托管钱包又根据是否联网,又分成了热钱包和冷钱包。

冷钱包

冷钱包主要是硬件钱包、纸钱包(把私钥写在纸上)。

目前而言业内公认相对更安全的钱包方案是硬件钱包,硬件钱包把私钥文件存储在了芯片中,实现了私钥与网络层的彻底隔离,创建了一个更加安全的私钥保存环境。

但是硬件钱包的解决方案无法适用所有用户。在互联网已经高速发达、移动支付如此普及的今天,为了更高的安全性舍弃了易用性,并且还需要用户付出额外的金钱成本(需要花一笔钱购买设备)和管理成本(需要保管好硬件钱包,丢了的话私钥也会随之丢失),硬件钱包的解决方案显然无法承载 web2 流量引入的重任。

目前市面上主流的硬件钱包有 Ledger、Onekey 等。这里需要提醒一下,如果对硬件钱包感兴趣的话请到项目官网购买,不要使用其他三方网站,有 “被开后门” 的安全风险。

搜索自 Google,不构成任何购买建议

热钱包

热钱包也就是软件钱包,主要是两种钱包类型,地址钱包(EOA)、智能合约钱包(CA)。

在介绍这两类钱包之前,我们需要普及下以太坊的账户类型。区别于比特币,以太坊上一共有两种账户类型:外部账户和合约账户

**外部账户(EOA)**就是我们平常用来发起交易的钱包账户,它之所以被称为「外部」是因为这种账户本身是没有代码的,是由用户通过私钥进行控制,可以独立发起交易并控制合约账户。

**合约账户(CA)**又称为内部账户,它不通过私钥控制而是通过代码控制,由以太坊虚拟机来运行,可以控制其他的智能合约。这里需要额外注意的是合约账户没法独立发起交易,只能被动被其他 EOA 账户或者合约账户调用。

我们也经常在各种渠道听过 “以太坊是人类文明级别的创新”,归根结底就是智能合约的创新。比特币实现了货币的去中心化,而以太坊通过智能合约让数据实现了链上化。可以说比特币将我们带入了 crypto 世界,而以太坊将我们带入了 web3.0 ,各类 dapp(去中心化 app)都通过智能合约运行在区块链上。

以太坊账户类型对比 图源:@makerDao

EOA 钱包——web3 钱包 1.0

什么是 EOA 钱包

有了上面的账户类型科普,了解 EOA 钱包的概念就更容易了。EOA 钱包就是基于 EOA 账户设计的钱包,即需要管理私钥的钱包。目前主流的 EOA 钱包都是采用的需要助记词的方案,即本地生成公私钥对,需要用户自行备份 12~24 位的助记词。

EOA 钱包是目前去中心化钱包最常见最主流的钱包解决方案,其中最知名的应用是以太坊网络的小狐狸(MetaMask)钱包,2022 年 3 月的月活甚至超过了 3000 万,可以说是应用最广泛的钱包之一。但这并不意味着它的地位不可撼动了。首先因 crypto 世界的隐私性,一个人可以无需许可无需认证地创建无数个钱包;其次备份的助记词可无缝导入其他任何支持助记词导入的钱包,切换成本较低。因此钱包赛道的网络效应还远没有像 web2 世界那么深。

其他的 EOA 钱包应用有新手比较友好的 Coinbase 以及币安旗下的 trust wallet 等,可以自行上手体验。

普通 EOA 钱包的优点

  • 手续费低。EOA 钱包因为通过本地生成私钥,相比智能合约钱包,创建钱包无需 gas 费
  • Dapp 支持度较高。EOA 钱包在业内比较成熟,各大 Dapp 一般均支持通过 EOA 钱包接入

普通 EOA 钱包的缺点

1. 需要助记词,用户进入成本、备份成本高(自托管强依赖个人保存,资产容易发生丢失);

2. 功能单一。因不具备代码逻辑,无法直接在 EOA 账户实现批量交易、多签、白名单、社交找回等多功能。

典型的 EOA 钱包应用

小狐狸(Metamask)、imToken、Trust wallet(币安旗下)、OEX web3 钱包(集成在欧易)、Coinbase 等

鉴于篇幅问题本篇不做钱包方案对比,下期会单独出一篇 top 级钱包投研报告

智能合约(CA)钱包——web3 钱包 2.0 未来

什么是智能合约钱包

与 CA 账户相对应,智能合约钱包就是使用**合约账户 (CA)**作为地址的钱包解决方案。

上文提到 CA 账户无法独立发起交易的特性,是因为以太坊协议规定 “一笔交易必须通过 EOA 账户基于其私钥进行标准的 ECDSA 电子签名的验证,随后才能被写入区块链”。

也是基于此,即使你有合约钱包,也需要 EOA 才能使用,并通过 EOA 支付 gas。所以,智能合约钱包要解决的一个重要问题就是 “怎么让合约成为顶级账户(可以发起交易和支付费用的账户)”,也就是实现账户抽象 (Account Abstraction)。

账户抽象因为 EIP4337 提案的出现而使得智能合约钱包有了新的可喜进展,第四部分会单独介绍。

目前大部分的主流的智能钱包的解决方案是引入一个”replayer” 的角色来将用户的信息发送至最终的智能合约钱包。市面上已经存在一些智能合约钱包(比如 Argent、Safe 等),但因为缺乏统一行业标准,replayer 都是是自定义的,所以可能存在合约漏洞风险以及 Dap 兼容性、创建需要花费 gas 费等问题,还并没有得到广泛应用。

智能合约钱包的优点

由于是通过代码运行,智能合约钱包可以实现很多 EOA 无法实现的功能,比如上面提到的批量交易,白名单、社交找回、多签、支持多链统一地址等等能力。

相比硬件钱包,合约钱包的无助记词解决方案显然更加 web2 用户友好,用户无需理解助记词的概念,也无需承担自保管助记词的安全风险,社交恢复账户的功能让钱包看起来更加 web2 了。

正如以太坊创始人最近在 twitter 的发言:

截自 @Vitalik 本人 Twitter

智能合约钱包可实现的功能有(不完全罗列):

  • 多重签名授权。两个或多个用户签名批准交易以提高安全性。
  • 紧急状态下账户冻结。在设备丢失等情形锁定账户户,或者停用设备对账户的访问权限。
  • 每日交易金额限制。
  • 多重身份验证。
  • 白名单。用户可以指定只向已知地址进行转账。
  • 账户社交恢复。
  • 使用其他代币支付汽油费。
  • 通过 NFT 控制转移钱包所有权等新玩法。
来自 @Unipass 官网

智能合约钱包的缺点

  • 创建时需要 gas 费。
  • 与其他 Dapp 兼容性问题。
  • 合约代码漏洞、钱包开发跑路等安全风险。EOA 钱包不存在此问题,因私钥生成及签名都是链下操作,换而言之任何一个 EOA 钱包开发商倒闭了,换个 EOA 钱包导入私钥即可。

智能合约钱包应用

  • Gnosis safe :以太坊 EVM 生态受众最广的链上多签钱包解决方案
  • UniPass Wallet :支持邮件社交恢复的智能合约钱包解决方案
  • Argent:知名 Smart Contract Wallet,与跨链桥集成方面出众;
  • Loopering Wallet:专注于 Loopring 生态内的钱包,基于 ZKP 技术,Gas Fee 极低;
  • Authereum:曾允许项目方为其用户代付 gas fee,团队已转做 Hop Exchange;

4.EIP-4337 账户抽象和 MPC 多方计算

账户抽象 (AA)

账户抽象在前文已出现过,即 “消除合约账户和 EOA 账户的区别,让合约账户也拥有 EOA 账户的能力”。换句话说,即让合约账户可实现 EOA 账户的能力。

因为智能合约钱包有如上很多优点,所以为了让钱包领域更加安全和规范,我们需要新的行业标准的出现。

账户抽象 AA 是以太坊开发者长久以来的梦想,也是 Vitalik(以太坊创始人)从 2016 年左右开始一直致力于实现的课题。

账户抽象提案时间线

我们的 V 神(with 其他的小伙伴)于去年提出了新的 ERC 4337 协议,这个协议让账户抽象的落地更近了一步。

ERC-4337 提案

ERC-4337 区别于其他的提案,它是一种不需要修改协议层的账户抽象

ERC-4337 工作流(1)
ERC-4337 工作流(2)

引自:https://medium.com/infinitism/erc-4337-account-abstraction-without-ethereum-protocol-changes-d75c9d94dc4a

总结 ERC-4337 提案的核心流程:

核心流程:

  • 用户发出的行为 UserOperation 会先汇集到一个行为内存池 User Operation Mempool
  • 存在一个 Bundler 的角色对用户发出的多个 UserOperation 进行打包,发给以太坊的交易内存池(transaction mempool)
  • Bundler 将多个 UserOperation 交易捆绑为一个交易并执行一个特殊合约(Entry Point 智能合约)
  • Entry Point 合约向合约钱包发出捆绑交易中的指令,合约钱包在 UserOperation 通过自己定义的验证逻辑时才会执行 UserOperation

大白话解释:

上述流程术语比较多,我再用大白话通俗来解释下。我们现在抽象下角色,现在总共有两个角色,一个是名为 Bundler 的 EOA 账户,和用户拥有的智能合约账户。用户发出指令,交给 Bundler 这个 EOA 账户来执行,EOA 通过智能合约的运营调用用户的智能合约账户,经过验证完成执行。

在这个账户抽象的方案里,只有 Bundler 的角色依赖了 EOA, 而面向用户的智能合约钱包就实现了 AA, 换句话说拥有智能合约钱包的用户不再需要理解助记词、私钥的概念就可以丝滑接入 web3 世界。且此提案将很多智能钱包独立开发的模块抽象打包了出来,使得行业发展有了新的标准和方向。

ERC-4337 的优点-相较于目前主流智能合约钱包:

  • 不再需要单独运营一个 relayer,而是建立了通用模块 Useroperation Mempool & Bundler 完成用户指令&交易捆绑的动作
  • Entry Point 智能合约模块化,从而使得智能合约交互验证也得以集成,降低了开发成本
  • Bundler transaction 打包后,交易成本更低,省 gas 费

ERC-4337 的应用:

目前已经有一些智能钱包比如 UniPass Wallet  兼容了 ERC-4337 账户抽象协议, 以下内容来自 UniPass Wallet 的官网介绍:

“UniPass Wallet 支持任意代币支付手续费,可兼容所有主流 EVM 链,并将覆盖网页版、移动端、浏览器插件全平台,且支持多种调用方式。UniPass Wallet 兼容最新的 ERC-4337 账户抽象协议,是领先的智能合约钱包解决方案。”

还有其他数个优秀团队正在紧锣密鼓开发生产级的 ERC-4337 原生客户端钱包,关于开发进展推荐《A&T View:我们离普及智能合约钱包还有多远?一文看懂 ERC-4337》这篇文章,已附资料区。

我们有理由相信,随着 ERC-4337 协议的落地,智能合约钱包的开发成本和运营成本会大大减少,钱包开发者只需要关注于更加用户导向的能力,而不需要花过多精力解决关于账户层面的事情。

MPC 多方安全计算

这里我们再介绍另外一个成熟的 “无助记词” 的技术方案。

MPC,全称为 Multi-Party Computation,是一种重要的加密安全措施。其包含了很多种技术方案,下面主要指 MPC-TSS(Threshold Signature Scheme) 门限签名方案。

MPC 钱包,通俗讲是将一份私钥碎片化,交给多方来处理。当需要私钥签名时,则将碎片再拼接起来形成一个完整的私钥。比如手机本地保存一份、icloud 保存一份、钱包厂商保存一份这样。

MPC 工作流示意 来自 @nichanank

MPC 钱包的优点:

  • 作为链下方案,并不涉及到以太坊共识层或合约层的改动,用户的使用成本更低,且在短期内更具可行性
  • 为用户带来了免助记词的 web2 级别原生体验
  • gas 低。建立在 EOA 之上,在区块链上表示为单个地址,其 gas 费用与常规私钥地址相同,创建无需手续费

MPC 钱包的缺点

  • 链下问责制。签署授权和批准是在链下的,链下规则和签名阻碍了透明度,需要更严格的安全审计。
  • 与目前许多用户采用的大多数传统钱包不兼容 (没有助记词,没有完整的私钥存储在单个设备上)
  • MPC 算法没有标准化,也没有得到机构级安全设备 (如 iPhone SEP 和 HSM) 的原生支持。
  • 大多是孤立的定制产品。许多 MPC 库和解决方案都不是开源的,如果出现问题,生态系统很难独立审计和集成他们

MPC 钱包应用:

ZenGo、OpenBlock、Safeheron、Bitizen 等

小结:

区别于智能合约链上多签的解决方案,MPC 是通过对私钥进行多方计算在链下实现 “多签 “,而智能合约钱包的多签是一个授权需要多个私钥签名,而 MPC 是将一份私钥碎片化,所以 MPC 和智能合约的解决方案不是对立的,智能合约的多签可以继续叠加 MPC 技术,让钱包更安全。

5. 钱包赛道的前景和展望

钱包的发展趋势:

1. 无助记词。正如前文所提到的普通 EOA 钱包的一些问题,高进入门槛和不流畅的体验将相当一部分 web2 用户阻拦在了 web3 大门之外,我们需要无需助记词的 web2 原生级的体验。

**2. 更加智能。**而随着 Dapp 的百花齐放,我们也需要一个更加用户友好、功能完善的钱包。例如目前 NFT 的交易需要用户先授权再划转,这其实承担了一部分交易风险。我们需要写入智能合约里自动划转的功能,而无需承担交易风险等。而这些能力需要智能合约钱包的普及和应用。

钱包赛道的展望:

1.web3 通行证。

web3 钱包作为链接各大去中心化应用的一个顶级入口,是 web3 世界重要的基础设施。

2.DID 身份证明。

在传统互联网中,各个 web2 社交平台身份彼此分割,在抖音的身份往往和微博、微信都是割裂的。而 Web3 中,通过钱包,可以实现身份统一,你的链上身份通过你的钱包资产、NFT 来证明,还可以通过 SBT(灵魂绑定证明)与你的链下身份产生联系。

V 神在《中心化社会:寻找 Web3 的灵魂》中提出了灵魂绑定的概念:“我们的关键原语是持有公开可见的、不可转让的(但可能是发放者可撤销的)通证的账户或钱包。我们将这些账户称为 “灵魂 (souls)”,并将这些账户所持有的 token 称为 “灵魂绑定通证”(SBTs)。”

3. 资产管理所。

未来钱包将继续承载用户资产管理的重任,也可提供更多的金融玩法,如流动性质押、借贷等,正如目前的一些 DEX 产品所做的那样。

4. 流量聚集地

在未来,钱包会是 Web3 流量聚集地。像是 web2 世界的支付宝一样,未来的钱包应用除了资产管理,还可以集合更多的 Dapp,成为一个生态系统。这也是目前小狐狸(MetaMask)团队的目标,他们正朝着一个生态的发展的方向努力,通过生态开发者一同搭建,MetaMask 提供流量、开发者提供技术和更多的 Dapp 应用。

总结

钱包赛道前景广阔且有巨大的发展空间,未来很可能会出现一个拥有数亿级用户的顶级应用,这个赛道也从不缺乏具有冒险家精神的创业者,谁能在这个丛林中找准自己的方向并生存下来,我们将拭目以待。

钱包应用合集 图源 @nichanank

因篇幅问题,web3 钱包 top 级应用推荐将放到下一篇研报中,欢迎感兴趣的朋友持续 follow。

6. 学习资料

智能合约钱包

EIP-4337 账户抽象提案

MPC 钱包

本文作者为 PM 非技术出身,如有表达错误或者其他见解请留言指正。欢迎订阅:)

下篇预告:top5 前沿 web3 钱包应用深度投研报告

下下篇预告:链上资管赛道解析

免责声明:作为区块链信息平台,本站所发布文章仅代表作者及嘉宾个人观点,与 Web3Caff 立场无关。文章内的信息仅供参考,均不构成任何投资建议及要约,并请您遵守所在国家或地区的相关法律法规。