首页 > 区块问答

以太坊官方项目swarm,以太坊上海升级内容

发布时间:2024-06-08 22:15:45
OK欧意app

OK欧意app

欧意交易app是全球排名第一的虚拟货币交易所。

APP下载  官网地址

上海以太坊的升级也被很多媒体称为Web3的下一个新叙事,这也是目前大家讨论的热点。

2023年3月,以太坊将推出期待中的上海升级版。记者发稿前,本次升级主要包括EIP-3540、EIP-3651、EIP-3670、EIP-3855、EIP-3860、EIP-4895、EIP-4200、EIP-4750和EIP。备受瞩目的EIP-4844将推迟到5月至6月。

首先,我们经常在以太坊的生态中听到一个词“EIP”。这个词是什么意思?

EIP的全称是以太坊改进建议。它是以太坊平台上推荐使用的一系列标准和协议的总称。它包含的具体标准和协议涉及以太坊的核心协议、客户端API、智能合约标准等等。每个EIP都包含一个标准或协议的定义。

我们先来了解一下上海以太坊升级会涉及到的几个标准。

EIP-3540

这个EIP主要是为了更新EVM对象格式(e of)的契约字节码,为EVM引入了一个可扩展的、版本控制的容器格式。在契约字节码中加入了代码和数据的标签,实现了代码和数据的分离。这种分离特别有利于链码验证者,因为验证者可以区分代码和数据。(详情请参考https://eips.ethereum.org/EIPS/eip-3540)

EIP-3651

此EIP的主要目的是将“COINBASE”地址从冷地址更改为热地址。目前,COINBASE直接交易越来越受欢迎,因为它们允许有条件支付,提供了隐式取消交易等好处。但是访问COINBASE的代价太高了,因为EIP-2929最初引入的访问列表框架是基于冷地址访问代价的,冷地址访问代价相对于热地址访问代价是比较高的。(详情请参考https://eips.ethereum.org/EIPS/eip-3651)

EIP-3670

EIP主要配合在创建上述EIP-3540合同时引入的代码验证。拒绝包含截断的推送数据或未定义指令的契约字节码。(详情请参考https://eips.ethereum.org/EIPS/eip-3670)

EIP-3855

EIP主要增加了PUSH0指令,用于将常量0推送到堆栈上。目前只有PUSH1-PUSH32指令将1-32字节推入堆栈,常量0被推入堆栈,需要PUSH1 0指令进行操作,而这条指令在运行时需要消耗3 gas,还需要消耗2字节的存储开销2*200 gas。目前约有11.5%的PUSH指令是以常数0推入堆栈的,加入PUSH0指令后可以节省一定的gas开销。(详情请参考https://eips.ethereum.org/EIPS/eip-3855)

EIP-3860

EIP主要修改initcode的最大值。目前,在以前的EIP-170中,initcode的最大值设置为MAX_CODE_SIZE: 24576,在EIP-3860中,新initcode的最大值为MAX _ init CODE _ SIZE = 2 * MAX _ CODE _ SIZE = 49152。这使最大契约大小增加了一倍,契约可以有更多的功能。但是,initcode每字节将增加0.0625 gas,gas的合同部署成本将略有增加。(详情请参考https://eips.ethereum.org/EIPS/eip-3860)

EIP-4895

EIP主要用于激活以太坊信标链的质押提取功能。(详情请参考https://eips.ethereum.org/EIPS/eip-4895)

EIP-4200

EIP引入了三种新的EVM静态跳转指令,即RJUMP、RJUMPI和RJUMPV,目的是优化网络和降低成本。目前EVM只有动态跳转机制,这使得字节码非常灵活,但也增加了代码分析的复杂度。这些静态指令的主要好处是降低gas的成本(在部署和执行期间)并具有更好的分析属性。(详情请参考https://eips.ethereum.org/EIPS/eip-4200)

EIP-4750

EIP主要是优化代码。主要基于上面的EOF格式(EIP-3540),引入了在字节码中包含多个代码段的能力,每个代码段代表一个单独的子程序或函数。字节码中引入了两个新的操作码CALLF和RETF来调用和返回这个子例程或函数。此外,EIP还引入了JUMPF指令来执行跳转到该子程序或函数的操作。(详情请参考https://eips.ethereum.org/EIPS/eip-4750)

EIP-5450

EIP主要改变了代码的验证过程,优化了网络。目前,EVM对每条执行的指令进行大量的有效性检查,比如溢出、气体充足等。,此EIP将允许在部署时验证契约,从而减少代码运行时此类验证的数量。(详情请参考https://eips.ethereum.org/EIPS/eip-5450)

本次上海升级主要分为以下几大类型。

1.EVM细节优化

细节改进的主要有两款EIP:EIP-3651和EIP-3860。

主要是针对存在问题的细节和优化体验的细节。其中,EIP-3860可以缓解由于智能合约的字节码长度限制,一些复杂合约必须拆分成多个合约才能部署到主网的问题。EIP的引入将显著增加智能合约功能的丰富性和多样性。

2.信标链撤回

它主要由EIP-4895来实现。

目前,信标链上的ETH质押数量超过1500万,占以太坊总发行量的近13%。此次升级后,这1500万以太坊的抽取功能将被开启。

这个取款函数会通过“推”的方式把钱从共识层(信标链路)推到执行层(主网),会定义一个FORK_TIMESTAMP。从这个时间戳开始,执行层将处理取款。共识层会定义一个负载级对象,取款,它会提供包括:index(计数器,记录取款次数)、validator_index(验证器数据)、address(取款目标地址)和amount(以太坊数量)在内的关键信息,并会主动推送到执行层。一个新的字段,取款,也将在执行层中定义,它包含一个取款对象的列表。在执行负载获得一个撤销对象后,它将被添加到撤销列表中。验证后会在地址address上加一个量的以太币,从而实现以太币的提取。

3、字节码改进

与字节码相关的改进的EIP主要有六个,分别是:EIP-3540、EIP-3670、EIP-3855、EIP-4200、EIP-4750和EIP-5450。

这种升级主要是增加一些新的字节码指令,包括:PUSH0、RJUMP、RJUMPI、RJUMPV、CALLF、RETF和JUMPF。它还对字节码进行分类,添加字节码标签以区分字节码的类型,并将每种类型的字节码模块化。另一方面更新了字节码的验证机制,优化了网络和使用成本。

这部分升级是上海这次升级的主要内容,会对以太坊虚拟机系统产生比较大的影响。Beovisin会将此次上海升级中的所有指令同步到Beosin-VaaS智能合同代码检测工具中。

以太坊的可扩展解决方案是什么?

另一方面,备受瞩目的EIP-4844被推迟到今年5、6月份,其作用是引入一种新的事务格式“带blob的事务”,这是一种专门为L2数据传输设计的数据类型。

汇总是一种扩展解决方案。短期、中期甚至长期来看,是以太坊不信任的唯一延伸解决方案。最近几个月,从L2到L1的数据传输成本居高不下,Rollups明显降低了很多以太坊用户的交易成本,其中Optimi和Arbitrum具有比以太坊基础层本身成本低3-8倍的功能,而ZK rollups甚至具有比以太坊基础层本身成本低40-100倍的功能。

然而,即使这样的费用对许多用户来说也太贵了。从长远来看,数据碎片化是解决roll up缺点的好办法,使用roll up可以为链的每个块增加16MB的专用数据空空间。然而,实现和部署数据分段功能需要很长时间。

EIP通过实现一种新的事务类型“带blob的事务”来提供解决方案,这种事务类型携带L2的原始事务压缩数据,相当于以前的calldata。由于上传L2的交易压缩数据的目的只是为了让其他人下载验证,因此calldata不需要由L1执行,从而产生气费。新的事务类型blob将不会像calldata一样被EVM读取,而是将保留在共识层中,并在延迟30天后被删除。简单来说,就是把之前的calldata数据保存到共识层,而不是像以前一样发送到执行层,导致gas成本高,这也是为什么Rollup成本可以降低的原因。(详情请参考https://eips.ethereum.org/EIPS/eip-4844)

温馨提示:注:内容来源均采集于互联网,不要轻信任何,后果自负,本站不承担任何责任。若本站收录的信息无意侵犯了贵司版权,请给我们来信,我们会及时处理和回复。

(责编: admin)

免责声明:本文为转载,非本网原创内容,不代表本网观点。其原创性以及文中陈述文字和内容未经本站证实,对本文以及其中全部或者部分内容、文字的真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。

如有疑问请发送邮件至:goldenhorseconnect@gmail.com