- ERC-4337通过引入智能账户,将其升级为“智能钱包”,从根本上改变了账户管理。这提高了功能性、安全性和用户体验。
- ERC-4337通过支持多重签名和简化恢复流程来提高安全性,确保自主权并降低账户丢失的风险。
- ERC-4337提供智能费用管理,允许通过ERC-20支付赞助交易和交易费用。
- ERC-4337通过使用替代内存池(mempool),实现账户抽象而无需进行共识层更改。
账户抽象(Account Abstraction):智能账户与EOA账户
账户抽象通过引入智能账户的概念,彻底改革了区块链生态系统中的账户管理。与传统的外部拥有账户(EOAs)不同,智能账户使用户能够将智能合约作为其主要账户,将其升级为“智能钱包”。此外,通过像ERC-4337这样的倡议在以太坊生态系统中采用账户抽象代表了一次变革性的转变,提供了增强的安全功能、新的功能和改进的用户体验。
智能账户是账户抽象实现的重大突破。账户抽象旨在通过允许直接从钱包执行功能来增强功能性和安全性,从而消除了对外部交互的需求。这种简化的用户体验将智能合约功能无缝集成到日常交易中。
智能费用管理是账户抽象引入的一个显著功能。具备此功能的钱包可以确定最佳的交易费用并分配支付费用的责任。这使用户在管理交易成本方面具有更大的灵活性和效率。
通过账户抽象,安全性得到了极大加强。它使交易需要多重签名,为防止未经授权的访问和潜在攻击提供了额外的保护层。此外,恢复过程变得简化,减少了对中心化援助的依赖。用户可以独立恢复对其账户的控制,确保自主权并降低账户丢失的风险。
账户抽象与ERC-4337的区别
尽管ERC-4337在账户功能和交易费用管理方面带来了重大进展,但它并没有实现完全的账户抽象。与真正的账户抽象不同,ERC-4337更像是一个交易中继器,为组织交易提供了一个离链订单簿,在将它们中继到区块链之前。
然而,真正的账户抽象设想了外部拥有账户(EOAs)与以太坊区块链本身交互方式的更全面转变。要实现这种抽象水平,需要对以太坊的整个共识机制进行大规模升级,这是一个复杂的任务,超出了ERC-4337的范畴。
尽管已经发布了其他EIP以实现账户抽象,但它们需要对共识层进行一些协议更改。ERC-4337旨在在不进行任何共识层更改的情况下提供账户抽象。
ERC-4337 工作原理(技术解读)
ERC-4337 标准在以太坊网络中引入了一个名为 "UserOperation" 的新对象,为智能钱包提供了实现。当用户发起一个 UserOperation 时,会将“高层伪交易对象”发送到专门用于处理 ERC-4337 交易的独立内存池,该内存池与主以太坊网络的内存池不同。
ERC-4337 的一个核心优势是在主网中提供了更高的灵活性。用户可以一次执行多个交易,并将它们捆绑在一个 UserOperation 中。此外,用户还可以将交易费用的支付委托给外部拥有账户(EOA),如钱包提供商,简化流程并降低用户成本。
实施 ERC-4337 的过程包括四个阶段:
- 用户通过创建 UserOperation 表达其意图,表示其所需的交易。这些 UserOperation 类似于未确认的交易。
- 将这些 UserOperation 捆绑到专门用于 ERC-4337 交易的独立内存池中,并由捆绑器(验证者)进行处理。
- 捆绑的交易被发送到 EntryPoint 合约,EntryPoint 是一个标准化的代码片段,充当区块链上的参考点。
- EntryPoint 调用 validateUserOp 函数来识别与合约钱包相关联的 UserOperation。智能合约钱包应实现 ExecuteUserOp 函数以确保交易完成。
值得注意的是,ExecuteUserOp 费用可以使用与智能合约钱包关联的 “ETH Balance” 元素或任何其他 ERC-20 代币支付。对于赞助交易的情况,拥有 ETH Balance 的支付主体可以验证并支付Gas费用。此外,当交易涉及多个签名时,签名聚合器可以协助执行过程。
详细的技术信息请参考:https://eips.ethereum.org/EIPS/eip-4337。
ERC-4337 的特点
- 执行多个操作的单一交易:ERC-4337 标准允许将多个交易捆绑到一个交易中,简化流程并减少多次签名的需求。这对于常在单次互动中执行多个操作的交易者和游戏玩家尤为有益。
- 多人参与的单一交易(多重签名和社交恢复):ERC-4337 使得可以执行需要多个签名的交易,实现协作决策和增强安全性。此外,它引入了社交恢复的概念,即指定的监护人或账户可以在用户遗失种子短语或遇到访问问题时协助恢复账户。
- 支付主体(赞助交易和使用 ERC-20 支付的交易):通过 ERC-4337,用户可以从赞助交易中受益,第三方实体(如 dApp 或钱包提供商)代表用户支付交易费用。此外,该标准允许使用 ERC-20 代币支付Gas费用,提供更多灵活性,并减少对特定代币的交易依赖。
- 订阅、限制和自动付:ERC-4337 标准支持自动和重复付款,实现订阅模式,并为在线订阅或定期付款等服务提供无缝交易。用户可以定义自定义消费限制和使用说明,为特定的阈值或条件设置警报和通知。
- 更流畅的用户体验:通过整合多个操作、简化费用支付和提高交易灵活性,ERC-4337 改善了用户在以太坊网络中的体验。它还降低了交易成本和复杂性,为 dApp 开发人员提供了一个更简洁且易于使用的框架,从而提高了整个生态系统的吸引力。
总之,ERC-4337 标准为以太坊网络带来了更高的灵活性和可扩展性,有助于实现更多的用例和潜在的应用程序。通过支持多个交易、多重签名、赞助交易、自动付款等功能,该标准促进了以太坊生态系统的发展,提高了用户体验和开发者友好性。
优势与风险
ERC-4337 的优势
- 验证逻辑的灵活性:ERC-4337 标准允许自定义签名和 nonce 验证机制,提高了验证逻辑的灵活性。这为集成新的签名方案、多签功能和其他自定义验证过程提供了可能,从而提升智能钱包和交易的安全性和多功能性。
- 实现执行层的量子安全性:广泛采用 ERC-4337 标准消除了实现量子安全性所需的执行层修改。用户可以逐个升级他们的钱包到量子安全版本,确保交易安全。此外,对于每个捆绑交易使用哈希保护的外部拥有账户(EOA)增加了额外的量子攻击保护层。
- 钱包可升级性:ERC-4337 允许钱包验证逻辑具有状态,并通过使用 DELEGATECALL 更改钱包的公钥或升级其整个代码。这种可升级性功能提高了智能钱包的灵活性和适应性,便于集成新功能和改进,同时不会影响现有基础架构。
- 执行逻辑的灵活性:使用 ERC-4337,智能钱包能够合并自定义执行逻辑,实现原子多操作,并提高执行步骤的灵活性。这支持复杂的交易序列,便于实现原子性,即多个操作作为单个不可分割的单元执行,提供更复杂的交易功能。
ERC-4337 的风险
- 略微增加的 DoS 漏洞:ERC-4337 中更复杂的验证逻辑可能略微增加拒绝服务(DoS)攻击的风险。增加的复杂性可能提供额外的攻击向量,需要仔细评估和充分测试以减轻潜在漏洞并确保系统的整体安全性。
- Gas 开销:与常规交易相比,ERC-4337 交易可能涉及更多的 Gas 开销,因为该标准提供了更多功能和灵活性。然而,这种额外的 Gas 成本通常可以通过所获得的好处抵消,例如支持多操作或升级钱包,从而在功能和 Gas 效率之间取得平衡。
- 一次只能进行一笔交易:ERC-4337 限制了账户同时排队并发送多个交易到内存池的能力。尽管该标准支持在单个交易中进行原子多操作,但对同时或批量交易的排队限制可能在某些需要同时进行或批量处理交易的用例中存在局限。然而,原子多操作功能在许多情况下减少了对同时交易的需求,降低了该限制的影响。
结论
账户抽象的出现及在以太坊生态系统中实施 ERC-4337 标准标志着区块链技术演进的重要里程碑。
通过账户抽象赋予的智能账户提供了改进的功能、简化的用户体验、增强的安全性和量子安全的密码学。尽管 ERC-4337 并未完全实现账户抽象,但它引入了许多功能,可以极大地改善用户体验,并为大规模采用铺平道路。
值得关注的是,Visa 正在积极通过 ERC-4337 进行账户抽象的实验,在测试网络中整合支付主节点功能,而 Pimlico 最近也在主网络上推出了自己的实现。随着区块链技术的不断发展,ERC-4337 标准在改变用户与区块链的互动方式并推动大规模采用方面具有巨大潜力。
所有评论