5 月 9 日,ECN 成功举办 The Merge & Weeth 系列活动的第一场,邀请了以太坊基金会研究员 Hsiao-Wei Wang 来给大家做主题为“以太坊 PoS 之路”的分享,对 The Merge 的设计、技术实现过程、目前的进程,以及对应用层的影响进行了详细讲解。此外,对社区成员在 discord 上的提问也逐一进行了详细回答。对以太坊合并有疑问但错过了直播的小伙伴,快戳
Casper Proof-of-Stake (0.02:50)
Casper Proof-of-Stake 经过多年更迭,以太坊核心开发者们决定用信标链侧链这种不会影响 PoW 链的方式逐步加入以太坊主网的共识中,实现权益证明。
2020 年 12 月 1 日信标链正式上线。
信标链目前提供的是共识层上的最终确定性,通过randao协议在链上产生psudorandom number,以产生选出验证者。
开发者逐渐找到对使用者影响最小、最简化的合并方式——Eth1 (EL) 和 Eth2 (CL) 的合并。
什么是合并,在技术上如何实现? (0.06:12)
相关链接:
2021 以太坊社区 Meetup (The Merge 重点摘要,by Hsiao-Wei)
Wen Merge? (0.17:27)
协议如何决定何时触发合并?(0.21:07)
第一步:共识层硬分叉 (Bellatrix 升级),转为与 The Merge 兼容的区块内容字段和状态转换逻辑
触发合并的参数值:
- TTD
- Terminal PoW block (终结 PoW 区块)
- Transition Block (过渡区块)
第二步:信标链的区块提议者检查收到的执行层区块
信标链的区块提议者透过 Engine API 取得 payload 并填入至信标链区块中的新字段
对以太坊应用层的影响 (0.27:12)
-
EVM opcodes
- DIFFULTY (0X44) 操作码 (不会再有,改名为
PREVRANDAO
) - BLOCKHASH (0X40) 操作码 (不建议使用 BLOCKHASH 产生的随机数)
- DIFFULTY (0X44) 操作码 (不会再有,改名为
-
出块时间
- 信标链的逻辑中,区块是以“time slot"来编号
- 正常状况下固定为 12 秒/区块
- 少数情况 (<1%) 会有被”跳过“的区块,此时区块时间会拉长
-
最终确定性 (Finality)
PoW 只有几率上的最终确定性,而 PoS 一般情况下最短在 2 个 epoch (~12 分钟) 后可取的。一旦”链finalized",攻击者需要取得2/3以上的验证者票数且付出高额罚金才可改变链上状态。
-
block "head"
在 Kiln 参与合并测试是加速合并的最佳方法 (0.35:36)
kiln.themerge.dev
AMA (0.37:51)
讲义链接: