本文详细探讨了账户抽象(Account Abstraction)与元交易(Meta Transactions)之间的区别,强调了账户抽象在用户体验、智能合约适应性和去中心化方面的优势。
Meta Transactions 和 Account Abstraction 是用来改善以太坊用户体验的技术。Meta Transactions 需要更新智能合约,这就是它们逐步被淘汰的原因。
Account Abstraction 旨在抽象化以太坊账户中更多的复杂性,而不仅仅是Gas费。
从技术角度来看,Meta Transactions 和 Account Abstraction 的区别在于消息的结构及其向后兼容性。
Account Abstraction 修复 Web3 - YouTube
在 Meta Transactions 的情况下,行业标准是使用基于 EIP712 的消息,这需要所有智能合约进行升级。
Account Abstraction 标准化了一种特殊的交易格式,称为 UserOperations。
UserOperation 包含了用户意图执行的交易所需的所有信息,包括决定使用哪个 Paymaster、用户愿意支付多少(在自赞助的情况下)及已签名的 UserOperation 的字段。
ERC-4337 Account Abstraction 标准中的Gas抽象部分引入了 Paymasters。
Paymasters 是具有 任意验证逻辑的链上智能合约,可用于定义有效的Gas赞助。同样,这里的不同之处是 执行是在链上。
DAOs、dapps 和其他团队可以部署他们自定义的 Paymasters,具有 ERC-20 Gas支付等功能。
这些自定义的 Paymasters 可以使用 ERC-4337 与现有的 Bundler 服务进行插拔。这与需要提供商采纳的 Meta Transactions 不同。
通过我们的 Gas Manager API 赞助交易
在 Meta Transaction 概念中,Relayers 是由基础设施提供商控制的私钥,而 Account Abstraction Bundlers 是标准化的节点。切换不同的 Bundlers 只需要更改 API 密钥和 API URLs。
Account Abstraction 中没有 MinimalForwarder 的概念,因为赞助验证是在 Paymaster 合约内链上完成的。
与 Meta Transaction 的一种原生交易内部仅有一个交易不同,Bundlers 将多个 UserOperations 打包成一个捆绑(一个原生交易)!
通过我们的 Bundler API 可靠地将 userOps 上链
虽然 Meta Transactions 需要更新所有现有合约来采纳它们,但 Account Abstraction 建立在现有基础设施之上。这意味着所有智能合约默认支持 Account Abstraction,使其成为优于 Meta Transactions 的选择。
在 ERC-4337 下,所有 Bundlers 和 Paymasters 都按照特定标准进行通信。团队甚至可以为他们的应用创建具有条件逻辑的自定义 Paymasters。
专有 Relayers 缺乏一致性;每个 Relayer 对其用例可以有自己的消息格式。这导致需要对智能合约进行更改以与每个不同的 Relayer 兼容。
随着更多提供商提供 Bundler 服务,开发者获得了去中心化其交易流的能力。这也为开发者提供了放弃任何劣质 Bundlers 的机会。
使用 Meta Transactions 时,你还需要使用基础设施提供商的 SDK。这会导致工具锁定,增加迁移 Relayers 的摩擦。
在 Account Abstraction 的情况下,所有标准功能都由所有 SDK 支持,从而允许根据专业知识选择,并根据偏好进行切换!
此外,由于 UserOperation 标准将由每个供应商采纳,构建如 UserOperation Explorer 这样的工具也是可行的。
如果你已经对智能合约进行了更改以支持 Meta Transactions,则迁移过程很简单,可以撤回这些更改。
与 Meta Transactions 不同,msg.sender 和 msg.data 可以直接用于 Account Abstraction。
如果需要自定义的 Paymasters 或账户工厂,它们的开发将成为迁移的下一步。
对于标准实现,我们建议使用经过良好审计、现有的 AA 提供商,以减少开发时间和自身引入的错误。
Alchemy 的 Gas Manager 提供了细粒度控制,如 每地址Gas使用限制、最大赞助的 UserOperations 数量、列入白名单的地址、赞助截止日期、以及域级别的白名单!
Alchemy Gas Manager 的支出规则用户界面
Gas Manager 的用户界面继续
Gas Manager 管理 API 允许以编程方式创建、读取和更新Gas政策。更重要的是,开发者能够获得每个 UserOperation 赞助的精彩可视化仪表板!
Gas Manager 支出仪表板Gas Manager 操作视图
Account Abstraction(ERC-4337)是将无Gas交易纳入你的 dapps 的新方法,具有避免合约级代码更改、无摩擦供应商切换、与其他现有基础设施的可组合性以及更高的去中心化等优势。
- 原文链接: alchemy.com/overviews/43...
- 登链社区 AI 助手,为大家转译优秀英文文章,如有翻译不通的地方,还请包涵~
如果觉得我的文章对您有用,请随意打赏。你的支持将鼓励我继续创作!