# Eth2 进展更新 (截至2022/3/25)

By [EthereumCN](https://paragraph.com/@ethereumcn-2) · 2022-03-29

---

来源 | [What's New in Eth2](https://hackmd.io/@benjaminion/wnie2_220325)

作者 | Ben Edgington

首要推荐
----

👉 [《/r/ethereum 用户应该知道的东西: PoS 特别版》](https://www.reddit.com/r/ethereum/comments/tijcq1/stuff_rethereum_should_know_proof_of_stake_edition/) 👈

[https://www.reddit.com/r/ethereum/comments/tijcq1/stuff\_rethereum\_should\_know\_proof\_of\_stake\_edition/](https://www.reddit.com/r/ethereum/comments/tijcq1/stuff_rethereum_should_know_proof_of_stake_edition/)

信标链
---

上周我们遇到一个小事故 —— 在一个小时左右的时间里，信标链的参与率一度下降了 8%。从我们 (Teku) 的 Discord 讨论区突然热闹起来，还有从查看谁正丢失区块提议中，我们很快便发现这是 Teku 造成的故障。

![在一个小时左右的时间里，信标链的参与率一度下降了 8%](https://storage.googleapis.com/papyrus_images/64e1456aee8914f76538f12135e7239605f8d1b110a2d8fec50d15b8943be7ad.png)

在一个小时左右的时间里，信标链的参与率一度下降了 8%

更详细的说明请阅读我们对于此次事故的[回顾](https://github.com/ConsenSys/teku/wiki/Post-Incident-Review---Deposit-Processing-Performance)。简单总结就是，在这之前的几个小时里，存款合约有一个[质押峰值](https://twitter.com/terencechain/status/1506689244701495297)。根据同意 Eth1 链状态的机制，每七小时左右会将存款分批处理到信标链上。突然包含着 4000 笔质押存款的大型 batch 交易进入信标链，使得 Teku 暴露了其在存款处理上的不足，并产生了一些令人讨厌的连带效应。

值得庆幸的是，这个问题是暂时的。这个 batch 的存款一处理完之后，参与率就恢复正常。此外，没有任何实际的方法可以利用这一点来重复对 Teku 进行 DoS 攻击：4000 笔存款太昂贵了！正如事故回顾文章中所解释那样，我们已经修复了最初的性能问题，并且深入研究了其底层架构，让 Teku 未来更具有弹性。已修复的版本为 [22.3.2](https://github.com/ConsenSys/teku/releases/tag/22.3.2)；如果你还没有更新，请尽快更新。

由于 Teku 是 Eth2 客户端中使用占比较小的客户端 (占比小于 33%)，此次 Teku 故障的广泛影响是极小的。并非所有 Teku 节点都宕机了 —— 勇敢的 Metal Albert 设法全程参与，虽然他也出现一些小故障 —— 但是确实似乎有相当一部分人丢失区块了。不管怎么样，信标链还是吭哧吭哧地运转。如果占比大的客户端出现了故障，后果就严重得多了 —— 会造成相当长的无法敲定的时间。这对每个人来说都是糟糕的，而那些运行多数客户端的人尤其如此，因为他们会受到额外的不作为惩罚 ([inactivity leak](https://eth2book.info/altair/part2/incentives/inactivity))。

为了再次强调客户端多样性的重要性，[Dankrad](https://twitter.com/dankrad/status/1506958509195374598) 最近发布了一篇关于客户端多样性的文章，[详细地探讨了这些问题](https://dankradfeist.de/ethereum/2022/03/24/run-the-majority-client-at-your-own-peril.html)。直截了当地说，“如果你正在运行着 Prysm 客户端，你正面临着一个很真实的风险，你可能会损失所有资金，你应该考虑转换客户端”。

更多关于客户端多样性的内容：

*   [Freddy](https://twitter.com/_crypto_crack/status/1504459918539120643) 创建了一个[金融模型](https://docs.google.com/spreadsheets/d/12R8wkuv62hZyajrhhlkNrskkwH2-zjYZjXKkHJuxGQc/edit#gid=1446351392)，允许质押者量化运行多数客户端的风险。
    
*   [rated.network](https://twitter.com/ratedw3b/status/1504455865239158785) 更新了他们前端，展示每个节点运营商的客户端分布。
    
*   [The Vans](https://twitter.com/EthereumAustin/status/1504858224704561155) 上周在 ETH Austin 聚在一起讨论客户端多样性。我试图找到这场讨论的录音，但没有找到 —— 如果你找到的话请联系我。
    
*   [Dappnode](https://twitter.com/DAppNode/status/1504809228271296512) 也在尽其所能推进客户端多样性。他们现在在 Prater 测试网已支持三个客户端了，很快也会加上 Nimbus。大家已经期待已久了。测试顺利之后很快就会上线主网了。
    

关于其他信标链的新闻，我们即将迎来一个重要的技术里程碑。正如[大家所知道的](https://eth2book.info/altair/part3/config/configuration#min_per_epoch_churn_limit)，验证者激活和退出已被限制在 4 个验证者/epoch，900 个验证者/天。一旦活跃验证者数达到 327,680 名，这个限制就会提高到 5 个验证者/epoch，1,125 个验证者/天。这听起来可能没什么大不了的，但它实际上是信标链运作的一个重大变化。我们应该在下周的某个时候达到这个里程碑。

合并
--

### Kiln 测试网

备受期待的 Kiln 合并公共测试网于 3 月 14 日[宣布发布](https://blog.ethereum.org/2022/03/14/kiln-merge-testnet/) ([中文版](https://www.ethereum.cn/Eth2/kiln-merge-testnet))。登录页面：[https://kiln.themerge.dev/](https://kiln.themerge.dev/)

Kiln 合并事件在北京时间 3 月 15 日 23 时后不久发生。此次合并事件是成功的，尽管它只是刚好合格。合并后的链持续运行，交易和敲定都正常进行了。

然而，还是有一些问题。这些问题在最新一场核心开发者会议中[有讨论过](https://twitter.com/TimBeiko/status/1504915167372472323)，但总的来说：

*   Prysm 在它自己和执行层之间存在字节序 (endianness) 上的分歧，使其不能产生有效的区块。由于 Kiln 被设置成一个 Eth2 客户端分布比较平均的网络，这没有造成很大的影响。当然，如果模拟当前信标链上的客户端分布，这将是一个很严重的网络故障。Prysm 发布的[事件回顾](https://hackmd.io/@prysmaticlabs/HyZqgTA-c)。
    
*   Nethermind 有一些节点宕机了。
    
*   Erigon 也出现一些字节序上的问题。
    

本次测试中，我们得到了一些教训，知道我们在合并时应该要监控什么。更多客户端参与进来使得我们比平时更难弄清到底发生了什么。而且 (已经不是一次两次了) 区块浏览器在整个过程中都是不可用的。

目前的计划是让 Kiln 作为公共测试网继续运行，我们鼓励大家给 Kiln 一个锻炼的机会。似乎 Tenderly、Lido 和 Uniswap 都已经[加入测试了](https://twitter.com/TimBeiko/status/1506025076449107970) —— 如果你想确保你的东西在合并后也能完美地运作，那么现在是时候在 Kiln 上测试了。

Danny 在文章 [Finalized no. 34](https://blog.ethereum.org/2022/03/23/finalized-no-34/) 中给出了更多测试合并的信息，并邀请大家加入测试。

### **Kiln 测试网指南**

*   [如何在 Kiln 上运行节点](https://notes.ethereum.org/@launchpad/kiln)
    
*   [在 Kiln 上的 Lodestar 设置指南🔥🧱](https://hackmd.io/@philknows/By5qahdZc)
    
*   使用 [EthereumJS](https://twitter.com/EFJavaScript/status/1507313725996425253) 和 Lodestar 的设置指南
    

还有[上期](https://hackmd.io/@benjaminion/wnie2_220311#Testing-the-Merge)也列出的一些清单。

### 开发者测试网-6 和影子分叉

随着 Kiln 的推出和运行，测试工作只会更加紧张。另一个短暂运行的开发者测试网 (No.6) 将于下周上线。

比开发者测试网更有意思的是影子分叉。也就是说，将某个现有网络的状态映射到合并后的 PoS 网络中。这意味着真实的网络在发生交易时，这些交易会重放到影子网络上。Goerli 网络今天被进行了影子分叉，并且会计划每隔几周重复一次。(由于交易排序的问题，这两个网络逐渐失去同步性，所以影子网络需要每隔一段时间重新初始化以获得最大的效用。)

如果 devnet-6 和 Goerli 的影子分叉都运行良好，那么我们打算在两周后对以太坊主网进行影子分叉。最终会每晚进行一个影子分叉，选择不同的多数客户端，以放大任何潜伏的问题。

在那之后，将现有的测试网迁移到 PoS 网络上的开发就有望了。大家可以在 [wenmerge.com](https://wenmerge.com/) 网站上关注合并进度。(大家不要太在意倒计时。我们主要不是受难度炸弹的驱使推进合并，也不会仅仅为了这个目的而赶工。但是不管怎样，它绝对是我们做出决定的其中一个影响因素)。

### Pandas 🐼

现在看来，用 ASCII 为合并事件实现一个类似横幅一样的东西很有意义 (谢谢 [Greg](https://twitter.com/gregthegreek/status/1503772426164920327)!) [Prysm](https://twitter.com/terencechain/status/1506346434370494465) 和 [Lighthouse](https://twitter.com/EthDreamer/status/1506372002512314376) 都做了。如果有人想给 Teku 也做一个类似的东西，我们为此发布了一个 [open issue](https://github.com/ConsenSys/teku/issues/5231)，欢迎提交！

合并之后
----

合并之后的首次网络升级包括两大主题 (执行层的升级暂命名为上海升级，共识层的升级暂命名为 Capella)：验证者余额提款以及所谓的 blob 类型交易。

正如之前所提到的，目前有一个验证者提款[元规范](https://notes.ethereum.org/@ralexstokes/Skp1mPSb9)作为执行层和共识层进行变化的保护伞。共识层的升级现在有三项 EIP 在讨论中：

*   [PR-2836](https://github.com/ethereum/consensus-specs/pull/2836) 是推式提款的基础，即从信标链到执行层。
    
    *   据我所知，这将要求拥有旧式 BLS 提款凭证 (`0x00` 前缀) 的人在可以提款前将凭证更新为 `0x01`。虽然有一个 [open issue](https://github.com/ethereum/consensus-specs/issues/2213)，但到目前为止我还没看到进行这种更新的机制。
        
*   [PR-2854](https://github.com/ethereum/consensus-specs/pull/2854) 只是一个管理上的更新，以表明上述机制不会触发 EVM 执行。它只是简单地更新了 Eth1 的账户余额。
    
*   [PR-2862](https://github.com/ethereum/consensus-specs/pull/2862) 提议了一个机制，让超过 32 个 ETH 余额的账户进行部分提款
    
    *   这将自动循环地从验证者余额里提出多余的部分，并以 256 个验证者/epoch 的速度将这些多余的部分转到关联的 Eth1 账户中。根据目前的验证者数，相当于每个验证者每六天轮一次。频率设置成这样的[理由](https://github.com/ethereum/consensus-specs/pull/2862#issuecomment-1079075127)。
        

在执行层与这些变化相对应的是 [EIP-4895](https://eips.ethereum.org/EIPS/eip-4895)。好消息是，无论是全额提款还是部分提款，提款至你的 Eth1 账户是不需要 gas 成本的。

至于 blob 交易类型提案 [EIP-4844](https://eips.ethereum.org/EIPS/eip-4844)，它现在甚至有自己的[网站](https://www.eip4844.com/)了。这个网站包括 Vitalik 的文章 [Proto-Danksharding FAQ](https://notes.ethereum.org/@vbuterin/proto_danksharding_faq) ([中文版](https://www.ethereum.cn/Eth2/proto-danksharding-faq))。对的，proto-danksharding 现在是它的新命名了。

**质押**
------

释义性文章
-----

我一开头就放了这篇文章的链接了，[《/r/ethereum 用户应该知道的东西: PoS 特别版》](https://www.reddit.com/r/ethereum/comments/tijcq1/stuff_rethereum_should_know_proof_of_stake_edition/) 真是宝藏。它准确地阐述了事实，很好地反击了那些不准确的报道。

Tim Beiko 和 Pooja Ranjan 一起参加了 Enterprise Ethereum Alliance 的[每月科普会议](https://www.youtube.com/watch?v=LdAlzFPaJpQ)，对合并及合并后进行了讨论。

另一个来自 [Jacek](https://twitter.com/jcksie/status/1504392762342395905) 的特别内容，这个是关于 Nimbus 如何通过重新处理区块历史 DAG 的存储来降低内存消耗。

我们上次提到，Guillaume Ballet 正致力于在以太坊中实现 Verkle trees 的测试，作为向无状态客户端推进的一步。他发布了一条[推特长文](https://twitter.com/gballet/status/1504390290144169992)，详尽解释了无状态以太坊和 Verkle tree 会对以太坊的区块格式造成什么影响。

然后我终于完成了 Eth2 book 中关于 [BLS 签名](https://eth2book.info/altair/part2/building_blocks/signatures)这章的的第一节。接下来我将着手些随机性和信标链的 RANDAO 如何运作的内容。

媒体和其他
-----

Bankless 的文章[《不要在合并过程睡着了》](https://newsletter.banklesshq.com/p/dont-sleep-on-the-merge-lite)：“为什么合并将在 6 月发生，这对 ETH 资产意味着什么。” (这是 Bankless 的看法。他们有着无限乐观的精神。我的忠告是，如果你听到的日期估计不是 Danny Ryan 亲口说的，那都要半信半疑了。如果你需要一些悲观信息中和一下，可以看看 [Alexey 写的](https://twitter.com/realLedgerwatch/status/1507378186149105681)。)

Tim Beiko 做客 Matt Leising 的播客 “[DeCent People Podcast](https://www.decential.io/features/yko0vbue75yxv9l8354u24z6ym9d2i)” 谈论 ETH2.0 的进展。我喜欢这个标题，还没有听，但我一定找时间听一下。Matt Leising 写了 ["Out of the Ether"](https://www.amazon.co.uk/Out-Ether-Amazing-Ethereum-Destroyed/dp/1119602939) 这本很棒的书。

如果你想通过书面的形式了解 Tim，可以看看 [CryptoStaker 的采访](https://cryptostaker.com/tim-beiko-interview/)。

研究
--

MEV 仍然是推动以太坊架构未来可能性的一个重要因素。对于目前的发展方向，社区有一些[明显的担忧](https://ethresear.ch/t/block-builder-centralization/12135?u=benjaminion)，我一直都很开心能够看到可替代的方案被提出来。[Shutterized 信标链](https://ethresear.ch/t/shutterized-beacon-chain/12249?u=benjaminion)就是这样一种替代方案，它描述了一种在以太坊区块内处理加密交易的机制。

常规会议
----

### 实现者会议

第 84 次会议在 3 月 24 日进行。

*   [会议议程](https://github.com/ethereum/pm/issues/501)
    
*   [会议视频](https://www.youtube.com/watch?v=ThoT6-eLTN0&t=317s)
    
*   我的[速记](https://hackmd.io/@benjaminion/SybzPe5f5)
    

### 核心开发者会议

第 134 次会议在 3 月 18 日进行。

*   [会议议程](https://github.com/ethereum/pm/issues/492)
    
*   [会议视频](https://www.youtube.com/watch?v=Lbsjw-lzMIw)
    
*   Tim Beiko 的[推特笔记](https://twitter.com/TimBeiko/status/1504913092420931584)
    

话题：Kiln 发布回顾；确定了一些 JSON RPC flag (“finalized”、“safe” 和 “latest”)；信标链提款；proto-danksharding (EIP-4844)；协调执行层和共识层的 EIP 进程。

活动预告
----

*   3 月 28 日，周一：Justin Drake 和 Lyn Alden 在 [Bankless 的 podcast](https://twitter.com/BanklessHQ/status/1504202580842319872) 上辩论 “PoW vs PoS”。肯定会很精彩。
    
*   4 月 21 日，周四：EthStaker 将在阿姆斯特丹的 DevConnect 上举办[黑客松](https://ethstaker.cc/ethstaker-devconnect-2022/)。奖金有一万美元。你可能会在那看到我哦。
    

其他新闻
----

*   最新的 [Ethereum Pools](https://twitter.com/EthereumPools/status/1506329386357772290) 更新。他们发现了我们的 Teku 问题，所以他们肯定没有在监控时睡着。
    
*   [Stereum 更新 4](https://twitter.com/stereumdev/status/1506000129450549269)，话题：“我们的 UI 开发进度和一些更新和维护挑战的数据。”
    

ECN的翻译工作旨在为中国以太坊社区传递优质资讯和学习资源，文章版权归原作者所有，转载须注明原文出处以及ethereum.cn，若需长期转载，请联系[eth@ecn.co](mailto:eth@ecn.co)进行授权。

---

*Originally published on [EthereumCN](https://paragraph.com/@ethereumcn-2/eth2-2022-3-25)*
