Dieser Artikel ist ein Beitrag der Community. Der Autor ist Kenny Li, Mitbegründer von Manta Network, einem programmierbaren Layer-1-Datenschutzprotokoll auf Basis von Zero-Knowledge-Proof-Technologie.

Die Ansichten in diesem Artikel sind die des Beitragenden/Autors und spiegeln nicht unbedingt die Ansichten der Binance Academy wider.

TL;DR

  • Eine Zero-Knowledge Ethereum Virtual Machine (zkEVM) ist eine Ethereum-Zustandsmaschine, die Smart Contracts auf eine mit der Zero-Knowledge-Proof-Technologie (ZKP) kompatible Weise ausführen kann.

  • zkEVMs erweitern die Funktionen von Zero-Knowledge-Rollups (zk-Rollups) auf Ethereum, um dezentrale Anwendungen (DApps) zu unterstützen.

  • zkEVMs erleichtern die Bereitstellung bestehender und neuer Ethereum-Projekte mithilfe von ZKPs zur Verbesserung des Ethereum-Ökosystems.

Einführung

Die ursprünglichen Ethereum-Entwickler haben die ZKP-Technologie nicht in Betracht gezogen, als sie das Netzwerk 2014 erstmals vorschlugen. In den letzten Jahren hat ZKP jedoch an Aufmerksamkeit gewonnen und wird voraussichtlich eine viel wichtigere Rolle im Blockchain-Bereich spielen. Daher wurden die Bemühungen intensiviert, die ZKP-Technologie und die virtuelle Maschine von Ethereum zu kombinieren.

Um zu verstehen, was ein zkEVM ist, wollen wir zunächst kurz die beiden zugrunde liegenden Konzepte betrachten: zk-Rollups und EVM.

Was sind Zk-Rollups?

Ein Rollup ist eine Skalierungslösung, die zahlreiche Transaktionsausführungen außerhalb der Hauptkette zusammenstellt und die Daten als einzelne Transaktion an das Hauptnetzwerk zurücksendet. Dieser Prozess erhöht den Durchsatz und senkt gleichzeitig die Kosten für die Ausführung dieser Transaktionen.

Bei Ethereum werden Transaktionen innerhalb eines Rollups komprimiert und zum Preis der Verifizierung einer einzelnen Transaktion an das Ethereum-Mainnet übermittelt. Das Ethereum-Mainnet übernimmt die Abwicklung und Verifizierung der im Rollup enthaltenen Transaktionsdaten.

Ein ZK-Rollup ist ein Rollup-Typ, der die ZKP-Technologie nutzt. Dabei handelt es sich um eine kryptografische Technologie, mit der die Gültigkeit einer Information überprüft werden kann, ohne die Information selbst preiszugeben. ZK-Rollups müssen nicht alle Transaktionsdaten im Ethereum-Mainnet veröffentlichen. Sie benötigen lediglich Statusunterschiede (wie etwa Änderungen des Benutzerkontostatus) und einen Gültigkeitsnachweis, wodurch die Gasgebühren gesenkt werden.

Die Sicherheit von zk-Rollups beruht auf der ZKP-Kryptografie, bei der kryptografische Mittel verwendet werden, um Beweise zu verifizieren und Vertrauenslosigkeit zu erreichen. Dies unterscheidet sich von anderen Rollups wie optimistischen Rollups, deren Sicherheit auf der ökonomischen Spieltheorie beruht, bei der böswillige Akteure durch potenzielle Verluste abgeschreckt und Herausforderer durch Anreize motiviert werden.

Was ist EVM?

Die EVM ist eine Zustandsmaschine, in der das Ethereum-Kontosystem und die Smart Contracts laufen. Jede Smart Contract-Ausführung löst den Übergang der EVM von einem alten in einen neuen Zustand aus. Die EVM definiert die Regel für die Berechnung neuer und gültiger Zustände von einem Block zum nächsten.

Der Status ist ein wichtiges Konzept in Ethereum. Es handelt sich dabei um eine Merkle-Patricia-Trie-Datenstruktur, die den aktuellen Status von Ethereum darstellt und es jedem ermöglicht, Transaktionsinformationen vom aktuellen Block bis zurück zum Genesis-Block zu verfolgen.

Alle an der Wartung von Ethereum beteiligten Knoten dienen der Gewährleistung von Kontinuität und Konsens, sodass jeder Knoten den genauen aktuellen Status sehen kann. EVM spielt bei der Aufrechterhaltung dieser Konsistenz eine entscheidende Rolle.

Wie funktioniert ein ZkEVM?

EVM unterstützt ZKPs standardmäßig nicht. zkEVM zielt darauf ab, die Kontinuität des Ethereum-Zustands sicherzustellen und gleichzeitig den Nachweis zu erbringen, dass alle Informationen korrekt sind. Auf diese Weise werden die verschiedenen Faktoren, die an der Berechnung dieser Prozesse beteiligt sind, überprüft, während Sicherheit und Datenschutz gewahrt bleiben.

zkEVM tut dies, indem es die Ethereum-Umgebung als zk-Rollups repliziert. Es nimmt den Anfangszustand, berechnet alle Transaktionen und gibt dann einen neuen, aktualisierten Zustand zusammen mit einem begleitenden ZKP aus. Dieser Nachweis wird einem Smart Contract zur Überprüfung vorgelegt, der die Richtigkeit der Ausgabe sowohl des Anfangs- als auch des neuen Zustands überprüft, ohne alle Transaktionen einzeln überprüfen zu müssen.

Da zkEVMs auf dem EVM basieren, können Entwickler Ethereum DApps und Smart Contracts problemlos auf zkEVMs portieren, ohne ZKP-Entwicklungsarbeit leisten zu müssen. Mit anderen Worten: zkEVMs ermöglichen zk-Rollups die Ausführung von Smart Contracts zusätzlich zu Token-Swaps und Zahlungen, die zuvor ohne zkEVMs unterstützt wurden.

Dank der Kompatibilitätsfunktion von EVM können Entwickler neue Produkte mit vorhandenen EVM-Tools und der Programmiersprache Solidity erstellen und gleichzeitig von der verbesserten Sicherheit von zkEVM profitieren. Die gleichen Vorteile gelten auch für Benutzer – sie können weiterhin dieselben DApps und vertrauten Tools verwenden, jedoch mit zusätzlicher Sicherheit und Privatsphäre.

EVM-Kompatibilität im Vergleich zur EVM-Äquivalenz 

Wenn eine Blockchain als EVM-kompatibel bezeichnet wird, bedeutet das, dass sie eine Umgebung bietet, in der DApps bereitgestellt werden können, die in der Programmiersprache Solidity geschrieben sind. Solidity ist für die Entwicklung von Smart Contracts konzipiert, die im Ethereum-Netzwerk ausgeführt werden.

Tatsächlich können Ethereum-Entwickler den Code bestehender DApps von Ethereum kopieren und einfügen und ihn mit minimalen Änderungen auf anderen EVM-kompatiblen Ketten bereitstellen. Für Benutzer ist jede EVM-kompatible Kettenadresse dieselbe wie ihre Ethereum-Adresse.

Das bedeutet, dass Adressen mit gängigen Wallets wie Metamask und Trust Wallet kompatibel sind. Zu den wichtigsten EVM-kompatiblen Ketten gehören derzeit BNB Chain, Avalanche C-Chain und Polygon.

EVM-Kompatibilität ist nicht mit EVM-Äquivalenz zu verwechseln, was bedeutet, dass Layer-2-Rollups aus der Sicht von DApp-Entwicklern nahezu identisch mit Layer-1-Ethereum sind.

Um eine Analogie zum Betriebssystem zu verwenden: Die EVM-Äquivalenz ist vergleichbar mit der Wiederherstellung von Dateien und Einstellungen über die Apple Cloud, wenn sowohl der vorherige als auch der neue Computer eines Benutzers auf dem Betriebssystem von Apple laufen.

Im Gegensatz dazu bedeutet EVM-Kompatibilität, dass beim Wechsel eines neuen Computers zu einem Windows-System die Originaldateien über den Cloud-Speicher heruntergeladen und konvertiert werden müssen, um bevorzugte Einstellungen und alte Dateien wiederherzustellen.

Verschiedene Arten von ZkEVMs 

Das Generieren und Überprüfen von ZKPs direkt mit EVM ist extrem langsam, da Ethereum ursprünglich nicht für die Unterstützung der ZKP-Technologie konzipiert wurde. In einigen Fällen kann es mehrere Stunden dauern. Es ist jedoch unbedingt erforderlich, ein Gleichgewicht zwischen EVM-Kompatibilität und ZKP-Effizienz zu finden.

Ethereum-Gründer Vitalik Buterin hat zkEVMs in die folgenden vier Typen eingeteilt. Ähnlich wie beim Blockchain-Trilemma weisen sie jeweils unterschiedliche Kompromisse zwischen ZKP-Leistungseffizienz und EVM-Kompatibilität auf.

Typ 1: Äquivalenz auf Konsensebene – zkEVM, das vollständig mit Ethereum äquivalent ist

Auf Konsensebene ist ein zkEVM vom Typ 1 – auch als Enshrined Rollup bekannt – gleichwertig mit Ethereum, und der Kettenzustand und die Transaktionen von zkEVM sind identisch mit denen von Ethereum. Sie können Blöcke gegenseitig verifizieren und direkt mit Ethereum-Ausführungsclients verwendet werden.

Typ-1-zkEVMs machen Ethereum selbst skalierbarer und können direkt in das Ethereum-Mainnet eingeführt werden. Der Nachteil ist, dass die ZKP-Effizienz extrem schlecht ist und zur Überprüfung eine große Rechenleistung erforderlich ist. Die Lösung besteht darin, in Zukunft groß angelegte parallele Validierer oder spezialisierte integrierte Schaltkreise für zk-SNARKs zu verwenden.

Typ 1 zkEVMs mit hoher ZK-Effizienz wären die idealste Form von zkEVM. Derzeit gibt es viele Projekte, die diesen Typ von zkEVM erstellen oder erforschen.

Typ 2: Äquivalenz auf Bytecode-Ebene – vollständig gleichwertig mit EVM

Typ 2 ist vollständig gleichwertig mit EVM, aber nicht mit Ethereum. Es unterscheidet sich von Ethereum in Bezug auf Datenstrukturen (wie Blockstruktur und Zustandsbaum) und löscht einige Stapeloperationen, die nicht ZK-freundlich sind.

Es ist vollständig kompatibel mit den vorhandenen DApps, Debugging-Tools und der Entwicklerinfrastruktur von Ethereum. Äquivalenz auf Bytecode-Ebene kann die Beweiszeiten beschleunigen, wenn auch nicht wesentlich. Ein klarer Nachteil von Typ 2 ist, dass er teuer ist, nicht synergetisch mit ZK ist und eine niedrige und teure Effizienz aufweist.

Typ 2.5: Ähnlich wie Typ 2, jedoch mit Änderungen bei den Gasgebühren

Typ 2.5 hat dieselben Vor- und Nachteile wie Typ 2, die Gasgebühren sind jedoch etwas niedriger.

Typ 3: Äquivalenz auf Bytecode-Ebene – fast gleichwertig mit EVM

Typ 3 basiert auf Typ 2 und opfert die Kompatibilität weiter zugunsten einer verbesserten ZK-Effizienz. Es löscht Funktionen, die auf zkEVM schwer zu implementieren sind, wie z. B. Vorkompilierungen, sodass einige Codes, die in DApps verwendet werden, die diese Funktion benötigen, neu geschrieben werden müssen.

Typ 4: Äquivalenz auf Entwicklungssprachenebene – höhere Programmiersprache, die EVM entspricht

EVMs vom Typ 4 haben die höchste ZK-Leistung, aber eine relativ unterdurchschnittliche Kompatibilität.

Abschließende Gedanken 

Der Hauptzweck der zkEVM-Implementierung besteht darin, die Unterstützung der ZKP-Berechnung auf die Ausführung intelligenter Verträge auszuweiten und dabei DApps auf alle EVM-kompatiblen Protokolle auszudehnen. Aber die Anwendungen von ZKPs hören hier nicht auf.

Die ZKP-Technologie kann möglicherweise mit Web2-Anwendungsfällen kompatibel sein. Die Kombination verschiedener Web2-Anwendungsfälle mit ZKP könnte Web3-Anwendungen reibungsloser und benutzerfreundlicher machen. Außerdem würde es Benutzern, die bereits an herkömmliche Internetbrowser gewöhnt sind, Zugriff auf Web3 gewähren und so die Einführung von Web3 vorantreiben.

Weitere Informationen

  • Was ist ein Zero-Knowledge-Proof und welche Auswirkungen hat er auf die Blockchain?

  • Optimistische vs. Zero-Knowledge-Rollups: Was ist der Unterschied?

  • Verbesserung der Krypto-Transparenz mit Zero-Knowledge-Beweisen


Haftungsausschluss und Risikowarnung: Dieser Inhalt wird Ihnen „wie besehen“ nur zu allgemeinen Informations- und Bildungszwecken präsentiert, ohne Zusicherungen oder Gewährleistungen jeglicher Art. Er ist nicht als finanzielle, rechtliche oder sonstige professionelle Beratung zu verstehen und soll auch nicht den Kauf eines bestimmten Produkts oder einer bestimmten Dienstleistung empfehlen. Sie sollten sich von geeigneten professionellen Beratern beraten lassen. Wenn der Artikel von einem Drittanbieter stammt, beachten Sie bitte, dass die geäußerten Ansichten dem Drittanbieter gehören und nicht unbedingt denen von Binance Academy entsprechen. Weitere Einzelheiten finden Sie in unserem vollständigen Haftungsausschluss. Die Preise digitaler Vermögenswerte können volatil sein. Der Wert Ihrer Investition kann fallen oder steigen und Sie erhalten möglicherweise nicht den investierten Betrag zurück. Sie sind allein für Ihre Investitionsentscheidungen verantwortlich und Binance Academy haftet nicht für etwaige Verluste, die Ihnen entstehen können. Dieses Material ist nicht als finanzielle, rechtliche oder sonstige professionelle Beratung zu verstehen. Weitere Informationen finden Sie in unseren Nutzungsbedingungen und Risikowarnungen.