原文作者:Beosin
以太坊上海升级,也被众多媒体称为Web3下一场新的叙事,这也是目前大家讨论最多的一热点。
2023年3月,以太坊将推出预期的上海升级,截止发稿前,本次升级主要包括EIP-3540、EIP-3651、EIP-3670、EIP-3855、EIP-3860、EIP-4895、EIP-4200、EIP-4750以及EIP-5450。而备受瞩目的EIP-4844将推迟到5月至6月进行更新。
图片:Shutterstock
首先,在以太坊生态中,我们经常听到一个词“EIP”,这个词是什么意思呢?
EIP全称是EthereumImprovementProposal。它是一系列以太坊平台上推荐使用的标准和协议的统称。它所包含的具体标准和协议涉及以太坊的核心协议、客户端API、智能合约标准等。每一个EIP包含对某个标准或协议的定义。
我们先来了解以太坊上海升级将涉及的几个标准。
Radiant Capital推出DEV UPDATES,即将上线以太坊主网:7月18日消息,多链借贷协议Radiant Capital推出DEVUPDATES,包含一系列已完成的里程碑、当前的主要任务以及未来规划,其中OpenZ eppelin的审计相关更新已经完成;FE团队正在通过UI/UX优化来加强他们的游戏,同时正在研究应用程序性能;此外Radiant Capital即将上线以太坊主网,目前开发团队正在审查Radiant代码库和UI/UX以实现以太坊主网集成,团队正在为平稳过渡做准备。[2023/7/18 11:01:24]
EIP-3540
该EIP主要是针对EVM对象格式(EOF)合约字节码进行的更新,为EVM引入了一种可扩展和版本控制的容器格式。在合约字节码中添加了代码和数据的标记,实现了代码与数据的分离,这种分离对于链上代码验证器特别有利,因为验证器可以区分代码和数据。
EIP-3651
该EIP主要目的是将「COINBASE」地址由冷地址变为热地址。目前,COINBASE直接交易正变得越来越流行,因为它们允许有条件的支付,这提供了如隐式取消交易等好处。但是访问COINBASE的价格过高,原因是最初在EIP-2929中引入的访问列表框架下COINBASE是按冷地址访问成本来进行gas计算的,而冷地址访问成本相比于热地址访问成本相对较高。
摩根大通表示,美国国会或将以太坊归为“其他类别”:金色财经报道,摩根大通策略师表示,美国立法者或将以太币归入一个新的“其他类别”,以避免将其归类为证券,而是为了保护投资者。以 Nikolaos Panigirtzoglou 为首的摩根大通策略师周四在一份报告中写道,“有可能引入一种新的‘其他类别’,专门针对以太坊和其他加密货币,这些加密货币的去中心化程度足以避免被指定为证券”,“这个‘其他类别’将涉及比目前为大宗商品设想的更多限制和投资者保护,但不如对证券所要求的那样繁重。”[2023/6/16 21:42:42]
EIP-3670
该EIP主要是配合上述EIP-3540合约创建时引入代码验证。拒绝包含截断PUSH数据或未定义指令的合约字节码。
EIP-3855
该EIP主要是增加了PUSH0指令,作用是将常量0压入堆栈。目前只有将1字节到32字节压入堆栈的PUSH1-PUSH32指令,而将常量0压入堆栈,需要使用PUSH10指令进行操作,而该指令在runtime中需要消耗3gas,并且额外需要消耗2字节的存储成本费用2*200gas。目前大约存在11.5%的PUSH指令压入了一个常量0到堆栈,而新增PUSH0指令后,可以节约一定量的gas费用。
以太坊L2网络总锁仓量回落至51.7亿美元:金色财经报道,L2BEAT数据显示,截至目前,以太坊Layer2上总锁仓量为51.7亿美元。近7日跌4.12%,其中锁仓量最高的为扩容方案Arbitrum,约25.6亿美元,占比49.6%。其次是Optimism,锁仓量15.5亿美元,占比30.1%。dYdX占据第三,锁仓量5.05亿美元,占比9.76%。[2022/8/27 12:52:32]
EIP-3860
该EIP主要是对initcode的最大值进行了修改。目前initcode的最大值在之前EIP-170中设置为MAX_CODE_SIZE:24576,在EIP-3860中,新的initcode的最大值为MAX_INITCODE_SIZE=2*MAX_CODE_SIZE=49152。这使得合约大小的最大值扩展了一倍,合约可以拥有更加丰富的功能。但initcode每字节将添加0.0625gas的成本,合约部署gas成本微微上涨。
EIP-4895
金色相对论丨CyberMiles首席科学家:以太坊2.0是一个PoS的跨链生态:在今日举行的金色相对论中,针对“以太坊目前采用的无状态以太坊、多客户端、信标链staking、rollup等技术,给各位印象最深刻、认为最有应用价值的是哪一个?”的提问,CyberMiles首席科学家MichaelYuan发言指出:以太坊2.0是一个PoS的跨链生态。与其它PoS系统相比,它的重大创新在于它的信标链至少要支持上万个验证人节点。系统会随机选择组合验证人形成应用子链。
以太坊2.0一定要有足够的人去stake才能成功(标准是32个ETH,现在是早期参与的好机会)。因为验证人数量一定要很多,才能安全地随机选择验证人验证子链的数据。
尽管都是跨链的思路,但是采用大量节点与大量验证人的,目前只有以太坊一家,Polkadot与Cosmos都不是这种方法。所以以太坊用来管理验证人的技术是创新的,也应该不会用在其他链上。其他的链远远没有这个规模。但是随着开发进度的推进,比如EWASM虚拟机与Solidity智能合约这些技术能够被其他加密网络广泛应用。毕竟纵观整个区块链世界,应用开发的模式都是按照以太坊思路来的。[2020/6/18]
该EIP主要是激活以太坊信标链质押提款的功能。
动态 | 以太坊未确认交易81047笔:据Etherscan.io数据显示,当前以太坊未确认交易数为81047笔。与此前基本持平,以太坊网络拥堵依旧非常严重。[2018/12/14]
EIP-4200
该EIP引入了三个新的EVM静态跳转指令,分别为RJUMP、RJUMPI和RJUMPV,其目的是为了优化网络以及降低成本。目前EVM仅拥有动态跳转机制,这虽然能让字节码非常灵活,但是也同样增加了代码分析的复杂程度。这些静态指令的主要好处是降低了gas成本以及拥有更好的分析属性。
EIP-4750
该EIP主要是对代码的优化。主要是在上述EOF格式(EIP-3540)的基础上引入了在字节码中包含多个代码段的能力,每个代码段所代表的是一个单独的子程序或函数。在字节码中引入了CALLF以及RETF两个新操作码来负责调用和返回这种子程序或函数。此外,该EIP还引入了JUMPF指令来执行跳转到这种子程序或函数的操作。
EIP-5450
该EIP主要是改变了代码的验证过程,对网络进行了优化。目前EVM对每条执行的指令进行大量的有效性检查,例如溢出、gas是否充足等,而该EIP将使得合约在部署时便进行相关验证,从而减少代码在运行的时候进行的此类验证次数。
本次上海升级主要分为以下几个大的类型
1、EVM细节优化
主要有两个细节改进的EIP,分别是:EIP-3651以及EIP-3860。
主要是针对现有的细节问题以及优化体验方面进行的细节改动,其中EIP-3860能够缓解目前智能合约字节码长度限制导致部分复杂的合约必须拆分成多个合约才能够部署到主网的问题,该EIP的引入将会显著增加智能合约功能的丰富性与多样性。
2、信标链提款
主要通过EIP-4895进行实现。
目前,信标链上的ETH质押数量超1500万枚,占以太坊流通总量的近13%,本次升级之后,将开放这超1500万枚以太坊的提取功能。
本次提取功能将采用“推”的方式将款项从共识层推送到执行层,将定义一个分叉时间戳FORK_TIMESTAMP,从该时间戳开始,执行层便要对提款进行处理。共识层会定义一个负载级对象withdrawal,该对象会提供包括:index、validator_index、address以及amount的关键信息,会主动推送到执行层。执行层中也将定义一个新字段withdrawals,该字段保存的是withdrawal对象的列表,执行负载获取到一个withdrawal对象后,添加到withdrawals列表。在经过验证之后,便会对address地址增加amount数量的以太坊,从而实现以太坊的提取。
3、字节码改进
主要有六个字节码相关改进的EIP,分别是:EIP-3540、EIP-3670、EIP-3855、EIP-4200、EIP-4750以及EIP-5450。
这类升级主要是增加部分新字节码指令,包括:PUSH0、RJUMP、RJUMPI、RJUMPV、CALLF、RETF、JUMPF。还对字节码进行了分类,添加字节码的标记用于区分字节码的类型,并对字节码每个类型进行了模块化。另一方面,更新了字节码的验证机制,优化了网络以及使用费用。
这部分升级是本次上海升级的主要内容,将会对以太坊虚拟机系统产生相对较大的影响。Beosin会将本次上海升级中的所有指令同步纳入Beosin-VaaS智能合约代码检测工具中。
以太坊可扩展解决方案是什么?
另一方面,备受瞩目的EIP-4844被推迟到了今年5月至6月进行更新,其功能是引入一种“携带blob的交易”的新交易格式,该格式是为L2数据传输所专门设计出的数据类型。
Rollups是一种扩展解决方案,在短期、中期甚至可能在长期内,该方案是以太坊唯一的去信任扩展解决方案。近期几个月中,L2向L1传输数据的费用一直高居不下,而Rollups很明显的降低了许多以太坊用户的交易费用,其中Optimism和Arbitrum拥有比以太坊基础层本身低3-8倍费用的功能,而ZKrollups甚至拥有比以太坊基础层本身低40-100倍费用的功能。
然而,即使是这样的费用,对于许多用户来说也太贵。长远看,数据分片是解决rollups自身不足的很好的解决方案,可以为使用rollups的链的每个区块增加16MB的专用数据空间。但是,数据分片功能的实施和部署需要漫长的时间才能实现。
该EIP提供了一个解决方案,通过实现“携带blob的交易”这一新的交易类型,该交易类型是为了承载L2的原始交易压缩数据,相当于之前的calldata。由于L2的交易压缩数据上传的目的只是为了供其他人下载验证,所以calldata其实并不需要被L1执行从而产生gas费用。新交易类型blob便不会像calldata那样被EVM读取,其会保留在共识层,并在30天的延迟之后被删除。简单来讲,就是将之前的calldata数据保留到共识层,而不会像之前那样发送到执行层,从而产生高昂的gas费用,也正是Rollup费用能因此降低的原因。
郑重声明: 本文版权归原作者所有, 转载文章仅为传播更多信息之目的, 如作者信息标记有误, 请第一时间联系我们修改或删除, 多谢。