Coin Brief ENDE

EIP-8253 nennt jetzt die 28 Mainnet-Konten, deren Nonce ein Fork anheben würde

Eine Aktualisierung von EIP-8253, am 12. Oktober ins EIPs-Repository gemergt, ergänzt die Mainnet-Prestate-Werte, die der Vorschlag braucht, sowie Genesis- und Devnet-Allokationen, damit Client-Teams ihn am echten Mainnet-Zustand testen können.

Was EIP-8253 tut. Der Entwurf von Jochem Brouwer würde zu Beginn eines festgelegten Fork-Blocks die Nonce auf 1 setzen – für eine konfigurierte Liste von Konten mit leerem Code, Nonce 0 und nicht leerem Speicher. Vor EIP-161 (Spurious Dragon) erhöhte CREATE die Nonce nicht vor dem Init-Code; ein Konstruktor, der Speicher schrieb und keinen Code zurückgab, hinterließ genau diese Form. Nur hier folgt aus „Nonce 0 und leerer Code“ nicht „leerer Speicher“ – und eine spätere Vertragserzeugung auf dieser Adresse würde den Speicher erben.

Warum eine Nonce-Anhebung. EIP-684 verbietet CREATE und CREATE2 bereits auf Adressen mit Nonce ungleich null. Mit Nonce 1 scheitern diese Konten an der bestehenden Prüfung. Die Alternative – bei jeder Vertragserzeugung leeren Speicher am Ziel zu prüfen – hieße eine zusätzliche Laufzeitprüfung, für manche Clients einen weiteren Plattenzugriff, für immer bezahlt, um eine Adressmenge zu schützen, die seit Spurious Dragon nicht wächst. Laut EIP sind die Mainnet-Adressen unerreichbar; Ziel ist, diese Form samt Analyse- und Testlast für spätere Vorschläge abzuschaffen.

EIP-8253 nennt jetzt die 28 Mainnet-Konten, deren Nonce ein Fork anheben würde
EIP-8253 nennt jetzt die 28 Mainnet-Konten, deren Nonce ein Fork anheben würde — Coin Brief

Was die Aktualisierung bringt. Die Mainnet-Liste liegt als targeted-accounts.json mit 28 Einträgen vor. Die Speicherwerte stammen aus Block 26178891, laut Autor finalisiert. Der PR beschreibt die Prüfung: jede Storage-Root gegen eth_getProof abgleichen und zur Vollständigkeit bestätigen, dass die Liste jedes Konto mit leerem Code, Nonce 0, nicht leerem Speicher und Guthaben größer null enthält – denn ein Konto ohne Guthaben gilt nach EIP-161 als leer und wird bei Berührung gelöscht. Steigende Guthaben spielen laut Autor keine Rolle, da nur die Nonce angehoben wird.

Status. EIP-8253 bleibt ein Entwurf; über die Aufnahme in einen Fork entscheidet dieser Merge nicht. Die Spezifikation verlangt außerdem, die Liste einer Chain nicht ohne Neuberechnung auf eine andere zu übertragen.

Quelle: ethereum/EIPs, Pull Request 12495 „Update EIP-8253: Add Mainnet prestate values + genesis/devnet alloc“ — https://github.com/ethereum/EIPs/pull/12495