{"componentChunkName":"component---src-template-article-js","path":"/Eth2/sepolia-merge-announcement","result":{"data":{"strapiArticles":{"title":"Sepolia 合并公告","summary":"Sepolia 公共测试网即将合并，下一个且最后一个合并的公共测试网将是 Goerli。","publishDate":"2022-07-01","author":"Protocol Support Team","authorImg":{"childImageSharp":{"fixed":{"src":"/static/676a537b363780f91da41c1023eece5e/497c6/27a43fb0d1c7551049f0e410daccb5dd.png"}}},"content":"\n<br/>来源 | [Ethereum Foundation Blog](https://blog.ethereum.org/2022/06/30/sepolia-merge-announcement/)\n\n作者 | Protocol Support Team\n\n<br/>\n<br/>\n\n# **Sepolia 合并公告**\n<br/>\n\n\n\n- Sepolia 将是进行合并的三个公共测试网中的第二个\n\n- 当 Sepolia 测试网 PoW 链的总难度超过 **`17,000,000,000,000,000`** 时，网络将过渡到 PoS，预计在接下来几天内发生\n\n- 合并后，Sepolia 将会有一个需要许可的验证者集，就像现有的 PoA 测试网一样。而 Goerli/Prater 测试网将在晚些时候合并，并且会开放验证者集，允许质押者测试 PoW -> PoS 过渡。\n\n<br/>\n\n<br/>\n\n## **背景**\n\n<br/>\n\n\n经过多年的努力以将 PoS 引入以太坊，我们现在已经进入了最后的测试阶段：测试网的部署！\n\n<br/>\n\n随着 Ropesten 已经过渡到 PoS 并且影子分叉也在定期进行，Sepolia 现在也已经为合并做好准备。Sepolia 合并之后，还剩 Goerli/Prater 合并就可以推进主网合并。而其他测试网 (Ropsten、Rinkeby 和 Kiln) 将在合并后逐渐关停，详情请读文章[《Ropsten、Rinkeby 和 Kiln 测试网弃用公告》](https://www.ethereum.cn/Eth2/testnet-deprecation/)。\n\n<br/>\n\n合并在两个方面与以前的以太坊升级不同。首先，节点运行者需要同时更新他们的共识层 (CL) 和执行层 (EL) 客户端，而不是只更新其中之一。其次，升级分两个阶段激活：首先是在信标链的一个 epoch 高度上 (Bellatrix 升级)，然后是在执行层达到[总难度](https://eips.ethereum.org/EIPS/eip-3675#terminal-total-difficulty-vs-block-number)值时激活。\n\n<br/>\n\nSepolia 已经进行了信标链上的 Bellatrix 升级。我们现在公布第二阶段的细节：达到`终结总难度值`。\n\n<br/>\n\n<br/>\n\n## **升级信息**\n\n<br/>\n\n### **时间**\n\n<br/>\n\n\n*合并*分两步进行。从共识层的网络升级开始，由一个 epoch 高度触发。随后是执行层从 PoW -> PoS 的过渡，由一个特定的“总难度”阈值触发，称为终结总难度 (`Terminal Total Difficulty`, `TTD`)。\n\n\n<br/>\n\nOn **June 20, 2022**, at epoch **`100`**, the [Bellatrix](https://github.com/ethereum/consensus-specs/tree/dev/specs/bellatrix) upgrade prepared the Sepolia Beacon Chain for The Merge. At that point, CL clients began listening for a `TTD` value to be hit on the proof-of-work chain.\n\n\n<br/>\n\n**2022 年 6 月 20 日**，在 epoch **`100`**,  [Bellatrix](https://github.com/ethereum/consensus-specs/tree/dev/specs/bellatrix) 升级为 Sepolia 信标链的合并做准备。这时 CL 客户端开始监视 PoW 链的 `TTD` 值被触发。\n\n\n<br/>\n\n因为 PoW 测试网的哈希率非常不稳定， `TTD` 值在刚开始会被设置地非常高：`100000000000000000000000`。按照 Sepolia 目前的哈希率，得花几百年得时间才能达到这个值。\n\n\n<br/>\n\nBellatrix 升级上线后，此次向 PoS 过渡的 `TTD` 值更新为 **`17000000000000000`**。预计在未来几天内达到这个值。达到或超过这个新的 `TTD` 值之后，过渡过程的执行层部分 (代号为 [Paris](https://github.com/ethereum/execution-specs/blob/master/network-upgrades/mainnet-upgrades/paris.md)) 将会启动。再次注意，Sepolia 上的哈希率是出了名的不稳定，所以 \"终结总难度\" 发生的实际时间可能会有波动。\n\n\n<br/>\n\n一旦执行层超过了 `TTD` 值，下一个区块将完全由信标链验证者产生。一旦信标链敲定了这个区块，我们就可以认为合并已经完成了。假设网络条件正常，达到 TTD 值之后的首个区块产生后约 2 个 epoch 或者大概 13 分钟之后，这个区块就会被敲定。\n\n\n<br/>\n\n一个新的 JSON-RPC 区块标签 `finalized` 返回最新的敲定区块，或者如果不存在这样的合并后区块，就会反馈错误。这个标签可用于应用程序检查合并是否已经完成。同样，智能合约可以查询 `DIFFICULTY` 操作码 [(`0x44`)](https://eips.ethereum.org/EIPS/eip-4399#using-264-threshold-to-determine-pos-blocks)，合并后改名为 `PREVRANDAO`，以确定合并是否已经发生。我们建议基础设施提供商除了监测敲定状态之外，还要监测整个网络的稳定性。\n\n<br/>\n\n<br/>\n\n\n### **客户端版本发布**\n\n<br/>\n\n### **共识层**\n\n<br/>\n\n\n- Lighthouse v2.3.2-rc.0\n\n[https://github.com/sigp/lighthouse/releases/tag/v2.3.2-rc.0](https://github.com/sigp/lighthouse/releases/tag/v2.3.2-rc.0)\n\n- Lodestar v0.39.0-rc.2\n\n[https://github.com/ChainSafe/lodestar/releases/tag/v0.39.0-rc.2](https://github.com/ChainSafe/lodestar/releases/tag/v0.39.0-rc.2)\n\n- Prysm v2.1.3-rc.4\n\n[https://github.com/prysmaticlabs/prysm/releases/tag/v2.1.3-rc.4](https://github.com/prysmaticlabs/prysm/releases/tag/v2.1.3-rc.4)\n\n- Nimbus v22.6.1\n\n[https://github.com/status-im/nimbus-eth2/releases/tag/v22.6.1](https://github.com/status-im/nimbus-eth2/releases/tag/v22.6.1)\n\n- Teku v22.6.1\n\n[https://github.com/ConsenSys/teku/releases/tag/22.6.1](https://github.com/ConsenSys/teku/releases/tag/22.6.1)\n\n<br/>\n\n<br/>\n\n### **执行层**\n\n<br/>\n\n- Besu v22.4.3\n\n[https://github.com/hyperledger/besu/releases/tag/22.4.3](https://github.com/hyperledger/besu/releases/tag/22.4.3)\n\n- Erigon v2022.06.06\n\n[https://github.com/ledgerwatch/erigon/releases/tag/v2022.06.06](https://github.com/ledgerwatch/erigon/releases/tag/v2022.06.06)\n\n- go-ethereum (geth) v1.10.20\n\n[https://github.com/ethereum/go-ethereum/releases/tag/v1.10.20](https://github.com/ethereum/go-ethereum/releases/tag/v1.10.20)\n\n- Nethermind v1.13.4\n\n[https://github.com/NethermindEth/nethermind/releases/tag/c](https://github.com/NethermindEth/nethermind/releases/tag/c)\n\n<br/>\n\n<br/>\n\n**Besu 客户端注意事项**：为了与 Sepolia 合并兼容，Besu 用户将需要手动覆盖所要求的 TTD 值。为此，用户需要运行最新的 Besu 客户端版本，截至本文发布为 v[22.4.3](https://github.com/hyperledger/besu/releases/tag/22.4.3)，并按下述步骤操作：\n\n<br/>\n\n- 如果使用 TOML 配置文件，添加以下命令行：`override-genesis-config=[\"terminalTotalDifficulty=17000000000000000\"]`\n\n- 当使用这个客户端启动节点时，添加这个 flag：`-override-genesis-config=\"terminalTotalDifficulty=17000000000000000\"`\n\n<br/>\n\n\n关于覆盖 TTD 值的更多信息可以阅读文章《Ropsten TTD 公告》。\n\n<br/>\n\n**Erigon 客户端注意事项**：为了与 Sepolia 合并兼容，Erigon 用户将需要手动覆盖所要求的 TTD 值。为此，用户需要运行 [2022.06.06-alpha](https://github.com/ledgerwatch/erigon/releases/tag/v2022.06.06) 版本，并且当启动节点时添加这个 flag：`--override.terminaltotaldifficulty=17000000000000000 should be good for Sepolia.`\n\n\n<br/>\n\n<br/>\n\n### **升级规范**\n\n\n<br/>\n\n\n对于合并的共识关键改变在两个地方进行了说明：\n\n<br/>\n\n- 共识层改变，在共识规范库里的 `[bellatrix` 目录](https://github.com/ethereum/consensus-specs/tree/dev/specs/bellatrix) 内做了修改\n\n- 执行层修改，在执行规范库里的 `[Paris` 规范](https://github.com/ethereum/execution-specs/blob/master/network-upgrades/mainnet-upgrades/paris.md) 内做了修改\n\n<br/>\n\n除此之外，另外两个规范涵盖了共识层和执行层客户端如何交互：\n\n<br/>\n\n\n- 引擎 API (在[执行层 api 库](https://github.com/ethereum/execution-apis/tree/main/src/engine)中进行了说明) 用于共识层和执行层之间的通信\n\n- Optimistic Sync (在共识规范库的 `[sync](https://github.com/ethereum/consensus-specs/blob/dev/sync/optimistic.md)` 文件夹中进行了说明) 被共识层用来在执行层客户端同步时导入区块，并从共识层中向执行层提供链头的部分视图。\n\n<br/>\n\n<br/>\n\n## **FAQ常见问题解答**\n\n<br/>\n\n\n### **作为节点运行者，我应该做什么？**\n\n<br/>\n\n\n合并后，一个以太坊全节点将结合一个共识层客户端 (运行 PoS 信标链) 和一个执行层客户端 (管理用户状态和运行与交易相关的计算)。它们通过一个已认证的端口进行通信 (使用一套新的 JSON RPC 方法，称为 [引擎 API](https://github.com/ethereum/execution-apis/tree/main/src/engine))。执行层客户端和共识层客户端使用一个加密 JWT 来验证对方。**节点运行者需要对照他们的客户端文档，了解如何生成和配置这些信息。**\n\n<br/>\n\n换句话说，如果你已经在信标链上运行了一个节点，你现在还需要运行一个执行层客户端。同样地，如果你在当前的 PoW 网络上运行着一个节点，那么你将需要运行一个共识层客户端。为了使它们能够安全地进行通信，必须向每个客户端传递一个 JWT 通证。\n\n<br/>\n\n值得强调的是，虽然信标链节点和验证者客户端都是共识层客户端的一部分，但是运行一个信标链节点和运行一个验证者客户端是不一样的。验证者必须运行两者，而节点运行者只需运行信标链节点。这篇文章更详细地解释了这两个组件之间的区别：[https://docs.ethhub.io/ethereum-roadmap/ethereum-2.0/eth-2.0-client-architecture/](https://docs.ethhub.io/ethereum-roadmap/ethereum-2.0/eth-2.0-client-architecture/)\n\n<br/>\n\n另外，请注意，共识层和执行层都会维护一个独立的对等点集，并公开它自己的 API。 [Beacon](https://github.com/ethereum/beacon-apis) 和 [JSON RPC](https://github.com/ethereum/execution-apis) 的 API 都将按预期继续工作。\n\n<br/>\n\n### **作为质押者，我应该做什么？**\n<br/>\n\nSepolia 的验证者集是需要许可的，所以除非你已经成为 Sepolia 验证者，否则不需要采取任何行动。\n\n<br/>\n\nGoerli/Prater 转向 PoS 的相关事宜将在以后公布，且对所有验证者开放。下文是一些准备工作的说明。同样，现在不需要采取任何行动。\n \n> \n> 如上所述，合并之后，信标链上的验证者除了运行他们的共识层客户端之外，还需要运行一个执行层客户端。我们强烈建议大家在合并前就这样做，但是验证者可以将这些功能外包给第三方提供商。这是有可能的，因为执行层需要的唯一数据就是对存款合约的更新。\n> \n\n\n> \n> 合并后，验证者需要确保他们创建和证明的区块中的交易是有效的。为了做到这一点，每一个信标节点必须与一个执行层的客户端配对。请注意，多个验证者仍然可以与一个信标节点和执行层客户端组合配对。虽然这增加了验证者的责任，但它也使得提议区块的验证者有权获得其相关交易的优先费 (目前这笔费用由矿工获取)。\n> \n\n> \n> 虽然验证者的奖励在信标链上累积，并且要在随后的网络升级才能提出来，但交易费将会继续在执行层支付、销毁以及分配。验证者可以指定任何以太坊地址作为交易费的接收者。\n> \n\n> \n> **在更新你的共识层客户端之后，请确保在设置验证者客户端时设置了 `fee recipient` (费用接收方)，以确保交易费用能够发送到你所控制的地址中。**\n> \n\n> \n> 如果选择了第三方提供商来质押，由你选择的提供商来指定这些费用的分配方式。\n> \n\n> \n> 如果你想在合并后的以太坊上测试运行验证者，在 [Ropsten staking launchpad](https://ropsten.launchpad.ethereum.org/en/) 上有操作说明。\n> \n\n### **作为应用或工具开发商，我应该做什么？**\n\n<br/>\n\n\n如[之前的博文](https://blog.ethereum.org/2021/11/29/how-the-merge-impacts-app-layer/)所述，合并只会对以太坊上部署的合约子集产生非常微弱的影响，应该不会破坏任何合约。 此外，大部分用户的应用程序接口 (API) 端点仍将保持稳定 (除非使用 `eth_getWork` 等工作量证明的特定方法)。\n\n<br/>\n\n尽管如此，以太坊上的大多数应用程序涉及的远不止链上合约。 现在您要确保前端代码、工具、部署管道和其他链下组件能够按预期运行。 我们强烈建议开发者在 Ropsten（或 [Kiln](https://blog.ethereum.org/2022/03/14/kiln-merge-testnet/)）上执行一个完整的测试和部署周期，并向这些项目的维护者报告任何工具或依赖项存在的问题。 如果不确定在哪里创建一个 issue，请使用[此资源库](https://github.com/eth-clients/merge-testnets/)。\n\n<br/>\n\n此外，你需要注意的是，除了 Sepolia 和 Goerli 之外的所有测试网都会在合并后关停。如果你是 Ropsten、Rinkeby 或者 Kiln 测试网的用户，你应该计划迁移到 Goerli 或者 Sepolia 测试网。更详细的信息请阅读文章[《Ropsten、Rinkeby 和 Kiln 测试网弃用公告》](https://www.ethereum.cn/Eth2/testnet-deprecation/)。\n\n<br/>\n\n\n### **作为以太坊用户或 ETH 持有者，我需要做什么？**\n\n<br/>\n\n\n不需要。以太坊主网不受此测试网的影响。 在主网过渡之前，我们将在此博客中发布后续公告。\n\n<br/>\n\n### **作为矿工，我需要做什么？**\n\n<br/>\n\n不需要。如果你在以太坊主网或者 Sepolia 测试网上挖矿，你需要知悉合并后每个网络都将完全在 PoS 共识下运行。届时，在该网络上无法再进行挖矿。\n\n<br/>\n\n预计在接下来的几天之内 Sepolia 就无法挖矿，今年晚些时候主网也不能挖矿了。\n\n<br/>\n\n### **作为验证者，我可以提出我的质押资产吗？**\n<br/>\n\n\n不能。合并是迄今为止以太坊最复杂的升级。为了最大限度减少网络中断的风险，我们采取了最小可行的方法，也就是说在此次升级中，我们将所有与 PoW->PoS 过渡无关的变化先放一边。\n\n<br/>\n\n从信标链上提款的功能可能会在合并后的第一次升级中引入。[共识层](https://github.com/ethereum/consensus-specs/issues/2758)和[执行层](https://eips.ethereum.org/EIPS/eip-489)的规范推动中。\n\n<br/>\n\n\n### **我有更多问题，可以去哪里问？**\n<br/>\n\n\n一个合并社区会议定于 UTC 时间 7 月 15 日。客户端开发者和研究员将回答来自节点运行者、质押者、基础设施和工具提供商以及社区成员的问题。\n\n<br/>\n\n### **什么时候合并？**\n\n<br/>\n\n截至本文发布，以太坊主网合并的日期尚未确定。任何给出合并日期的相关言论都可能是一个骗局。更新内容将发布在以太坊基金会博客中，请关注！\n\n<br/>\n\n假设 Sepolia 合并中不会出现问题，一旦客户端测试完成，以太坊的其他执行层测试网 Goerli 将与共识层测试网 Prater 进行合并。一旦 Goerli/Prater 成功合并并且稳定下来了，将为主网信标链上的 Bellatrix 升级选择一个 epoch 高度，并且设定主网合并的[终结总难度 (TTD) 值](https://eips.ethereum.org/EIPS/eip-3675#terminal-total-difficulty-vs-block-number)。然后，客户端将发布在主网上支持合并的版本。 我们将在此博客以及其他社区平台上宣布相关消息。\n\n<br/>\n\n以上均以未发现问题作为前提。 如果在此过程的任何时间点发现问题，或测试范围被判定不够全面，我们将解决这些问题，然后再继续推进部署进程。\n\n<br/>\n\n只有到这时，才可能估计合并的确切日期。\n\n<br/>\n\n也就是说，我们会快马加鞭🔜。\n\n<br/>\n\n<br/>\n\nECN的翻译工作旨在为中国以太坊社区传递优质资讯和学习资源，文章版权归原作者所有，转载须注明原文出处以及ethereum.cn，若需长期转载，请联系eth@ecn.co进行授权。","content_images":null,"cover":{"childImageSharp":{"resize":{"src":"/static/ae6d57c7aaa6e2c9dfbc7ef7334cff6f/2244e/7c95b65e5cb9ef7267ada3aefbbe17cb.jpg"}}}},"site":{"siteMetadata":{"title":"Ethereum Community Network","description":"以太坊——全球的、开源的去中心化应用平台。DeFi？NFT？游戏？虚拟世界？每一个人都可以成为以太坊的开发者和用户！","author":"@ECN以太坊社区网络","keywords":"以太坊,以太坊中国,Ethereum,以太坊中文","siteLanguage":"zh-CN","siteLocale":"zh-cn","siteUrl":"http://ethereum.cn","twitterUsername":"@EthereumCN"}}},"pageContext":{"id":"Articles_510"}},"staticQueryHashes":["1238767529","2940180826"]}