本文深入解析了以太坊的ERC4337标准,阐述了其在账户抽象方面的优势与面临的挑战。通过分离私钥和账户控制权,ERC4337提高了交易执行效率,简化了用户体验,但是其高昂的gas费用和兼容性问题仍需解决。未来,ERC4337可能会为DeFi、SocialFi和GameFi贡献更多灵活性和便利性。
作者: Kernel Ventures Jerry Luo
编辑: Kernel Ventures Rose, Kernel Ventures Mandy, Kernel Ventures Joshua
简明扼要:
以太坊上有两种钱包类型:EOA 和 SCW,面临执行效率低和无法独立发起交易的问题。以太坊开发者经历了几轮探索,他们目前找到的最佳解决方案是通过 ERC4337 实现的账户抽象。
总体来说,在这一阶段,ERC4337 仍然是实现账户抽象的最佳解决方案。通过 Paymaster 的补偿合约,DeFi 的门槛可以得到极大优化,因为社区可以提供零气体或低气体交易来吸引更多用户参与。通过交易的打包和批量处理,用户在 SocialFi 和 GameFi 中的参与体验可以得到很大改善,这将为 SocialFi 和 GameFi 的参与者提供更多样化的互动选择。
去中心化与便利性的权衡一直是加密参与者面临的重大困境。为了拥抱去中心化,用户需接受一系列复杂的过程,如存储助记词、私钥签名和设置 nonce 值。追求便利性的同时,诸如 FTX 和 JPEX 一系列中心化机构的暴雷事件使我们无法忽视账户所有权的重要性。迄今为止,以太坊开发者已经进行了一系列尝试,试图在 Web3 中获得 Web2 的便利性 —— 账户抽象。在今年的 ETHCC 大会上,以太坊创始人 Vitalik Buterin 对这些尝试进行了总结,其中 ERC4337 标准获得了开发者们最大的共识。
ERC4337 主要涉及三个对象:UserOperation、Bundler 和链上合约,在将控制和所有权从账户主体分离的过程中。UserOperation 包含用户输入,而 Bundler 完成交易的打包和发送。链上的合约有三个部分:入口点、Paymaster 合约和钱包合约,主要实现复杂的验证和执行逻辑。
来源: Kernel Ventures
二者之间最大的区别在于,ERC4337 钱包可以指定发送者,而不是将普通 ECDSA 解密地址视为交易发起者。因此,ERC4337 钱包实现了账户主体与所有权的分离。其次,paymasterAndData 也被添加到 ERC4337 中以设置支付合约。我们也将稍后解释支付合约的具体功能。
总体而言,在此过程中,用户首先将包含自定义参数的 UserOperation 发送给 Bundler。如果有 paymasterAndData 参数,将调用支付合约来支付 gas 费。如果有 initCode 参数,用户将根据内部的代码逻辑创建一个新的智能合约钱包。最后,为了减少签名验证过程中 gas 消耗,ERC4337 采用批量封装交易的方法,使用 Signature Aggregator 将类似的 UserOperations 打包生成聚合签名,仅验证一次。当离线 Bundler 的模拟验证和链上实际验证都通过时,智能合约钱包成功执行 UserOperation 中的用户自定义功能,并将剩余的 gas 作为奖励返回给 Bundler。
来源: Kernel Ventures
相比之下,使用 EOA 账户发起交易是非常简单的,仅需对交易数据签名并将其广播到整个网络。广播的交易在被节点验证后将被打包,并最终由 POS 机制选择的节点在链上写入。这个过程非常简单,没有中介 Bundler 或 Entry Point 合约,大幅减少了 gas 消耗。同时,安全性仅与 ECDSA 加密算法有关,且没有由复杂合约逻辑引起的内生安全风险。然而,在这个过程中,私钥与账户控制权是唯一绑定的,无法更改。所有交易必须逐一签名和验证,导致整个过程效率低下。
来源: Kernel Ventures
总而言之,ERC4337 实现了私钥与账户所有权的分离,通过批量交易减少了复杂交易过程中的 gas 消耗,通过支付合约消除了钱包的以太坊余额访问门槛,并通过智能合约钱包实施了签名方式。这些改进在 Web3 账户的便利性和实用性方面取得了很大进展。
总体而言,ERC4337 并不是以太坊上账户抽象的唯一选择。
来源: Kernel Ventures
正如我们所看到的,由于引入了智能合约,在执行合约服务(解包 UserOperation、执行条件验证、链上哈希等)的过程中会产生巨大的 gas 消耗,并触发事件以在以太坊上发布日志。同时,已证明在 ERC4337 中的批量处理在实际交易中是不切实际的,因为用户很少需要一次调用打包大量交易。此外,如果最初设计为共享交易成本的 UserOperation 无法在区块链上执行,也将给钱包账户或 Bundler 带来更高的损失。
ChainCatcher: MetaMask 产品负责人 Alex Jupiter 在接受 Decrypt 采访时表示,尽管在 EthCC 上多次提到账户抽象、EOA 和其他优化用户体验的技术,但 MetaMask 将非常谨慎地采用这些技术。
作为传统钱包提供商,MetaMask 可以通过提供去中心化的 Swap 服务帮助用户轻松创建 EOA 账户并收取手续费。对于这些已经形成稳定盈利模式的传统钱包巨头,他们大多数不愿意冒风险进行变更。到现在为止,他们通常对账户抽象采取观望态度。
以太坊上目前的 Dapps 包括 Opensea、Uniswap、MetaMask Swap 等,均以 EOA 账户作为其默认服务对象。为了使 Dapps 完全兼容 ERC4337 钱包,需要更改 Dapps 和钱包之间交互的审核机制以及代币质押机制。完成这一变更,当前主流 Dapps 的智能合约代码都需要修改。这一过程中可能出现的安全风险和更新成本是不可估量的。此外,考虑到之前 Tornado 合约导致的 Dapp 对合约账户存在大量交易阻力,这一更新的工作量更大。
在以太坊与 Layer 2 交互的跨链桥中,通常默认接收网络的支付地址与发送网络的支付地址相同。在传统的 EOA 账户中没有任何问题,因为相同的私钥可以通过签名在两个网络的地址上实现相同的控制效果。然而,在 ERC4337 钱包中,转账发起地址是合约地址,且不受私钥控制。因此,接收地址无法设置为与发送网络的相同地址。因此,当前 ERC4337 钱包与以太坊 Layer1 和 Layer2 之间几乎所有跨链桥之间存在兼容性问题。
来源: Dune
来源: Kernel Ventures
在 ERC4377 中引入了 Bundler,将账户主体与账户控制权分离。你所需的仅是一个存储一定数量以太坊的 EOA 账户作为 Bundler。与在 POW 机制中使用昂贵的挖矿机相比,Bundler 挖矿几乎没有投资成本且不受可能的法律限制。与 POS 机制下的质押挖矿相比,Bundler 的参与门槛极低。只需质押可以与 Entry Point 合约交互的 gas 即可。原因在于,比起验证节点,Bundler 恶意行为更难,进行恶意操作获得的收入也低于验证节点。因此,无需质押大量以太坊,以确保 ERC4377 协议整体运行的奖励与惩罚的平衡。最后,与流动性池中质押收入相比,Bundler 的锁仓时间更短,使资产更加灵活。当以太坊面临抛售压力时,用户能够及时提取资金以减少损失。基于以上优势,Bundler 在未来很可能成为以太坊的新投资方式,甚至衍生出类似于比特币矿池和以太坊质押池的 Bundler 池。
以意图为中心围绕“意图”进行构建,这意味着用户在执行操作时无需了解具体的执行步骤,而是程序根据用户需求自动设计底层所需的模块操作。对于新进入 Web3 的投资者而言,交易中的各种签名和 gas 设置非常不友好,因此有对加密货币感兴趣的人只能在 CEX 的帮助下进行投资,而无法真正进入 Web3 世界。这一现象的根本原因在于 DEX 和 CEX 之间操作意图的不同。例如,如果有人想要使用 DEX 以最有利的方式将 USDT 兑换为 ETH,他必须从许多交易池中选择最佳选项,然后签名授权 Dapp 拥有某些权限。接下来,签名确认 USDT 将被质押到流动性池中,最后签署确认等量的 ETH 将从流动性池中提取。以上每个操作都是基于行为的操作,并且每个操作都对应着一个底层行为。CEX 的操作是基于意图的,因此通过市场价委托即可以最有利的方式将用户持有的 USDT 替换为 ETH,而无需设置特定的委托价格。尽管这种模式的建议是完成这一系列过程是为了提供对交易过程的更透明的理解,以防止可能存在于模块化过程中的问题。但总体而言,具备这种能力的人仍然寥寥无几。大部分人只需一个可以实现他们意图的模块化过程,而不愿了解背后具体的操作。同时,手动过程的风险也比经过长期测试的模块化过程高。在 ERC4337 账户抽象诞生之前,EOA 账户的执行效率低,且交易需要逐一签名确认。因此,依据用户意图需要模块化处理交易的以意图为中心的应用在以太坊上发展的非常缓慢。在 ERC4337 中,通过引入 UserOperation 和 Bundler,每次用户签署交易后,都会在验证后放入主内存池,等待上传至区块链。相反,交易(ERC4337 中的 UserOperation)首先被发送到备用内存池,并与自己或其他用户的 UserOperation 混合,等待 Bundler 将这些 UserOperations 打包,然后提交到入口合约进行验证和执行。在这个过程中,用户只需要声明或签名他们的偏好,具体过程由 Bundler 根据现有的共识层或合约层逻辑来选择和执行,而无需参与任何特定过程。在 Dapp 中,我们可以设计以意图为中心的逻辑。当用户希望实现某个目标时,他们只需要签署意图,而不是选择自己的交易行为并逐一签名。可以预见,随着 ERC4337 的全面推广,基于意图的 Dapps 将在以太坊上普及,从而大幅降低 Web3 的入门门槛。
在上一轮牛市中,DeFi 紧密整合了 EOA 账户,极大提升了加密投资者链上的互动功能的多样性,并提供了收益、做市商、借贷等多种金融方式,从而最终导致了一次 DeFi 夏天的到来。然而,DeFi 的复杂交易流程和链上损失为普通用户参与设置了巨大的门槛,并阻碍了 DeFi 的进一步推广。然而,结合 DeFi 的 ERC4337 钱包可以提供以意图为中心的互动方式,让用户获得接近 CEX 的体验。同时,也可以通过 ERC4337 中的 Paymaster 实现免 gas 交易。一些运营商也可以通过这种方式吸引更多人参与 DeFi。然而,不同于 SocialFi 和 GameFi 等垂直领域,DeFi 涉及大量代币的转移和质押,安全性要求极高。账户抽象的合约层涉及相对较高的复杂性,容易引发安全漏洞造成用户加密资产的损失。同时,由于美国政府对 Tornado 等多个洗钱合约发布了禁令,许多 DeFi 合约将严格审查甚至暂停与智能合约地址的交互。因此,智能合约钱包与当前 DeFi 系统之间存在大量的不兼容性。这也将给 ERC4337 钱包在 DeFi 推广带来障碍。
不同于早期 GameFi 中的“半链”游戏,仅将游戏资产和道具上传到链上以确保其资产的安全性,由 GameFi 的核心逻辑和经济模型写入链上的智能合约,并与链上的游戏进行交互,实现整个过程的去中心化和高安全性。然而,目前阶段的 Web3 游戏为了实现多链也付出了巨大的代价。首先是Gas费用的激增。链上游戏、道具与场景之间的每一步交互都需要记录在链上,这导致游戏成本的飙升。为了解决这个问题,目前多链游戏的交互逻辑往往非常简单,但这也限制了用户的交易体验。同时,如果使用传统的 EOA 账户,整个游戏交互过程中必须忍受极为繁琐的验证过程以确认每次交互。这个过程大大降低了游戏体验。账户抽象的引入首先大幅降低了交易成本。交易确认过程仅需 BLS 聚合签名和一次签名验证,大大节省了加密验证过程中的 gas 消耗。此外,通过批量打包交易,可以消除原有的逐次确认的过程。同时,个性化智能合约账户的引入也可以便于多链游戏的模块化构建,从而提高开发效率。目前,在具备原生账户抽象的 Starknet 网络上,我们已看到多个成功案例将多链游戏与账户抽象相结合,例如 Loot Realms、Cartridges 等。
陷入私钥账户的捆绑机制及 EOA 账户自身的有限交互功能,SocialFi 一直面临高参与门槛和账户管理困难的问题。糟糕的用户体验极大限制了 SocialFi 项目的发展极限。账户抽象的引入将彻底改变这种状况。然而,在便利性、可恢复性和安全性之间的选择依赖于特定 SocialFi 的 Web3 账户的重要性性权衡。首先是私钥与账户控制权的分离。用户不再需要保留复杂、混乱的私钥或助记词,可以动态调整账户密码。例如,ERC4337 项目 Ambire 于 2021 年底推出,通过电子邮件实现 Web3 账户和私钥的恢复。其次,ERC4337 提供的批量交易解决了本文开头提到的 Web3 门槛问题。在 Web2 中可以通过一个按钮解决的问题,在 Web3 中也可以通过一个按钮得到解决。最后,ERC4337 账户中的自定义代码逻辑的引入更贴近 Web2 中账户个性化设计的理念,使每个 SocialFi 账户根据其自身偏好引入不同的账户功能,类似于 QQ 中用户可以选择是否开启渠道功能。
截至发稿时,Web3 用户数量约为 3 亿,全球人口仅占约 4%。与世界上 60 亿互联网用户相比,仍有很大的发展空间。要赶上 Web2 的规模,跨越 10 亿用户大关,降低参与门槛和更丰富的账户自定义功能是 Web3 的前提。在实现这一目标的所有选项中,ERC4337 相对风险更低,框架相对成熟,并得到以太坊基金会和主要开发者的认可。因此,自从入口点合约部署到以太坊以来,账户抽象用户的数量也经历了爆发式增长。
来源: Dune
虽然 ERC4337 得到了以太坊社区的广泛认可和推动,但在实际实施过程中仍面临许多问题。首先是其自身待定的标准。由于许多对 ERC4377 的补充提案仍在审查中,最终形式尚未确定,这给 ERC4377 生态项目的开发带来了很大的障碍。其次是 ERC4377 的更新成本。一旦入口合约被部署,整个网络的多数钱包需要覆盖原始地址以完成更新,这极其困难。最后,Existing Dapps 和跨链桥的兼容性问题。如果 ERC4337 要全面实施,以太坊现有的 Dapps 需要进行广泛升级,面临安全风险和成本。
然而,ERC4377 也对此类问题作出了积极回应,如通过增加外部智能合约来提高 Bundler 的打包效率、增加操作码以改善智能合约账户权限、并补充 EIP 提案以解决 Entry Point 升级困难的问题。同时,面对传统 Dapps 的不兼容问题,ERC4337 积极构建自己的生态系统,以促进账户抽象钱包在以太坊上的应用。ERC4337 钱包的全面实施可以在以太坊虚拟机层面实现 EVM 以意图为中心,进一步在 Dapp 中实现 EVM 以意图为中心的抽象,使 Web3 中的操作达到 Web2 中以用户意图为中心的简单。若意图为中心能够在以太坊 Dapp 中全面实现,DeFi、GameFi 及几乎所有需要简化操作和自动化的垂直领域将极大优化用户体验,从而吸引更多外部参与者。然而,涉及到直接进行代币转移的 DeFi,由于其对安全性要求严格,将会相对保守。而像 SocialFi 和 GameFi 这样更关心用户体验且相对弱化安全性的垂直领域,因 EOA 账户的限制不具备进行复杂交互设计的能力。通过 ERC4337,这些垂直领域可以解决原有的高用户门槛和差的用户体验这两个主要问题,从而迎来用户数量的大规模增长,甚至可能成为下一轮牛市的主要闪光点。
Kernel Ventures 是一个由研究和开发共同推动的加密 VC 基金,已经进行 70 多项早期投资,专注于基础设施、中间件、dApps,特别是 ZK、Rollup、DEX、模块化区块链,以及将带来下一个十亿用户的垂直领域,例如账户抽象、数据可用性、可扩展性等。在过去的七年中,我们致力于支持全球核心开发社区和大学区块链协会的成长。
- 原文链接: medium.com/@KernelVentur...
- 登链社区 AI 助手,为大家转译优秀英文文章,如有翻译不通的地方,还请包涵~
如果觉得我的文章对您有用,请随意打赏。你的支持将鼓励我继续创作!