
Buidler DAO:EIP-4337账户抽象钱包方案能否开辟钱包新时代?
钱包作为进入加密世界的入口以及通行证在整个加密行业中有着不可替代的地位,使用钱包也是每一个想进入加密世界的人不可避免的一环,钱包的功能也从最初的纯记账功能演化至如今的多链多场景使用功能。但目前钱包的使用门槛对于新用户来说学习成本过高,这道门槛将许多想进入加密世界的人拒之门外,而钱包门槛的降低才可以为整个加密世界带来更多的新鲜血液以及生态的爆发,随着 EIP-4337 账户抽象提案的到来,账户抽象钱包带来的降低门槛是否会让钱包进入下一个时代引爆加密世界的用户爆发潮?
作者:@菠菜菠菜 编排:@Coucou 特别鸣谢十四君以及方军老师的支持以及指导 注:文章仅代表作者个人观点,不构成任何投资建议 TL;DR ▪ 加密世界的知识门槛较高,人们普遍缺乏对区块链以及钱包知识的认知,钱包现阶段使用体验复杂,存在着许多因素阻碍着新用户的加入 ▪ 现阶段小白用户使用钱包时会遇到一些痛点:使用钱包必须先有 Gas 费、需要寻找加密资产购买渠道、眼花缭乱的主网选择以及钱包安全问题 ▪ 以太坊上的钱包存在两种不同类型的账户即 EOA 外部拥有账户(Externally Owned Accounts)和 CA 合约账户(Contract Account),EOA 外部拥有账户类型的钱包指由私钥以及公钥的密钥对控制的钱包,不具备可编程功能。CA 合约账户类型的钱包指以智能合约形式存在的钱包,合约账户类型的钱包本身不是由私钥控制也不存在私钥,而是通过编写代码实现各种功能,但不能主动发起交易 ▪ 两种钱包账户类型各有利弊以及局限性,EOA 外部拥有账户只能按照以太坊规定的生成密钥对的方法来生成,不具备可编程性,需要拥有 Gas 费才可以操作,私钥丢失就无法找回,但相比 CA 合约账户类型而言,虽然 CA 合约账户类型可以自定义逻辑来实现更多功能的可能性,但是 CA 合约账户类型无法主动发起交易需要由 EOA 外部拥有账户来进行调用,并且生成 CA 合约账户类型的钱包需要额外的成本,这两种钱包账户类型目前都无法解决钱包使用体验复杂的问题 ▪ 账户抽象(Account Abstraction)是以太坊上一种待实现的钱包技术方案,其最终愿景是让AA账户抽象钱包结合 EOA 外部拥有账户和 CA 合约账户两种账户类型的特征,使其合二为一替代 EOA 来作为主账户存在,除了拥有 CA 的可编程性外还可以摆脱 EOA 的依赖主动发起交易 ▪ EIP-4337 提案将原本以太坊钱包交易流程中写死在共识层中的【验证交易机制】抽离出来交给 EIP-4337 的新机制处理,新机制的出现使得账户抽象钱包实现了签名方式的可自定义,并且带来了更多应用场景 ▪ 实现了账户抽象的钱包应用可以让用户无需拥有 EOA 也可以使用特定的签名方式发起交易来作为主账户使用,使得账户抽象钱包的所有权以及签名权解耦,账户抽象钱包的 EOA 所有者账户也仅仅是作为所有者存在,不影响实际账户抽象钱包的使用 ▪ EIP-4337 之所以能被以太坊选择为最终方案,首先是因为 EIP-4337 不需要进行共识协议层的修改就可以实现账户抽象,这就避免了不亚于类似从 POW 工作量证明机制转换至 POS 权益证明机制这种庞大的共识层修改 ▪ 在 EIP-4337 中账户抽象钱包将【签名验证机制】交给了入口点合约来进行,这就使得账户抽象钱包可以使用任意签名形式的签名机制,钱包开发者可以选择相应场景的签名形式去开发钱包产品 ▪ 目前的账户抽象钱包更像是一种智能合约钱包的新标准,还无法摆脱对于需要 EOA 作为钱包拥有者的依赖。并且目前账户抽象提案仍存在一些不足以及风险:智能合约风险、更高的 GAS、技术实现问题 全文 6962 字,预计阅读时间 17 分钟 文章速览: 01/ 现阶段小白用户使用钱包的痛点是什么? 02/ 以太坊现有的钱包类型有哪些? 03/ 账户抽象是什么?EIP-4337账户抽象有哪些优点? 04/ 为什么以太坊选择了EIP-4337账户抽象提案? 05/ EIP-4337账户抽象钱包如何运作?与其他钱包账户类型有什么不同? 06/ EIP-4337账户抽象存在着哪些不足和风险?
现阶段小白用户 使用钱包的痛点是什么? 由于加密世界的知识门槛较高,人们普遍缺乏对区块链以及钱包知识的认知,钱包现阶段使用体验复杂,并存在着许多因素阻碍着新用户的加入。 痛点一:使用钱包必须先有 Gas 费 当一个小白用户满怀期待想体验加密世界并下载了钱包准备大干一番的时候,小白惊奇的发现钱包居然不能使用,因为钱包里面没有公链原生通证(如以太坊的ETH)作为 Gas 费,钱包无法进行任何操作,因为钱包的每一次链上操作都需要矿工来打包操作并支付 Gas 费给矿工作为辛苦费,这时小白就要开始寻找购买加密资产的渠道,而许多钱包产品并没有提供出入金渠道,大多数小白的选择可能就会是中心化交易所。 痛点二:加密资产购买渠道以及眼花缭乱的主网选择 当小白用户想购入加密资产时,他们可能会选择有出入金渠道的钱包产品、中心化交易所、场外交易等渠道购入加密资产,但对于选择中心化交易所和场外交易渠道的小白用户来说,在中心化交易所购入资产后想要转入钱包中的话小白用户又会被选择转账的各种各样的主网给搞晕了,学会选择主网就需要一定的学习成本,稍不小心转错网络处理起来极其繁琐,如果是场外交易的话则十分具有风险,小白用户极容易成为骗子的诈骗对象。 痛点三:钱包安全问题 对于小白用户来说,即便好不容易搞定了 Gas 费可以使用钱包进行交互了,但整个加密世界对于小白来说就是一片黑暗森林。小白用户需要学习关于钱包的密码学知识如私钥公钥等,还需要理解私钥是什么并思考怎么确保私钥的安全以及防范加密黑暗森林中的骗局,这些对于小白用户来说学习成本大且很容易上当受骗,最重要的是私钥一旦丢失或忘记就无法找回,不能像 Web2 应用找回密码那样重新找回,对于 Web2 用户来说这是他们很难习惯的.
以太坊现有的钱包类型有哪些? 目前以太坊上的钱包存在两种不同类型的账户即 EOA 外部拥有账户(Externally Owned Accounts)和 CA 合约账户(Contract Account)。 EOA外部拥有账户(Externally Owned Accounts) EOA 外部拥有账户类型的钱包指由私钥以及公钥的密钥对控制的钱包,外部拥有钱包的作用基本只有接收、持有、发送 Token 和与智能合约进行交互的功能,不具备可编程功能,并且执行每一笔交易都需要支付 Gas 费。创建一个外部拥有账户类型的钱包是无需成本的,但只能通过生成私钥的方式创建。 CA 合约账户(Contract Account)
CA 合约账户类型的钱包指以智能合约形式存在的钱包,合约账户类型的钱包本身不是由私钥控制也不存在私钥,而是通过编写代码实现各种功能,如 DeFi 协议、多签钱包、保险柜、水龙头等等功能,常见的用处有多签钱包,即需要多个外部拥有账户钱包授权才可以进行交易的钱包,通常用于企业钱包管理。创建一个合约账户钱包是需要消耗Gas费创建的,合约账户钱包本身不能主动发起交易,而是需要外部拥有账户钱包调用并支付 Gas 费而被动发起交易。
这两种钱包账户类型各有利弊以及局限性,EOA 外部拥有账户只能按照以太坊规定的生成密钥对的方法来生成,不具备可编程性,需要拥有 Gas 费才可以操作,私钥丢失就无法找回,但相比 CA 合约账户类型而言,虽然 CA 合约账户类型可以自定义逻辑来实现更多功能的可能性,但是 CA 合约账户类型无法主动发起交易需要由 EOA 外部拥有账户来进行调用,并且生成 CA 合约账户类型的钱包需要额外的成本,这两种钱包账户类型目前都无法解决钱包使用体验复杂的问题。 账户抽象是什么? EIP-4337账户抽象有哪些优点? 账户抽象(Account Abstraction)是以太坊上一种待实现的钱包技术方案,其最终愿景是让 AA 账户抽象钱包结合 EOA 外部拥有账户和 CA 合约账户两种账户类型的特征,使其合二为一替代 EOA 来作为主账户存在,除了拥有 CA 的可编程性外还可以摆脱 EOA 的依赖主动发起交易。 本处讨论的账户抽象(Account Abstraction)指由 Vitalik 提出的以太坊 EIP-4337 提案,该提案将原本以太坊钱包交易流程中写死在共识层中的【验证交易机制】抽离出来交给 EIP-4337 的新机制处理,新机制的出现使得账户抽象钱包实现了签名方式的可自定义,并且带来了更多应用场景如:代付 Gas、聚合签名、隐私保护等。 EIP-4337 提案实现后的账户抽象钱包可以不局限于 EOA 外部拥有账户类型钱包使用的以太坊椭圆曲线数字签名算法(ECDSA)密钥对的签名方式,钱包应用的开发者们可以将任意类型的签名方案应用在账户抽象钱包应用上使得用户可以使用其他签名方式发起交易,从而可以降低用户的使用门槛。 实现了账户抽象的钱包应用可以让用户无需拥有 EOA 也可以使用特定的签名方式发起交易来作为主账户使用,使得账户抽象钱包的所有权以及签名权解耦,账户抽象钱包的 EOA 所有者账户也仅仅是作为所有者存在,不影响实际账户抽象钱包的使用。而所有权和签名权的解耦使得钱包产品可以为用户提供社交恢复等手段,人们即便丢失了私钥也不用担心无法找回了。 由于账户抽象钱包新机制带来的可扩展性,先有 Gas 才能使用钱包的痛点也可以得到解决,账户抽象钱包不仅可以允许第三方代付 Gas,还可以实现除原生代币以外的资产支付 Gas 费,这将极大的降低小白用户对于 Gas 费的使用门槛,在不久的将来似乎可以预见,账户抽象带来的更低门槛以及更多的自定义功能可能会引领钱包的一个新时代。 为什么以太坊选择了 EIP-4337 账户抽象提案? 账户抽象的讨论自以太坊上线之时讨论就没有停止过,从最早的 EIP-101 到 EIP-3074 再到现在最新的EIP-4337,账户抽象的方案已经迭代过好几个版本,但由于大部分方案不成熟以及涉及到共识协议层的修改太复杂最终被搁置了。 从2015年至今经过了漫长的讨论和迭代后,最终以太坊在 EIP-3074 和 EIP-4337 这两个方案之间进行抉择,如果说 EIP-4337 是让 CA 智能合约账户钱包可以像 EOA 那样使用,那么 EIP-3074 就是让 EOA 外部拥有账户钱包可以拥有智能合约账户的可编程功能,最终随着以太坊创始人 Vitalik 公布的以太坊最新路线图中,EIP-4337 被正式纳入在 The Splurge(狂欢)阶段中实施,这也让 EIP-4337 成为了账户抽象的最终方案。 EIP-4337 之所以能被以太坊选择为最终方案,首先是因为 EIP-4337 不需要进行共识协议层的修改就可以实现账户抽象,这就避免了不亚于类似从 POW 工作量证明机制转换至 POS 权益证明机制这种庞大的共识层修改,而 EIP-3074 涉及到共识层的改动,一旦出问题就需要使用硬分叉(hard fork)来解决问题,其次由于 EIP-3074 是让 EOA 外部拥有账户拥有智能合约账户的特性,在签名机制上依旧使用固定的 ECDSA 签名,无法像 EIP-4337 那样可以使用任意签名方式,所以相比于 EIP-3074 来说,EIP-4337 似乎在钱包门槛的降低上更有优势。 图片来源:ethereum.cn翻译
EIP-4337 账户抽象钱包如何运作? 与其他钱包账户类型有什么不同? 账户抽象相比于之前的账户类型引入了一些新角色以及机制: 钱包合约 (Wallet Contract):账户抽象后的钱包智能合约,可以实现自定义的钱包逻辑。 入口点合约 (Entry Point Contract):与钱包合约进行沟通协调并负责处理验证和执行用户操作的合约。 用户操作(UserOperations,uo):用户发起的新链下交易形式,区别于以前的【交易事务Transaction, tx】。 捆绑者(Bundler):负责将用户操作打包并传递给入口点合约的链下计算节点。 用户操作内存池(UserOperation Mempool):一个专门用于堆积待执行用户操作的内存池,独立于交易事务内存池。 代付人(Paymaster):可选择的第三方支付 Gas 的代付人合约账户。 如果你不明白这些新名词是什么,接下来我会用简化版的流程图来进行展示,首先我们先了解 EOA 外部拥有账户类型的钱包的交易机制,EOA 外部拥有钱包需要签署一个 ECDSA 签名才可以发起交易。 图片来源:https://medium.com/nethermind-eth/ethereum-wallets-today-and-tomorrow-eip-3074-vs-erc-4337-a7732b81efc8 从图中可以看到 EOA 账户类型的钱包发起一个交易的步骤为: 用户使用私钥对交易信息进行 ECDSA 签名产生一个带有签名的交易事务(Transaction, tx) 带有签名的交易事务会被发送到处理待执行事务的内存池中等待处理 矿工会在交易事务内存池中处理事务并验证有效性 当验证有效性为有效时,交易事务会被纳入区块中,反正则废弃交易事务 由于 CA 合约账户类型没有统一的交易流程标准,下图为某种依赖 Relayer 的智能合约钱包的交易流程,我们可以看到 CA 合约类型账户的需要依靠一个 EOA 外部拥有账户类型的钱包签署 ECDSA 签名来执行交易,并且 Relayer 这个角色可能会伴随着中心化的风险。 图片来源:https://medium.com/nethermind-eth/ethereum-wallets-today-and-tomorrow-eip-3074-vs-erc-4337-a7732b81efc8 从图中可以看到某种 CA 合约账户类型的钱包发起一个交易的步骤为: 用户使用私钥对交易信息进行任意形式的签名产生一个带有签名的交易信息(signed message) 带有签名的交易信息会被发送给负责传达消息的节点 Relayer Relayer 使用私钥对带有用户签名的交易信息进行 ECDSA 签名形成一个交易事务 Relayer 将包含用户交易信息的交易事务通过 Relayer 的 EOA 外部拥有账户钱包发送给用户的钱包智能合约进行执行 用户的智能合约钱包执行操作并通过矿工验证后上链纳入区块 接下来我们再来看 EIP-4337 账户抽象后的钱包交易机制 图片来源:https://medium.com/nethermind-eth/ethereum-wallets-today-and-tomorrow-eip-3074-vs-erc-4337-a7732b81efc8 从图中可以看到账户抽象后发起一个交易的步骤为: 用户发起一个钱包用户操作,使用任意形式的私钥对用户操作进行签名产生一个带有签名的用户操作(UserOperations,uo) 带有签名的用户操作会被发送到待执行用户操作内存池等待处理
Bundler 将用户操作内存池中的用户操作进行打包处理成一个事务并提交给入口点合约 入口点合约处理所有用户操作:验证钱包是否存在-要求钱包验证用户操作-将用户操作发送至智能合约钱包进行执行 智能合约钱包将用户操作执行并纳入区块 通过对比下来我们可以发现,EOA 外部拥有账户发起交易需要依靠以太坊固定的 ECDSA 签名算法来进行签名,而 CA 合约账户最终也需要依靠 EOA 外部拥有账户的 ECDSA 签名算法来签署交易,而在 EIP-4337 中账户抽象钱包将【签名验证机制】交给了入口点合约来进行,这就使得账户抽象钱包可以使用任意签名形式的签名机制,钱包开发者可以选择相应场景的签名形式去开发钱包产品,用户可以直接通过钱包应用特定的签名方式操控账户抽象钱包进行操作,而这种签名方式可以是 Web2 用户也能轻松使用的方式或是专用场景下的定制方式。 并且由于任何矿工都可以充当 Bundler 这个角色,这就避免了 Bundler 这个角色的中心化风险,同时 Bundler 通过捆绑交易还可以预防 Flashbot 监听内存池进行 MEV 套利,并且这些新机制的出现还带来了更多的应用场景想象空间,例如第三方代付 Gas 费的 Paymaster。 从图中可以看到,交易事务(tx)与用户操作(uo)是两个独立的内存池,由于账户抽象的入口点合约的存在,代付人(Paymaster)合约便可以像乐高积木一样与入口点合约组合在一起,当入口点合约对用户操作(uo)进行验证之前先对代付人进行验证确认:是否同意代付?是否有足够支付 Gas 费的 ETH 进行质押? 除了代付人完全补贴之外,如果用户的账户合约中只有类似于 USDT、USDC 等非 Gas 费代币,用户也可以通过将 Gas 等值的其他代币转给代付人合约以达到无 ETH 支付 Gas 费的作用。 除了代付 Gas 之外,入口点合约还可以结合聚合签名验证合约实现聚合签名功能,通过多人签名的方式来控制钱包。 以上案例我们可以看到 EIP-4337 方案中的入口点合约模块化的可组合性带来的更多应用场景想象空间,似乎账户抽象钱包可以给整个加密世界带来非常多的好处,但现实真的会如此美好吗? EIP-4337 账户抽象 存在着哪些不足和风险? 虽然账户抽象的愿景十分美好,但现实却往往却很骨感,目前的账户抽象钱包更像是一种智能合约钱包的新标准,还无法摆脱对于需要EOA作为钱包拥有者的依赖。并且我们都明白一个道理:越是复杂的事物越容易出问题,目前的账户抽象提案仍存在一些不足以及风险: 智能合约安全问题 智能合约安全问题一直是困扰加密世界的一个难题,我们甚至可以看到许多通过了“智能合约审计”的合约往往也会出现安全漏洞,而每次出现合约安全问题往往都会伴随着巨大的财产损失,而对于 EIP-4337 账户抽象方案来说,账户抽象钱包的功能模块化堆积以及新机制的加入就会使得其代码执行逻辑更加复杂,而往往更复杂的代码执行逻辑可能就会伴随着潜在的安全风险。由于账户抽象钱包和入口点合约本身都是智能合约,一旦入口点合约或者钱包合约出现问题则有可能会酿成一场损失惨重的黑客事件,人们对使用账户抽象钱包的信任也会大打折扣。 更高的 Gas 费 除了潜在的合约安全风险之外,账户抽象钱包使得用户需要支付的 Gas 费更高了,因为账户抽象钱包相比于 EOA 外部拥有账户和 CA 合约账户来说处理交易的操作步骤变多了以及处理逻辑更复杂了,需要处理的操作变多也就意味着需要的 Gas 费更多,虽然 Vitalik 也提出可以通过 Layer2 来处理账户抽象的数据来降低 Gas 消耗的解决方案,但这也需要一段漫长的时间。 技术实现问题 目前距离 EIP-4337 的落地还有很长的一段时间要走,许多理论上可以实现的技术往往在实践中会困难重重遇到许多问题如:兼容问题,复杂的节点验证过程,如何防止 Bundler 作恶、技术逻辑无法实现等等,要解决这些技术问题需要进行长时间的尝试和讨论,这也是为什么 EIP-4337 被放在了以太坊升级的第六个阶段 Splurge(狂欢)中的原因。 道阻且长,加密世界需要更低门槛且安全的钱包来吸引更多新用户以突破用户量的瓶颈,相信随着账户抽象的实现会给加密世界带来一个全新的想象空间,甚至可能在不久的将来会有一个意想不到更好的替代方案来取代账户抽象,加密行业迭代更新的速度远超我们想象,这也是这个行业的魅力所在。
比推快讯
更多 >>- 全网比特币合约未平仓头寸达 735.9 亿美元
- 公链活跃度近 7 日排行榜:Solana 稳居首位
- 白宫经济顾问:部分贸易谈判可能会超过截止日期
- “内幕巨鲸”被多次清算后的目前残余仓位降至 4734 万美元
- 分析:BTC 内存池中交易数量与去年底相比明显减少,或有潜在危机
- 美国财长贝森特:马斯克应该专注于商业
- 分析师:WLFI 测试添加流动性为不实消息
- 比特币回升触及 10.9 万美元
- 美财长贝森特:若 8 月 1 日前未达成协议,关税将恢复至 4 月份水平
- 美国财长贝森特:将由美联储决定是否降息
- 人工智能交易市场 olaxbt 完成 338 万美元种子轮融资,Amber Group 领投
- 消息人士:美国和印度小型贸易协议谈判已经完成,平均关税税率或为 10%
- 美国财政部长:100 个较小的国家将获得固定的关税税率
- 疑似 Abraxas Capital 标记地址向 Kraken 转入 1000 枚 BTC
- 美国财政部长:贸易谈判进入最后阶段
- 某巨鲸循环做多 ETH,过去 2 小时建仓 2304.3 枚 stETH
- 马斯克已向美国联邦选举委员会提交美国党组织声明
- 马斯克发文询问“美国党”首次代表大会应在何时何地举行
- Boom 基金会:已完成 BOOM 代币空投资格快照
- 港媒:Circle 上市一个月录得逾 5 倍涨幅,光大控股于 2016 年成为其股东
- Michael Saylor 再次发布比特币 Tracker 信息,下周或将披露增持数据
- 中信建投:美股代币化大爆发,券商 IT 改造需求有望加速释放
- LetsbonkFun 以 45.7% 市场份额登顶,24 小时交易量达 4.02 亿美元
- 人大金融科技研究所:促进可控稳定币与数字人民币互通互认
- 劳埃德银行:下周美联储会议纪要或不会改变 7 月不降息市场预期
- Cartwright 建议英国首个 DB 养老基金将 3%资金投入配置 BTC
- 疑似 Arthapala 地址过去 5 小时再次向各大交易所充值 5850 枚 ETH
- Vitalik Buterin 联合发起 EIP-7983 提案,拟增强网络抗 DoS 攻击能力
- 美国党构想曝光:马斯克称打破两党垄断并不难
- 陈茂波:香港上市 ETP 锚定资产包括数字资产,也有追踪 Coinbase 等美股产品
- 近期沪深两市多家上市公司频繁被询问是否布局稳定币业务
- Endless Clouds 基金会:END 转账功能拟于 24 小时内生效
- 比特币于 65 分钟前在高度 904263 处挖出空区块
- 分析:马斯克成立“美国党”或需数年时间来解决法律和经济层面的困难
- 本周美国以太坊现货 ETF 净流入 2.191 亿美元
- 观点:马斯克虽有巨额财富和影响力,但历史上美国第三党很难成功
- 转移逾 8 万枚 BTC 的远古巨鲸疑似升级旧钱包,暂无抛售迹象
- 前 DigitalMint 勒索软件谈判专家被指控与黑客合谋敲诈受害者,遭美国司法部调查
- Toncoin 与阿联酋合作,向 TON 质押者提供 10 年黄金签证
- Polymarket 上预测WLFI 代币上线首日后 FDV 超过 130 亿美元概率达 56%
- Bankless 联创:以太坊 MEV 最小化投资或助力传统金融采纳
- Hash Epoch 平台代币 HEST 将于 7 月 9 日全网上线交易
- Matrixport 近 1 小时从 Binance 提取 1500 万 USDT
- 印度捣毁“最多产的暗网毒品集团”,嫌疑人使用门罗币洗钱
- 观点:因加密禁令没收中国用户 FTX 索赔资金缺乏法律依据,FTX 债权以美元计价并结算
- ZachXBT:不承接 Sui 生态相关案件,在该生态系统未得到支持
- 沉寂两年的鲸鱼向 Kraken 转入 230 枚 ETH,价值约 57.9 万美元
- 某巨鲸清仓 21.6 万枚 HYPE,亏损 29 万美元
- Miller Value Partners 首席投资官 Bill Miller IV 质疑比特币征税合理性
- Binance Alpha 昨日交易量报 4.586 亿美元,BR、KOGE、CARV 分列前三