占坑,主要分析的4+2+1篇文章
正文
ERC、EIP 和 RIP:ERC 是应用层的 proposal,EIP 是核心层的 proposal,RIP 是专指 Rollup 的proposal
Account Abstraction(简称 AA) 相关的知识是本文要了解的基础,例如 ERC4337 和一些最近的 AA 的文章。
在建设基于 ERC4337 构建 AA 的过程中,发现了许多的问题,不是一个 account 应该或者能够解决的问题,例如 layer1 和 layer2 的同步机制变化和改进,目前同步并不是双向和稳定可依赖的(在高层应用层面);不同 layer2 上的一些合约层面的标准一致性,最明显的就是 factory 合约的支持和计算一致性;在一些算法甚至 EVM 层面的支持,例如对特定加密算法的 verify 支持等;在23年4月和 Vitalik 就一些 AA 问题沟通时,这个感觉就非常明显:我们在做钱包,为啥这么多依赖都要搞,感觉在搞 Layer1,Layer2 的核心共识改进了,这对一个钱包团队来说,难度太大了;而 RIP7560 是可能解决这些问题,提供更稳定,更低成本,更高效的 AA 支持,Native AA 可能是一个合适的解决方案,是 consensus-layer protocol changes。
关于 EIP2938:
EIP-2938 提出的账户抽象化(Account Abstraction, AA)是一个可以让合约账户成为和外部账户一样的「顶层」账户的提案。具体来说,这个方案要求对以太坊协议进行修改,并允许从合约(每个智能合约都有一个合约账户),而不仅仅是外部账户来发起以太坊交易。合约本身将具备验证和矿工需验证的 gas 费用支付逻辑。那么也就是说,实现了账户抽象化之后,合约账户也可以发起交互请求并支付交易费。
本文假设你有 ERC4337 的基础知识背景,可以看这里学习:https://www.erc4337.io/resources 。
提议的人是 Alex Forshtat,4337 团队的作者之一,上来就是合并 2938(顶层账户)和 4337 为 7560。
最核心的一句话:
We propose splitting the Ethereum transaction scope into multiple steps: validations, execution,and post-transaction logic.
我们建议将以太坊交易范围分为多个步骤:验证、执行、和交易后逻辑。
Transaction validity is determined by the result of the validation steps of a transaction.
事务有效性由事务的验证步骤的结果决定。
这些带来的是整体事务复杂度的降低(后面有讨论)
相关变化: