前言
在?2023.3.1?号丹佛的WalletCon上,官宣由以太坊基金会开发人员设计实现的ERC-4337的核心合约已经通过了OpenZeppelin的审计,通过各项测试,目前审计后的合约已经顺利部署在以太坊主网以及若干测试网,后续可在各?EVM?兼容链上运作包括Polygon、Optimism、Arbitrum、BNBSmartChain、Avalanche和GnosisChain?等。
本文将梳理?4337?标准的实现机制、审计报告结论与最新行业进展
1、账号抽象的背景
1.1、为什么产权分离是账户抽象的目标?
目前在以太坊中有两种账户,分别为外部账户和合约账户。外部账户的所有权和签名权理论上是同一个体单位持有的;简单来讲,持有私钥的人不只拥有这个账户的「所有权」,同时还有权利「签名转移所有资产」。所以当前以太坊上所有权和签名权是一体的,这样的外部账户设计可能会衍伸出一些值得讨论的问题:
私钥难保护:用户失去私钥意味着地失去所有资产。
签名算法少:原生协议在验证交易上只能使用ECDSA签名和验签算法。
签名权限高:无原生多签,单签即可执行任意操作
多币种受限:交易手续费只能通过ETH支付,并不支持批量交易。
交易隐私泄露:一对一交易容易分析账户持有者的隐私信息。
其次单纯的合约钱包也有一定问题:
对合约钱包的操作必须由EOA发起,每笔交易将多消耗21000?Gas。(当前以太坊交易的验证方式是固定的,只有持有了有效的ECDSA签名、Nonce值和足够
以太坊已启动ETH提款测试网:金色财经报道,以太坊新闻周刊创始人Evan Van Ness发推表示,以太坊提款测试网已启动。以太坊基金会成员parithosh评论表示,我们很快就会有一个更公开的测试网供大家提款。[2022/12/26 22:08:07]
的账户余额,一笔交易才算有效)。
需要EOA有足够的ETH来支付Gas,或者依靠Relayer支付Gas。
上诉的约束让普通用户很难使用以太坊:
首先,使用以太坊上的任何应用,用户都必须持有以太
其次,用户需要处理复杂的费用逻辑,Gasprice、Gaslimit、事务阻塞这些概念对用户来说过于复杂。
最后,虽然许多区块链钱包或应用试图通过产品优化提高用户体验,但它们的实际效果甚微。
破局之道在于实现账户抽象,将所有权和签名权解耦,从而才能逐个解决上述问题
拓展阅读:
以太坊账户抽象万字研报:拆解10个相关EIP提案与冲击千万级日活用户瓶颈的七年之路
虽然也有出现若干折中方案,如多签钱包和无需?Gas?的元交易机制,接下来咱们展开探讨。
1.2、EIP-4337?与折中方案对比
1.2.1、折中?1-多签合约钱包方案
多签钱包,即用智能合约实现多签功能的钱包合约账户。以Safe多签钱包为例,可以设定钱包的多签规则,如三人共管、两人签名可执行交易,而?Argent钱包的做法也类似,创新点是引入所谓的监护人机制,对用户更友好,用户可以设定其他EOA账户或邮件/手机作为监护人,监护人可以许可交易、锁定钱包、协助恢复钱包。这样的做法给用户带来了便利,但由于它的钱包软件、钱包合约及后端程序的功能很复杂,它的方案很难成为行业通行的标准做法。
跨链协议Synapse Network已支持以太坊扩容方案Arbitrum:9月22日消息,跨链协议Synapse Network宣布已支持以太坊扩容方案Arbitrum,并且可以实现在数分钟内将ETH从以太坊主网跨链至Arbitrum或从Arbitrum上转回以太坊主网。当用户使用Synapse将ETH从以太坊主网跨链至Arbitrum时,Synapse将在Arbitrum上铸造nETH,并通过nETH和Arbitrum上ETH流动性池兑换为Arbitrum上的ETH实现跨链。用户可通过为该池提供流动性来获得协议手续费收入和SYN代币激励。[2021/9/22 16:58:58]
总之,这里很多的优点都源于合约本身的高度定制能力,同样的缺点则是依赖于?EOA?账户做管理员来驱动,这本质是签名算法的局限性。
相比之下对比传统多签合约钱包的方案,?4337?的优势则是可以自定义签名算法。这里的签名只需和合约中签名的算法绑定的,而签名这件事本身可以有多种算法实现,不同算法性能和交互模式不同,而这将带来的核心变化是,如更好的将签名的功能转入手机设备端实现从而实现便携的硬件钱包。这点主要的挑战是安卓等设备开放性过高,不可能私钥存手机,需要单独的签名芯片等。
1.2.2、折中?2-元交易标准
这点优化折中针对的是用户执行链上行为必须依赖已有?ETH?作为手续费,采用元交易标准后
用户体验上:用户虽然账户中没有ETH,但可仍通过网?界面铸造NFT:用户仅需签即可,我们创建交易、为之代付燃料费、将之提交上链执行。
幕后执行上:
用户对结构化数据进行签名,这个数据与签名是要求NFT合约铸造一个NFT给他
Kraken交易所将向以太坊2.0开源开发团队捐赠25万美元:8月24日消息,Kraken交易所宣布将向开源开发团队捐赠250000美元,这些团队正在努力加速正在进行的以太坊2.0技术升级。Kraken首席执行官兼联合创始人Jesse Powell表示,“我们相信,我们有责任回馈正在构建下一代加密货币的开源创新者。这就是为什么我们很高兴与以太坊基金会合作,以确保开发人员从越来越多样化的利益相关者那里获得资金。”(businesswire)[2021/8/24 22:34:27]
数据与签名被发送给中继器
链下中继器向链上发起交易,送到链上可信的传递者合约(Forwarder)
而?NFT合约是定制的,会将这样方式传递的交易中的原始发起者视为是用户,而非?msg.sender
因此在最终的NFT合约中,执行的?NFTMint?得到的对象就不是原始标准中的交易发起者了
例如最近火热的?Lens?免?gas?方案,就是非常标准的元交易执行模式,已经累计有上千万笔代付交易了
这个方案是有效的,但有两个缺点:
它引入了一个我们必须信任的链下?色中继器。如果他宕机了,或者有作恶的动机,则可能存在?险。
我们最终交互的合约必须定制。这导致而无法与链上已经存在的、未定制的合约进行交互,这大幅减少能够适用的范围。
为什么用这么多篇幅来讲述合约钱包和元交易呢?因为?4337?的实现里本身几乎就能涵盖上述的优点
拓展阅读:
EIP-4337标准智能钱包实践研究报告:全景式呈现4337标准实例实现过程及机遇探讨
Tether在以太坊分两笔共计增发10亿USDT:Tether在ETH链上分2次各增发5亿枚USDT,共增发10亿枚USDT。[2021/4/16 20:29:10]
https://research.web3?caff.com/zh/archives/4660?
2、为什么?4337?可以实现产权分离?
现在在去中心化的领域是不存在免费的信任,身份验证必须基于密码学证明,所以无论哪种提案都是需要管理某种意义的私钥,而要实现体验上的折中,首要打破的就是目前账户权限的过于集中,整体改造方式按针对的对象或者环节可以分成三种大方向:
改造链上交易类型
改造链上主体对象
改造上链交易打包过程
在下图,EIP-4337方案纳入了最新路线图,这也宣告着以太坊最终在这两条路径中做出了决定。
EIP-4337是迄今为止是AA的最佳方案。
被选用的核心原因是EIP-4337完全避免了共识层协议更改,使用标准中提出了新的事务对象?UserOperation,用户将此对象发送到内存池中由?bundlers?从矿工维度批量打包交付合约执行交易事务。是个任何人可以开发链上合约,任何人可以自运行捆绑器的去中心化模式。
2.1、?4337?运作原理
后续深入理解最新进展所面临的难题和挑战还是需要先理解原理,咱们从涉及的角色,分工,对照传统交易的执行流程来梳理。
2.1.1、?4337?标准涉及的角色
ERC-4337有五个主要组成部分:?UserOperation、Bundler、EntryPoint、WalletContract?和?PaymasterContract。
动态 | 以太坊君士坦丁堡硬分叉倒计时:已有1138个全节点支持:1月9日晚,据ethernodes网站提供的数据显示,当前以太坊全网7863个全节点当中,已有1138个节点已更新支持以太坊君士坦丁堡(Constantinople)硬分叉,占比为14.47%。根据计划,以太坊区块链将在第7,080,000个区块激活这次升级,预计将于1月16日附近发生,届时,矿工奖励将从3 ETH 降低至 2 ETH 。[2019/1/9]
UserOperations用户操作对象,是用于与合约账户执行交易的伪交易对象。这些是由创建者的应用程序所创建的。
Bundlers捆绑器,可能是某个矿工,从内存池中打包UserOperations并将它们发送到区块链上的EntryPoint合约的参与者。
EntryPoint入口点合约,是处理交易验证和执行逻辑的智能合约。
WalletContracts是用户最终拥有的链上身份,属于智能合约帐户。
PaymasterContracts是可选的代付智能合约。
2.1.2、?4337?交易的执行流程
我们来重新按完成一笔以太坊转账的流程来梳理下按照ERC-4337实现的交易是怎样的:
打开钱包:用户管理持有的私钥工具,如Metamask,Bitkeep,Bitizen等。
交易签名:用私钥对新的若干字段做签名操作,称之为?UserOperation用户操作对象。
发送交易:称之为Bundlers打包者或是捆绑器,本质仍是由某个负责出块的矿工操作。
矿工打包:bundlers把用户发送的操作签名解析验证后由矿工单独再签名一笔交易来包裹用户的指令,批量地将用户的操作指令转发到某个合约钱包中再由合约来验证用户的签名并执行。
由于交易是矿工签名并发送的,因此from是矿工,原先用户的签名和指令在则在参数之中。
打包发送到作为路由器的智能合约中,执行验证并且进一步转发到各用户独立的合约钱包。
入口点合约验证:EntryPoint?是处理交易验证和执行逻辑的智能合约。会反复和用户的合约账户进行交互以及验证,确保最终链上打包必然成功,否则全部交易都要回退。
出块流程:完全不变。
2.2、功能举例:入口点合约
迁入?4337?后,对任何账户的调度都需要先经过入口点合约,他需要解决的是
如果用户的「钱包合约」尚未部署,则用?UO?中的initCode字段去部署合约
循环验证组合交易中?UserOperation
既有链下模拟验证
也在合约也提供链上验证
管理质押费
计算?gas?成本,既要用于收取用户,也需要面对失败交易补偿捆绑器
3、为什么持续要关注ERC-4337??
ERC-4337的高开发投入以及快速的迭代进度,说明他能快速成为最终提案、并被各种应用广泛接纳、真正成为事实性行业标准,他带来的核心价值是大幅度降低普通用户使用Web3应用的门槛。
届时,一个应用能否兼容ERC-4337?,则将影响自己能否利用整个以太坊生态的其他组件、以快速发展。后续的DApp应用,也将必然需要能兼容从账户主体已然转移向ERC-4337的用户们。
最终验证市场的还是用户本身,实现的方案是复杂的,这也仅仅是对于应用方的复杂
对于用户本身而言,最终他们能够看到的是:
更流畅的交易体验,类似购物车,即使面对?10?个市场也能够一笔交易完成打包。
更安全的接入入口,借助?4337?的自定义签名算法能力,使用手机专属安全芯片而无需携带硬件钱包,
更沉浸的游戏环境,借助?paymaster?的代付能力,乃至可以定义半小时内的不超过?XX?金额的交易免除签名,避免了一场游戏被场外打断。
真正的链上主体,可以被社交恢复,可以更换私钥密码,可以做交易的风险分层分级,兼容安全与使用便捷。
如此种种对终端用户体验的提升,都是最终为什么要如此费力的推进ERC-4337的原因。
上篇更多是围绕?ERC-4337?运作机制、背景进行说明。
下篇详细讲述当前被审计方案的优缺与实施细节,但涉及较多以太坊底层所以阅读难度较高,投稿在Web3?Caff?平台的?research?频道。
阅读原文:https://research.web3?caff.com/zh/archives/6900?
参考文献
https://cointelegraph.com/news/ethereum-erc-4337-smart-accounts-launch-at-walletcon-account-abstraction-is-here
https://blog.openzeppelin.com/eip-4337-ethereum-account-abstraction-incremental-audit/#conclusions
https://blog.openzeppelin.com/eth-foundation-account-abstraction-audit/
https://eips.ethereum.org/EIPS/eip-4337?
https://hackmd.io/@erc?4337/test-suite
https://www.youtube.com/watch??v=eyT?6?WzJmWyc
https://notes.ethereum.org/@yoav/unified-erc-4337-mempool#What-does-censorship-resistance-require-of-ERC-4337?
https://github.com/eth-infinitism/account-abstraction/issues/188?
https://notes.ethereum.org/@yoav/unified-erc-4337-mempool
https://github.com/eth-infinitism/account-abstraction/blob/develop/reports/gas-checker.txt#enroll-beta
公众号:财圈小风?USDC脱锚引发了市场对DeFi未来发展的重大担忧和质疑。由于DeFi生态系统严重依赖USDC,因此评估未来的潜在解决方案至关重要.
1900/1/1 0:00:00今晚,Layer?2?扩容方案?Arbitrum?宣布将于?3?月?23?日向其社区成员空投治理代币?ARB,目前查询链接已经公布:https://arbitrum.foundation/.
1900/1/1 0:00:00Shapella模拟了测试网上的质押解锁功能,退出质押的验证者能全额提款,余额超过32ETH的验证者也能部分提款.
1900/1/1 0:00:00尊敬的唯客用户您好!为了提升服务质量,进一步优化您的交易体验,唯客预计于2023年03月16日06:00-06:30将进行数据库系统之升级优化?;优化升级范围如下:升级时间2023年03月16日.
1900/1/1 0:00:00金色财经报道,根据周三提交给美国证券交易委员会的文件,CathieWood的ArkInvest已经筹集了超过1600万美元的新加密货币基金,该基金分为国内和开曼群岛两个版本.
1900/1/1 0:00:00文章编辑时间:2023.3.17凌晨00:0,文章发布到网站审核有延迟,主要做参考为主,具体以实时策略为主欧洲百年大行瑞士信贷自曝危机,证实2022年净亏损近80亿美元.
1900/1/1 0:00:00