免责声明:本文旨在传递更多市场信息,不构成任何投资建议。文章仅代表作者观点,不代表火星金融官方立场。
边肖:记得要注意
来源:ETH中文网
11月,以太琴基金会的Tim Beiko发表了主题为《理解转换到权益证明的过程》的演讲。在这次分享中,他回顾整理了2021年的以太网主网。
2000年分别进行了四次硬叉,总结了哪些方面的改进;本文梳理了Ethereum 2.0路线图的演进过程,并解释了为什么目前使用rollup
以中心为中心,采用可执行信标链架构;详细分析了合并后的以太网架构和过渡过程。最后,回顾了客户团队探索2021年合并实施和测试的过程,并说明了当前的进展和未来的实施计划。
这篇演讲非常适合作为一年来以太馆主网的总结。ECN特此翻译本视频的演讲部分,并附上相关文章资源作为补充和索引,方便读者查阅和整理。
2021 年以太坊的四次硬分叉
柏林升级 (四月)
包括EIP:
EIP-2565:模幂运算 Gas 开销 (ModExp Gas Cost)
重新定价EIP-198(大模幂运算),它之前被引入模幂运算预编译模块,使我们能够引入许多需要模幂运算的密码算法,例如RSA。
签名验证。EIP-2565建议减少模块ModeXP (0x00)的气体开销.05)类似于其他操作。
EIP-2718:类型化的交易信封 (Typed Transaction Envelop)
该提案引入了一种新的交易类型,即交易信封,可以更容易地支持多种交易类型。当Ethereum第一次进入主网络时,只有一种类型的事务带有字段“To”(指定事务将被发送到的目的地)。
以及“数据”(任何数据都包含在事务中),这使得Ethereum客户端有必要保持同步,并在完全相同的时间进行相同的更改。后来,随着交易类型的变化,在伪龙
EIP-155(简单防止重放攻击)包含在(假龙)硬叉中,它允许客户端对字段有不同的解释。EIP-2718无法解决由
EIP-155引入的复杂性可以防止将来引入进一步的复杂性,从而更容易加入新的事务类型,如EIP-1559事务。
EIP-2929:提高状态访问操作码的 Gas 开销 (Gas cost increases for state access opcodes)
当第一次调用SLOAD、CALL、BALANCE、EXT和SELFEDESTRUCT时,这个EIP改进了交易的气体。
费用。但值得注意的是,对于每个地址或时隙,这样高的开销只发生在第一次触发时,后续调用每次只消耗100 gas。改善这些气体
该开销一方面可以解决Ethereum协议中仍然保留的最大DoS攻击向量的影响,另一方面可以为将来无状态Ethereum的实现限制见证数据的大小。
EIP-2930:可选的访问列表 (Optional access lists)
这一建议的目的是纠正EIP-2929对现有合同造成的损害,缓解天然气成本增加造成的问题。该提案添加了一个新的交易类型,其中包含交易计划将访问的访问列表。
(内容是地址和存储密钥)。通过指定访问列表,客户端可以更容易地处理事务,并且可以安全地减少气体消耗。
相关阅读:
《柏林硬分叉后的 gas 成本》
《以太坊柏林升级公告》
伦敦升级 (八月)
包括EIP:
EIP-1559: Eth1.0 费用市场变更 (Fee market change for ETH1.0 chain)
EIP-1559是以太琴历史上最令人期待的变化之一,也是EIP带来了伦敦升级中最大的变化。这个EIP将在网络块中引入“基本费用”。
跟踪气体的(basefee)'。
价格,来自基于网络将接受的块空间需求的交易。这意味着钱包和用户将能够更容易地预测他们交易的价格。此外,EIP-1559
增加了新的交易类型,用户可以在投入这个最大金额时指定自己愿意支付的最大金额。
限额费用发送给矿工时,会获得最高限额费用减去基本费用与矿工小费之和的差值退款。最后,这份
EIP 还将导致部分交易费被烧毁,这一点被社区的大部分人认为是以太坊网络经济上的一个重要改善举措。
EIP-3198: BASEFEE 操作码 (BASEFEE opcode)
这份 EIP 是与 EIP-1559 搭配的。它只是简单添加了一个 BASEFEE
操作码,它返回的是执行交易所在的区块的基本费用。这将使得智能合约可以在链上访问这个值,这有助于提交欺诈证明和创建去信任的 gas 价格衍生品。
EIP-3529: 减少 gas 返还 (Reduction in refunds)
在伦敦引入的另一个重大变更是取消了操作码SELFDESTRUCT 的 gas 返还和减少了操作码 SSTORE 的 gas
返还。虽然设立返还的初衷是希望激励开发者在可能的情况下清除状态,然而现实是,这导致了Gas Token的出现,反而增加了状态大小。利用这些返还的
gas,Gas Token 可以在 gas 价格很低的时候填满状态,然后在 gas 价格上升的时候获得执行这些交易的返还。此外,gas
返还还会导致区块执行时间的变化。EIP-3529 把"执行 gas 返还"从 50% 下调到最多 20%。这一变更将有助于抵消由 EIP-1559
引入的额外区块大小变化,因为 EIP-1559 允许区块使用的 gas 是现在 gas limit 的两倍。
EIP-3541: 拒绝以 0xEF 字节开头的新地址 (Reject new contracts starting with the 0xEF
byte)
这份 EIP 将使得伦敦升级后,以 0xEF 字节开头的新合约就无法部署,它们会被保留下来以后作为识别符合 EIP-3540 语义的方式。EIP-3540
提出的 EVM 对象格式 (EVM Object Format, EOF) 是一种可扩展和版本化的 EVM
字节码容器格式,会在部署时进行一次性验证。因此,EIP-3541 是为以后更广泛的 EVM 改良奠定基础。
EIP-3554: 难度炸弹延迟至2021年12月 1 日 (Difficulty Bomb Delay to December 1st
2021)
EIP-3554
延迟难度炸弹,也以冰河时代为人所知。难度炸弹或冰河时代是以太坊引入的一种机制,在网络过渡到权益证明时”冻结“挖矿。由于权益证明的过渡还未准备好,我们需要推迟炸弹的”爆炸“时间。这在过去已经进行过三次:在大都会(EIP-649)、君士坦丁堡
(EIP-1234) 和穆尔冰川 (EIP-2384)。
相关阅读:
《伦敦升级概览》
《伦敦主网升级公告及相关代码变更》
《为什么需要 1559》
《为什么我认为 EIP-1559 的区块容量变化无须担心》
《MEV 与 EIP-1559》
《从 MEV 视角分析 EIP-1559 下的交易打包市场》
《以太坊伦敦升级完成时 (第 37 期以太七日谈)》
《EIP-3529:减少 GAS 返还》
信标链 Altair 升级 (十月)
Altair 是信标链的一次升级,它新增的功能包括:
* 支持轻客户端的同步委员会
* 为了减少规范复杂性的激励计算改革
* 修改证明奖励,以提高激励兼容性
* 单独核算每个验证者的怠工惩罚
* 惩罚参数更新为原定的惩罚水平
相关阅读:
《Altair 主网升级公告》
《建模分析 Altair 升级的影响》
《Finalized no.24》
《Altair 升级讲解 (第 30 期以太七日谈)》
各期的《共识层进展更新》
Arrow Glacier 升级 (十二月)
Arrow Glacier 是另一个类似于 Muir Glacier 的网络升级。它将只包括一份
EIP――把难度炸弹推迟到明年夏天,以防区块链冻结,即“冰河时代 (ice age)"。
以太坊 2.0 路线图演变过程
在 2018 年台北的一次研讨会上,以太坊的核心开发者做出了一个分三个阶段的以太坊 2.0 路线图,每个阶段交付的内容是:
* 阶段 0 将带来信标链
* 在阶段 1,会加入数据分片
* 在阶段 2,在每个分片加入虚拟机,以在系统里实现计算。
到了 2020 年末,在信标链快可以启动之前,尽管阶段 1 的工作进展顺利,但将在阶段 1 引入的分片上实现计算功能的阶段 2
仍然有很多未解决的问题。同时,rollup (即二层的扩容方案)
方面正发生非常快速的进展。多个团队公布要上测试网,且取得令人鼓舞的早期成果。大约在这个时候,Vitalik 在 Ethereum Magicians
论坛上发表了长文,论述我们应该把短期和中期的扩容工作集中在 rollup 上。它们不仅会在阶段 2 完成前上主网,还会是阶段 1 的最大受益者。
同年 11 月,Mikhail Kalinin 发表的《可执行信标链 (Executable Beacon
Chain)》,提出了目前的合并架构,带出了几点洞见:
* 信标链已经启动了,现在可以作为共识引擎来使用;
* Rollup 是扩展计算的最佳短期解决方案;
* 当前的 Eth1 客户端是作为合并后执行层的最佳基础;
* 搬到权益证明可以通过对当前运行的应用影响最小的方式实现
在文章里,Mikhail 提议直接把权益证明作为客户端使用的新共识算法。
合并后的架构与合并过程
概括来说,合并后,客户端将从根据 PoW 链转为根据 PoS 链来决定以太坊的最新有效区块。此外,客户端大多数的功能,以及更重要的
EVM、它的状态,和它是如何执行交易的,都保持不变。现在的 Eth1 和 Eth2 客户端分别变成以太坊的执行层和共识层 (或叫做引擎)。这意味着 Eth1
或信标链客户端的节点运行者将需要运行堆栈的“另一半”,以拥有一个完整的验证节点。
在合并的过程中,信标节点将监测当前的 PoW 链,当有区块的 Total Difficulty 触达设定的
TERMINAL_TOTAL_DIFFICULTY (终结总难度) 时,该区块就成为最后的 PoW
区块,随后的区块都开始由信标链上的验证者构建和证明。当这个区块在信标链上被最终敲定时,合并就完成了。
实现合并的历程与计划
实现合并的三次标志性事件为:四月进行的 Rayonism 黑客松、十月进行的 Amphora 工作坊,以及十一月开启的 Kintsugi 计划。
为了验证可执行信标链架构的可行性,在长达一个月的 Rayonism 黑客松里,客户端团队进行了原型设计,搭建了测试网
Nocturne,证明了可执行信标链是一个可行的架构。
到了十月,在 Amphora
工作坊活动中,客户端团队再次聚集在一起解决规范上悬而未决的问题。活动最后,客户端团队搭建了一个开发测试网,它跑完了所有客户端组合的转换过程,并对合并后的区块做了最后敲定。
Amphora 活动后,经历了四个短暂的开发测试网,开发者推出了 Kintsugi
测试网计划。在十一月到十二月中旬这段期间,每周开发者会上线一个新的开发测试网,并基于上一个进行改进。在圣诞假期期间,已经上线了一个长期的公共测试网,并鼓励大家参与测试。
目前实现工作已经完成了80%~90%,Arrow Glacier 把难度炸弹推迟到明年六月,也就是说明年六月前更多的是测试工作。