{"content":{"title":"【解读】以太坊上海升级即将激活的四个EIP","body":"以太坊巴黎升级（合并，共识转POS）之后又一重大更新即将到来——上海升级！目前有着上千专业开发者的以太坊核心社区，从15年走来已经历经15次主网升级，而这一次上海升级将为链上锁定着的230亿美金的POS质押ETH提供解锁能力，还伴随有对GAS优化的诸多EIP融入。\r\n\r\n随十四君来深入了解即将主网激活的那些EIP提案的作用、原理、应用方向吧\r\n\r\n\r\n![111.png](https://img.learnblockchain.cn/attachments/2022/11/iMwj89U6636644168cb91.png)\r\n\r\n## 1. 背景\r\n\r\n### 1.1 主网升级是什么？\r\n\r\n以太坊在2015年提出4大阶段：前沿、宅基地、大都会、宁静。众所周知的是”宁静”阶段的标志也正是2个月前以太坊共识算法从POW算力挖矿全面转为POS权利质押挖矿，如今的他是即节能又安全且足够去中心化的首席公链\r\n\r\n每次主网升级其命名都是柏林、巴黎、上海这样的地名，历史上还有多次主网升级带来巨大变革\r\n\r\n### 1.2 回顾2021年8月5日-伦敦升级\r\n\r\n在区块高度 12,965,000，以太坊完成代号为“伦敦”的硬分叉升级，共涉及五项提案\r\n\r\n最有影响的是启动了 EIP-1559，他由以太坊创始人Vitalik·Buterin提出 ，从此以太坊上的每笔交易都将燃烧基本gas费用，这会自动减少ETH的流通供应量，使以太坊代币**从此进入通缩时代**\r\n\r\n举个栗子\r\n\r\nEIP-1559改变了价高者得的Gas fee计算逻辑，之前用户为了让矿工及时打包自己的交易，需要加价支付矿工费，出价越高，被优先打包的概率越大，在一定程度上会造成Gas fee的无限增长\r\n\r\n升级后，交易手续费分成了基础费和小费，小费给矿工激励竞价出块，基础费会销毁。虽然依旧有竞价出块的部分，但矿工收益大约下降20%，而经济模型也转为通缩式\r\n\r\n本质上，1559的设计发挥了**次高价竞价模式（second price auction）的优势**，最终会让同一区块内所有交易支付的价格基本一致，对用户更公平（即因为支付base价格的交易总是会打包的，区分了紧急交易需求和常规交易需求）\r\n\r\n## 2. 上海升级\r\n\r\n### 为何如此急迫？\r\n\r\n在过往，一两年才进行一次重大升级是常事，合并共识转换这样的重量级升级都会提前测试网稳定运行1-2年后才会真正步入主网升级，那为什么这次上海升级如此急迫呢？仅仅2月后就基本定案要囊括的EIP呢？\r\n\r\n核心因素是，合并后以太坊网络上的所有交易将不再由能源密集型的“矿工”验证，而是由已存入或质押大量ETH的个体和组织“验证者”进行验证。那对于验证者而言，他们质押的ETH可以生成和收集新的ETH，这些所谓的“新ETH”就是他们证明验证交易和保护网络的奖励。\r\n\r\n但目前的以太坊，**只能存入ETH但不能提取ETH**，质押总价值接近 235 亿美元，都被“被困”在以太坊网络上。\r\n\r\n如果不尽快开放解除质押功能，则质押ETH的吸引力将大打折扣，后续也就不会有那么多人进入以太坊网络，这无疑会对以太坊的未来发展和网络安全产生巨大影响。\r\n\r\n## 3 详情解读\r\n\r\n![640 (1).png](https://img.learnblockchain.cn/attachments/2022/11/IKf34LsY6366463edd72b.png)\r\n\r\n根据10-28号最新github提交的上海升级记录\r\n\r\n[https://github.com/ethereum/execution-specs/blob/master/network-upgrades/mainnet-upgrades/shanghai.md](https://github.com/ethereum/execution-specs/blob/master/network-upgrades/mainnet-upgrades/shanghai.md)\r\n\r\n### 3.1 EIP-3651：更温暖的 COINBASE\r\n\r\n[https://eips.ethereum.org/EIPS/eip-3651](https://eips.ethereum.org/EIPS/eip-3651)\r\n\r\n**他是什么？**\r\n\r\n这标题的翻译确实很让人迷惑，这里的COINBASE并不是交易所的那家公司，而是来自比特币的概念，即区块中的第一笔交易是笔特殊交易，称为创币交易或者coinbase交易，这种交易早期设计用于矿工打包收集挖矿的gas小费收入。\r\n\r\n温暖的和寒冷的，其实指的是此执行此交易时候是否有预先加载，影响矿工打包coinbase交易的gas费\r\n\r\n- 如果无预先加载，是寒冷的，则gas费更高\r\n- 如果有预先加载，是温暖的，则gas费更低\r\n\r\n**有什么用？**\r\n\r\n现在矿工打包的交易可能可以用作更多用途，比如ERC-4337中用于收集用户签名后，批量实现交易，其次也可以用同类原理来实现多种代币结合逻辑的元交易支付等。\r\n\r\n- 在EIP-3651之前，更激励用ETH的支付方式\r\n- 在EIP-3651之后，更激励用ERC20的支付方式\r\n\r\n**总之，是一个影响激励的交易类型的提案**\r\n\r\n### 3.2 EIP-3855：新增PUSH0 指令\r\n\r\n[https://eips.ethereum.org/EIPS/eip-3855](https://eips.ethereum.org/EIPS/eip-3855)\r\n\r\n**他是什么？**\r\n\r\n对于EVM即以太坊虚拟机（执行合约代码的系统）中，设计有多种指令，但是之前缺少设计了`push0` 即针对0这个数值的压入堆栈的操作指令，\r\n\r\n而此EIP则新增了`PUSH0`( `0x5f`) 指令，它将常量值 0 压入堆栈，该指令的需要 2 gas\r\n\r\n**有什么用？**\r\n\r\n原先没有`push0`时导致的是，有一些依赖于0做偏移量的操作，比如远程call调用与返回，则有很多参数是0，原先要操作0，只能使用指令`PUSH1 0`（即压入一个数字，数字为0），这个操作要消耗3个gas，其次`push1` 和`0`各占一个初始化代码的字节存储，导致的是部署此合约的成本也高了2*200gas\r\n\r\n该EIP还统计了因此的gas损失：在现有帐户中，有 340,557,331 字节浪费在`PUSH1 00`指令上，意味着部署损耗达68,111,466,200 gas\r\n\r\n**总之，是一个降低无意义的GAS消耗的提案**\r\n\r\n### 3.3  EIP-3860：提高初始化代码量限制\r\n\r\n[https://eips.ethereum.org/EIPS/eip-3860](https://eips.ethereum.org/EIPS/eip-3860)\r\n\r\n**他是什么？**\r\n\r\n合约部署时候，有个初始化代码的大小，基于EIP170是限制了initcode大小为24576，而如今则是将 initcode 的最大大小限制提升为 49152即翻倍，并为每 32 字节的 initcode 块应用 2 的额外气体成本\r\n\r\n**有什么用？**\r\n\r\n显然，更大的代码容量，可以让智能合约系统做更多的事情，目前代码仅24kb的规模导致很难用一个合约去实现系统，原先的临时解决方案都是分多个合约部署，然后互相相互调用，但显然跨合约引用是个高gas成本的事情。\r\n\r\n**总之，是一个提高智能合约系统上限以及降低gas消耗的提案**\r\n\r\n### 3.4 EIP-4895：信标链将提款作为操作指令\r\n\r\n[https://eips.ethereum.org/EIPS/eip-4895](https://eips.ethereum.org/EIPS/eip-4895)\r\n\r\n**他是什么？**\r\n\r\n可以说，这是本次上海升级的核心。笔者专门找到原作者对此提案的分享与ppt，可通过”十四君“公众号后台发送”上海升级“获取\r\n\r\n从结果上讲，实现的是质押的ETH提款操作，而实现方式是引入了系统级的指令**`withdrawal`，**基于信标链（共识层）的信息，无条件的直接控制指定地址的ETH余额。\r\n\r\n执行提现操作的方法有很多种，本次的提现操作的特点如下\r\n\r\n- 本身是由系统来发起，而不是用某个用户发起，更简洁易于审查\r\n- 无gas费消耗，系统发起受到共识层提款限额的控制，无需再用gas来做抗dos防护\r\n- 直接更新执行层的余额，无EVM执行过程，采用最简实现策略。\r\n\r\n**有什么用？**\r\n\r\n别忘了，现在还有1400W个，合计价值 235 亿美元的 ETH被质押“困在”以太坊****信标链****里。\r\n\r\n## 4 后续以太坊的重心在哪？\r\n\r\n\r\n下图是近期以太坊创始人[VitalikButerin](https://twitter.com/VitalikButerin)发布的最新路线图，图中绿色部分代表推进的进度，可以看到还有大量围绕性能、安全隐患、隐私、账户体系AA（基于4337）的目标已经找到实现路径，在推行\r\n![Untitled.png](https://img.learnblockchain.cn/attachments/2022/11/aZBTMM6Z636645376c1ee.png)\r\n\r\n欢迎你从后台提交web3行业问题探讨\r\n点赞关注十四，用技术视角带给你价值"},"author":{"user":"https://learnblockchain.cn/people/6626","address":null},"history":null,"timestamp":1667649489,"version":1}