当前位置:首页>货币平台

谈以太坊的账户抽象化与ERC-4337

日期:2023-03-18

来源:玫瑰财经网

浏览:

    谈以太坊的账户抽象化与ERC-4337

    以太网广场系统实际上有两种类型的账户。

    一个是由私钥控制的外部帐户(EOA)。例如,我们使用的钱包的账户等账户有自己的余额。所有者可以通过创建和签名交易,从自己的外部帐户发送消息。

    另一个是合同帐户(contract account),由部署在区块链上的代码控制,由存储在智能合同帐户(也称为智能钱包)中的以太网虚拟机代码控制。合同帐户收到信息后,内部代码将处于活动状态,可以读取和写入内部存储

    谈以太坊的账户抽象化与ERC-4337

    ,还可以创建新合同。根据当前的以太网协议,只有外部帐户可以开始交易,只有帐户所有者才能修改帐户状态。

    什么是账户抽象帐户抽象是对上述两个帐户的改进,它模糊了两者之间的界限,变成了包含复杂逻辑的通用帐户,使帐户既具有合同帐户,又具有外部帐户的功能。

    这相当于允许用户根据合同帐户的格式定义外部帐户,用户可以在智能合同钱包中包含逻辑验证。由密钥控制的帐户也可以获得代码支持

    谈以太坊的账户抽象化与ERC-4337

    账户抽象的各种方案一直以来,实现账户抽象都是以太坊开发者社区的愿景。社区也提出了各种方案

    谈以太坊的账户抽象化与ERC-4337

    ,如EIP-86、EIP-2938等。

    EIP-86是帐户抽象的技术准备,定义了新的帐户类型,使用户能够创建基于智能合同的帐户。

    以太坊协议本身需要将所有内容打包到由ECDSA安全外部帐户(EOA)发起的交易中,每个用户操作都需要打包到EOA的交易中,从而产生21000 gas费用。用户是否需要在单独的EOA中ETH支付gas。

    与传统事务相比,EIP-86提议的帐户抽象带来了一种新类型的事务,与发送者相比,该事务必须具有EOA。这种交易破坏了交易散列的唯一性。EIP-86最初计划升级Metropolis阶段,但由于前面提到的问题,开发人员决定暂停从Metropolis引入。

    EIP-2938提供了帐户抽象解决方案,通过更改某些以太网协议,合同帐户可以像外部帐户一样开始交易。但是该方案没有被广泛接受,因为需要在协议层更改以太坊协议。

    后来提出的新协议ERC-4337为了达到与EIP2938相同的效果,提出了不需要更改共识协议的方案。这种更安全的实施方式目前正受到社区的更多关注。

    如何实施ERC-4337ERC-4337不是试图修改协议协议,而是将mempool的功能复制到系统中。

    用户发送包含用户意图、签名和其他数据的用户操作对象。

    用户操作有单独的mempool存储池,与此存储池相关联的节点将执行ERC-4337特定验证,以确保仅接收支付费用的操作。

    矿工或使用Flashbots服务的打包者大量收集这些用户操作,将其打包到单个捆绑事务中,并包含在以太网块中。打包者是否为以太网广场的捆绑交易支付gas收到Fee,并收取每个个人用户工作费用进行补偿。打包者使用成本优先级逻辑选择要包含的UserOperation对象。

    其中,用户操作UserOperation看起来像事务,但它是ABI编码结构,包含以下字段:

    1、发件人:执行任务的钱包;

    2、nonce和signature:传递给钱包验证函数的参数,使钱包能够确认操作。

    3、initCode:如果钱包不存在,则用于创建钱包的初始化代码。

    4、callData:实际执行阶段用于调用钱包的数据。

    每个钱包都是智能合同,必须包含两个功能函数。

    1、validateUserOp,接受UserOperation作为输入。此函数应检查UserOperation的签名和nonce;如果验证成功,则支付费用并增加nonce;如果验证失败,则引发异常。

    2、op执行函数,将calldata分析为钱包执行操作的一个或多个命令。

    ERC-4337带来的变化如果该提案得到普遍采纳,签名验证将发送到以太网系列虚拟机(EVM),validateUserOp函数将添加随机签名和随机数验证逻辑,使验证逻辑更加灵活。

    这样,在签署交易时就可以使用新的密码学工具,钱包也可以提供以下新功能:

    1、多重签名;

    2、社会恢复;

    3、更高效、更简单的签名算法(如Schnorr、BLS);

    4、量子安全签名算法后(如Lamport、Winter);

    5、可升级钱包。

    该方案还打开了多种其他交易许可管理,包括通过智能合同支付gas费用。

    目前,外部钱包只能通过钱包的ETH支付在以太坊互动的GASPI。如果你钱包里只有ERC-20 Token,没有ETH,你就不能转出这些Token。编辑包含pubkey nonce (~5000)的存储插槽

    (2)用户操作调用数据成本(约4500,通过压缩减少到约2500);

    (3)ecrecover(~ 3000);

    (4)首次访问钱包本身(~2600)

    (5)收款人账户的首次访问(~2600)

    (6)将ETH转入收款人账户(~9000)

    (7)编辑存储以支付成本(~5000)

    (8)访问包含agent(~ 2100)的存储插槽,然后访问agent本身(~ 2600)。

    2、除上述存储读/写成本外,合同还需要使用gas来支付“业务逻辑”(UserOperation解压缩、散列、洗牌变量等)3、日志费用(EOA不发布日志)。4、一次性合同生成费用(2000 gas,设置约32000 gas代理的每个code byte 200 gas代理地址)简单来说,账户抽象地址的每个阶段都需要计算,需要消耗更多的资源,增加额外的费用。

    幸运的是,这并非无解。

    Rollup善于压缩数据,因此数据与复杂的帐户抽象方案自然地协调在一起。

    Vitalik的最新提案建议通过第2层处理帐户抽象产生的数据。改进之处在于,将只能按阶段完成的功能打包成批交易,同时使用SNARK技术确保交易的有效性。

    结语主要致力于在以太中重点发展Layer 2的格局,现在Vitalik关于以太坊升级的后续计划开始转向账户抽象。最近的提案列出了rollup账户抽象的技术途径。每个Rollup供应商也发布了兼容帐户抽象的新版本。

    今年6月,zkSync发布了V2更新信息,添加了“帐户抽象”功能,提高了与以太网房间EVM的兼容性。10月份,ERC-4337发布了一个新版本,增加了签名聚合功能,包括BLS签名算法。通过签名聚合,创建者和批处理提交者也可以聚合签名(如BLS、SNARKs),从而大大减少链中的数据,降低rollups的数据成本。

    我们有理由相信,账户抽象引起的变化也隐含着生态爆炸的可能性。随着Rollup的发展,可以与Rollup结合的账户抽象肯定能开发出更优秀、更完善的方案。

    单击下载

    European Exchange金融投资European Exchange(也称为Eurokx)是世界领先的数字资产交易所,为全球用户提供比特币、莱特货币、以太网货币等数字资产的现货和衍生品交易服务,并使用区块链技术为全球交易者提供高级金融服务。这是一个非常古老的数字货币交易平台,平台为我们提供安全、专业的数字货币交易经验,为新手提供完整的流程指导,使其易于启动,通过客服24小时在线回复提供最佳服务

    谈以太坊的账户抽象化与ERC-4337

相关文章阅读

Copyright (c) 2022 玫瑰财经网 版权所有

备案号:冀ICP备17019481号

玫瑰财经网发布此信息的目的在于传播更多信息,与本站立场无关。玫瑰财经网不保证该信息(包含但不限于文字、视频、音频、数据及图表)全部或者部分内容的准确性、真实性、完整性、有效性、及时性、原创性等。
相关信息并未经过本网站证实,不对您构成任何投资建议,据此操作,风险自担。