Wie immer passiert an der ETH2 -Front viel weiter. Abgesehen von schriftlichen Updates (siehe unten den Stand der ETH2-Post) und andere öffentliche Zusammenfassungen, waren Kundenteams, Mitwirkende und Community-Mitglieder/prospektive Validatoren beschäftigt!
Heute werden wir einige wichtige Einzahlungsvertragsnachrichten und große Schritte zur Implementierung der Spezifikation Version V0.12 abdecken.
Tl;
Soliditätseinlagenvertrag und formelle Überprüfung
Heute möchten wir eine neue und sicherere Version des ETH2 -Einzahlungsvertrag Geschrieben in Solidität! Dieser Vertrag behält die gleiche öffentliche Schnittstelle bei EIP 165 SupportSinterface Funktion) und ist somit völlig transparent Ändern Sie für alle vorhandenen Client- und Entwickler -Tools. Tatsächlich handelt es sich bei dem Soliditätscode in erster Linie um eine Linie-für-Linie-Übersetzung des ursprünglichen Vyper-Vertrags zur Unterstützung der Überprüfung und formellen Überprüfung.
In den letzten Monaten wurde der ETH2-Einlagenvertrag in Solidität neu geschrieben Alex Alexüberprüft von einer kleinen Gruppe von Soliditätsexperten, und formell verifiziert Durch Laufzeitüberprüfung wiederverwendet die ursprünglich für die Vyper-Version des Vertrags geschriebene K-Spec weitgehend.
Obwohl der vorherige Vyper -Vertrag stark getestet, überprüft und offiziell überprüft wurde, gibt es latente Bedenken hinsichtlich der Sicherheit des Vyper -Compilers wie heute. Während der ursprünglichen Vyper -Bytecode -Überprüfung wurden mehrere Compiler -Fehler gefunden (und behoben). Zusätzlich zur formalen Überprüfung, Suhabe Bugrara (Konsensys F & E) durchgeführt eine Bewertung des Vyper-Einlagenvertrags und der formellen Überprüfung, die zu vielen Verfeinerungen in der formellen Spezifikation führt (letztendlich bei der einfachen Überprüfung des Soliditätsvertrags). Obwohl die Überprüfung als Klang bewertet wurde, konnte Suhabe den Bytecode nicht so sicher empfehlen, solange er den Vyper -Compiler verwendete.
Gleichzeitig, Konsensys Fleiß Und Spur von Bits Hat investigative Sicherheitsberichte über den Vyper Compiler, fanden viele weitere Fehler und äußerten Bedenken hinsichtlich systemischer Probleme mit der Compiler -Codebasis.
Trotz dieser Erkenntnisse ist Vyper immer noch eine vielversprechende Sprache. Der in Python ansässige Compiler wird weiterhin entwickelt und eine Reihe von Mitwirkenden prüfen die Formalisierung der Sprache und die Untersuchung alternativer Compiler.
Während sich in der formell verifizierten Bytecode überzeugt hat, haben die im Vyper Compiler gefundenen Probleme eine starke Abhängigkeit von der Bytecode -Überprüfung erzeugt. Es ist besser, mit einem Compiler zu beginnen, der allgemein als sicher vereinbart und von dort aus Bytecode überprüft wird, anstatt mit einem Compiler mit bekannten Problemen zu beginnen und zu überprüfen, ob kein dieser bekannten (oder unbekannten) Probleme im Bytecode materialisiert.
Um Zweifel an der Sicherheit davon zu vermeiden kritisch Vertrag, wir empfehlen, den neuen Soliditätsvertrag für ETH2 Mainnet zu verwenden. Vertrag und verbunden formelle Überprüfung. Alle Probleme, die festgestellt wurden, qualifizieren sich für die ETH2 Phase 0 Bounty Program.
Ein kurzer Hinweis – der neue Vertrag hat noch nicht in die eingegangen Spec Repo. Ich werde den neuen Solidity -Vertrag in dieser Woche integrieren und ihn sehr bald als Veröffentlichung der kleinen Version veröffentlichen. Ich wollte sofort bekannt geben, damit die Community genügend Zeit zum Überprüfen haben kann.
Hellen Sie V0.12 TestNet
Seit der Veröffentlichung der Spec -Version v0.12Kundenteams haben ihre Codebasen für öffentliche Testnetze bei der Aktualisierung und Prüfung ihrer Codebasen in Schwierigkeiten gemacht.
Ich habe viele Fragen aus der Community (zu Zwietracht, Reddit usw.) gesehen, warum das, was wie ein relativ kleines Update schien, eine anständige Zeit in Anspruch genommen hat. Obwohl jede Client -Codebasis und die damit verbundenen Herausforderungen unterschiedlich sind, nehmen die Teams die Teams an v0.12 sehr ernsthaft. Während das Update in der Spezifikation nicht zu umständlich war, wurde zusätzliche Zeit in Anspruch genommen, um die Sicherheit zu verschärfen, die Funktionalität zu optimieren und die Kunden im Allgemeinen zu verhärten, bevor sie für die letzte Semi-Major-Version der Spezifikation vor dem Start herausgestellt werden.
Die Zeit ist fast hier für das erste öffentliche, multi-klientische Testnetz von v0.12 – Altona mit einem erwarteten Starttermin in den nächsten sieben Tagen. Dieses Netz wird vollständig von den konstituierenden Kundenteams (geplanter Leuchtturm, Nimbus, Prysm und Teku), AFRI und einigen EF -Teammitgliedern kontrolliert. Nach der ersten Einführung wird die Einzahlungsvertragsadresse veröffentlicht, um eine offene Beteiligung der Öffentlichkeit zu ermöglichen.
Wie die vorherigen Multi-Client-Testnetze ist Altona eher von a Devnet als ein Endbenutzer-fokussierter TestNet. Das heißt, Altona ist in erster Linie für Kundeteams zur Vernunftprüfung v0.12 Software in einer Produktionsumgebung und für ETH2-Ingenieure als Ganzes, um Fehler durchzuführen, die möglicherweise nur in einer mehrstufigen Umgebung auftreten. Trotzdem begrüßen wir Sie, sich im Laufe der Zeit Altona anzuschließen. Dann ist der nächste Schritt (unter der Annahme des allgemeinen Erfolgs mit Altona) ein größeres, Community -Focus -TestNet mit der Mainnet -Konfiguration von mindestens 16.384 Validatoren.
Oh! und Altona wird den oben beschriebenen neuen Soliditätseinzahlungsvertrag verwenden. Wie ich bereits sagte, ist dies eine 100% transparente Änderung der ETH2 -Client -Software, da die öffentliche Schnittstelle gleich ist. Aufgeregt, es trotzdem in der Produktion zu testen.
Grant für Sigma Prime’s Beacon-Fuzz
Wir freuen uns, einen Fortsetzung von Zuschüssen für die mehrstufige Differential-Fuzzing-Anstrengung von Sigma Prime bekannt zu geben- Beacon-Fuzz. Bisher war dieses Projekt bereits großer Erfolg, und das Feststellen Käfer In alle von den Kunden in das System eingebunden.
Sie können sich das ansehen Sigma Prime Blog über den Fortschritt auf dem Laufenden bleiben. Halten Sie Ihre Augen offen für die geplante “Fuzzing zu Hause” -Erdauer von Beacon-Fuzz Um sich zu engagieren und vielleicht einen Fehler auf Ihrer Heimatmaschine zu finden!
Mein langatmischer ETH2-Blog-Beitrag
Wenn Sie nicht die Gelegenheit hatten, meinen Blog -Beitrag vor ein paar Wochen zu lesen, ist es nicht zu spät! Kasse Der Bundesstaat ETH2, Juni 2020 Um einen Überblick auf hoher Niveau zu erhalten und zu verstehen, wo das ETH2 -Projekt heute steht und wie es in Ethereum als Ganzes passt 🚀

