Hintergrund
Um eine gesunde Peer-Liste aufrechtzuerhalten, werden Knoten auf der Ausführungsschicht von Ethereum automatisch Peers trennen, die nicht die gleiche Upgrade-Sequenz wie sie haben. Auf dem Ethereum-Mainnet bedeutet dies zu prüfen, ob ein Peer bei Block 200.000 auf Frontier Thawing aktualisiert hat, dann bei Block 1.150.000 auf Homestead und so weiter bis hin zum neuesten Upgrade, Grey Glacier, das bei Block 15.050.000 stattfand. EIP-2124 gibt an, wie dies gehandhabt wird. Bei typischen Netzwerk-Upgrades, die durch eine Blockhöhe ausgelöst werden, geschieht dies automatisch, da Knoten die Blockhöhe bevorstehender Upgrades verwenden, um Peers zu filtern.
Für The Merge war dies nicht möglich, da das Upgrade mit a ausgelöst wurde totale Schwierigkeit Wert statt einer Blocknummer. Die Begründung für diese Wahl wird in EIP-3675 erläutert:
Die Verwendung einer vordefinierten Blocknummer für die Hardfork ist in diesem Zusammenhang unsicher, da die Wahl der PoS-Fork während des Übergangs Vorrang hat.
Ein Angreifer kann eine Minderheit der Hash-Leistung verwenden, um einen böswilligen Chain-Fork zu erstellen, der die Blockhöhenanforderung erfüllt. Dann kann der erste PoS-Block böswillig über dem PoW-Block von diesem gegnerischen Fork vorgeschlagen werden, der zum Kopf wird und die Sicherheit des Übergangs untergräbt.
Um das Netzwerk vor diesem Angriffsszenario zu schützen, wird die von der Kette angesammelte Schwierigkeit (Gesamtschwierigkeit) verwendet, um das Upgrade auszulösen.
Um Änderungen am Protokoll während des komplexesten Upgrades seit dem Start zu minimieren, schloss das Design für The Merge die EIP-2124-Kompatibilität aus. Dies bedeutet, dass jetzt ein zusätzliches Upgrade durchgeführt werden muss, um dies hinzuzufügen. Es ist wichtig zu beachten, dass die einzige Änderung, die im Rahmen dieses Upgrades eingeführt wurde, die Angabe einer Blocknummer ist, die Nodes verwenden können, um Peers zu identifizieren, die The Merge durchlaufen haben. Im Rahmen dieses Upgrades werden keine weiteren Funktionen eingeführt oder verworfen.
Upgrade-Informationen
Zeitliche Koordinierung
Dieses Upgrade wird auf Sepolia bei Block durchgeführt 1735371voraussichtlich am 17. August 2022.
Beachten Sie, dass ein ähnliches Upgrade für Goerli und Mainnet angekündigt wird, nachdem diese Netzwerke auf Proof-of-Stake umgestellt wurden.
Ropsten wird nicht aktualisiert, da es jetzt zusammen mit Rinkeby und Kiln als veraltet gilt. In diesem Beitrag finden Sie weitere Einzelheiten zu ihrem Ablaufplan.
Client-Releases
Für dieses Upgrade müssen nur Clients der Ausführungsschicht aktualisiert werden. Knotenbetreiber können ihre aktuelle Konsensschicht-Clientversion während des Übergangs weiterhin auf Sepolia ausführen.
Beachten Sie, dass Client-Releases, die für die Goerli/Prater-Mischung verwendet wurden, alle dieses Upgrade auf Sepolia unterstützen. Mit anderen Worten, wenn Sie bereits eine Version für die Görli/Prater-Mischung heruntergeladen haben, können Sie dieselbe Version für dieses Upgrade auf Sepolia verwenden.
Ausführungsschicht
Upgrade-Spezifikationen
Die Spezifikation für diese Änderung wird als Teil der Paris-Spezifikationen unter verfolgt FORK NÄCHSTES Upgrade Sektion.
FAQ
Was soll ich als Knotenbetreiber tun?
Sie sollten Ihren Ausführungsschicht-Client vor dem 16. August 2022 auf eine der oben aufgeführten Versionen aktualisieren. Ihr Konsensschicht-Client muss nicht aktualisiert werden.
Was muss ich als Staker tun?
Der auf Sepolia eingestellte Validator ist zugelassen. Wenn Sie Teil der aktuellen Sepolia-Validatoren sind, müssen Sie Ihren Ausführungsschicht-Client spätestens am 16. August 2022 auf eine der oben aufgeführten Versionen aktualisieren.
Wenn Sie nicht Teil des aktuellen Sepolia-Validator-Sets sind, müssen Sie zu diesem Zeitpunkt nichts unternehmen.
Goerli/Prater und Mainnet-Validatoren müssen die gleichen Schritte befolgen, wenn dieses Upgrade in diesen Netzwerken angekündigt wird.
Was sollte ich als Anwendungs- oder Werkzeugentwickler tun?
Nichts, es sei denn, Sie betreiben auch einen Knoten. Wenn dies der Fall ist, aktualisieren Sie bitte Ihren Ausführungsschicht-Client vor dem 16. August 2022 auf eine der oben aufgeführten Versionen.
Muss ich als Ethereum-Benutzer oder Ether-Inhaber etwas tun?
Nein. Das Ethereum-Mainnet ist von diesem Upgrade nicht betroffen. Selbst wenn dieses Upgrade auf das Mainnet angewendet wird, sind keine Maßnahmen erforderlich.
Vielen Dank an Justin Chrn für das Original-Titelbild und Tomo Saito für die Änderungen.