In Teil I haben wir das Konzept der Blockchain-Interoperabilität behandelt und erklärt, wie es mit dem Aufkommen alternativer L1s, L2s und Appchains nur noch an Bedeutung gewinnen wird. Die große Menge an Kapital, die über Brücken bewegt wird, macht sie zu attraktiven Zielen für Hacker und im Jahr 2022 verzeichneten wir einen Verlust von 2,5 Milliarden US-Dollar durch Multisig- und Smart-Contract-Schwachstellen. Von allen Exploits, die in diesem Jahr stattfanden, standen beeindruckende 69 % im Zusammenhang mit Brücken.
Der Kern dieser Verluste waren Fehler im Überprüfungsschritt der Überbrückung, bei dem der Vertrauensmechanismus zur Überprüfung der Transaktionsgültigkeit durch Menschen und Multisigs untermauert wurde:
Angesichts dieser Schwachstellen ist der Verifizierungsschritt im Überbrückungsprozess viel besser durch vertrauensminimierte Methoden, die auf Code und Mathematik basieren, besser geeignet.
Hier kommen Konsensnachweise als mögliche Lösung ins Spiel. Der Ansatz basiert auf einem Prüfer, der den Blockchain-Konsens der Quellkette überprüft und Zero-Knowledge-Beweise verwendet, um die Gültigkeit einer Transaktion zu bestätigen, bevor Gelder an ein Ziel freigegeben werden.
Das ist eine Menge, die es zu entschlüsseln gilt. Lassen Sie uns also zunächst definieren, was wir unter der Überprüfung des Blockchain-Konsenses verstehen.
Im Kern handelt es sich bei Blockchains um Hauptbücher, die Transaktionen zwischen Konten aufzeichnen, die von Knoten verwaltet werden, die einander nicht vertrauen. Da es viele Knoten gibt, die ein Blockchain-Netzwerk validieren, muss zwischen diesen Validatoren eine Einigung darüber erzielt werden, welcher Block der zuletzt hinzugefügte Block ist, dh sie müssen einen „Konsens“ über den neuesten Stand erzielen.
Quelle: Angepasst an das abgebildete Ethereum EVM
Die zuverlässige Überprüfung des Konsenses der Quellkette in der Zielkette ist der Schlüssel zur Überbrückung, denn wenn Sie den neuesten Block der Quellkette auf vertrauensminimierte Weise überprüfen können, ermitteln Sie die neueste „Wahrheit“ und haben dann den Komfort, eine entsprechende Aktion auszuführen die Zielkette.
Überprüfung des Konsenses der Quellkette, um eine Überbrückung zu ermöglichen
Für die Überbrückung muss das Protokoll feststellen, dass eine Einzahlungstransaktion in der Quellkette gültig durchgeführt wurde. In der Praxis müssen dabei zwei Dinge überprüft werden:
Nach Überprüfung beider Elemente kann die Zielkette Vermögenswerte für den Benutzer freigeben.
Voila, Vermögenswerte überbrückt.
Theoretisch klingt das einfach, aber der knifflige Teil ist Schritt 1: Für einen Smart Contract in einer Kette ist es nicht so einfach, den Konsens einer anderen Kette (normalerweise Ethereum als Quellkette) zu überprüfen.
Die erste Herausforderung besteht darin, dass verschiedene Blockchains über unterschiedliche Konsensmechanismen verfügen und der Nachweis des Konsenses für jede Quellkette eine sehr spezifische technische Arbeit erfordert. Dies bedeutet, dass der Schritt der Konsensüberprüfung für jede Quellkette angepasst werden muss. Konzentrieren wir uns zunächst darauf, den Ethereum-Konsens zu beweisen, da es den Löwenanteil des TVL ausmacht und die typische Brücke für L1-Benutzer darstellt.
Ethereum verfügt über einen großen Validatorsatz von über 700.000, von denen mehr als 21.000 Validatoren über einen Block in einem Slot abstimmen. Um die Endgültigkeit zu erreichen, sollte ein Block Stimmen aus 2/3 des Validator-Sets erhalten, was ungefähr 450.000 Validator-Stimmen entspricht. Um den vollständigen Konsens zu überprüfen, müsste die Gültigkeit von 450.000 Unterschriften überprüft werden.
Eine weniger umständliche Methode zur Überprüfung des Ethereum-Konsenses ist das „Light-Client-Protokoll“. Dabei wird ein Synchronisierungsausschuss (512 Validatoren, die alle 27,3 Stunden zufällig ausgewählt werden) verwendet, um zu bestätigen, dass der zuletzt vorgeschlagene Block gültig ist. Konsensverifizierung bedeutet hier, die Gültigkeit von 512 aggregierten Signaturen zu überprüfen.
In einem Überbrückungskontext kann ein Smart Contract in der Zielkette das Light-Client-Protokoll verwenden und als „Light-Client“ in der Kette fungieren, um den neuesten Status der Quellkette zu überprüfen und sicherzustellen, dass eine „Einzahlung“ getätigt wurde. Bei Erfüllung gibt der Smart-Vertrag Gelder in der Zielkette frei.
Überprüfung des Konsenses der Quellkette (zu Ethereum) über das Synchronisierungskomitee
Dieser Ansatz ist nicht sehr praktisch, da die Überprüfung von 512 aggregierten Signaturen direkt in einem Smart Contract in der Kette ohne Vorkompilierungen unerschwinglich kostspielig ist, da Ethereum-Validatoren BLS-Signaturen verwenden.
Der Schlüssel, um dies zu ermöglichen, besteht darin, den Verifizierungsschritt außerhalb der Kette durchzuführen …
… und hier kommen Konsensnachweise ins Spiel.
Zero-Knowledge-Proofs haben sich als praktikable Lösung herausgestellt, um Blockchains dabei zu helfen, kostspielige Berechnungen außerhalb der Kette durchzuführen und das Ergebnis in der Kette zu überprüfen. Dies ermöglicht es einem überbrückenden Smart Contract in der Zielkette, kostspielige Berechnungen (wie die Validierung des Konsenses der Quellkette) auf einen wissensfreien Prüfer außerhalb der Kette zu verlagern:
Die Verifizierung mit zk-Proofs ermöglicht es uns, einer vertrauensminimierten Überbrückung näher zu kommen
Nach diesen beiden Schritten kann der Ziel-Smart-Vertrag sicher Gelder in der Zielkette freigeben.
Die Verwendung von Konsensnachweisen zur Überprüfung des Quell-Blockchain-Status ist ein wichtiger Schritt in Richtung einer vertrauensminimierten Überbrückung, aber die Verwendung des Light-Client-Protokolls und der 512-Validatoren weist einige Einschränkungen auf (in der Tabelle unten hervorgehoben).
Einschränkungen beim Verlassen auf das Synchronisierungskomitee zur Überprüfung des Konsenses
Daher arbeiten einige Teams daran, den vollständigen Ethereum-Konsens nachzuweisen, was eine komplexe Aufgabe ist und zum Zeitpunkt des Schreibens die Überprüfung von 450.000 Signaturen erfordern würde. Dies in einem Zero-Knowledge-Circuit zu erreichen, ist keine leichte Aufgabe – aber Teams wie Polyhedra Network und Succinct haben sich dazu verpflichtet, dies zu erreichen.
Was gibt es Besseres, als 512 Unterschriften nachzuweisen? 450.000 Unterschriften!
Polyhedra Network gab kürzlich bekannt , dass es gelungen ist, 21.000 Validatorsignaturen zu verifizieren, die einen Block an einem bestimmten Slot in ZK signieren, und dass es an der Verifizierung aller 450.000 Signaturen arbeitet. Weitere Einzelheiten zu ihrem Ansatz und ihrem Testsystem finden Sie in ihrem zkBridge- Artikel.
Sobald wir den vollständigen Konsens von Ethereum in Zero-Knowledge überprüfen können, sollte die Überprüfung des Konsenses anderer Ketten mit kleineren Validatorsätzen in Zero-Knowledge relativ einfach sein.
Während Zero-Knowledge-Technologie und Konsensnachweise die menschliche Fehlbarkeit aufklären, wäre die Diskussion unvollständig, wenn nicht einige der Risiken anerkannt würden, die sich aus ihrer Verwendung zur Überbrückung ergeben.
Die Zero-Knowledge-Technologie verändert sich rasant, da immer wieder neuartige Algorithmen und Systeme entstehen. Einige dieser Implementierungen sind ungeprüft und könnten Schwachstellen enthalten, die sie bei erheblichen Anreizen für potenzielle Exploits anfällig machen. Darüber hinaus können solche komplexen kryptografischen Systeme auch nach Prüfungen unentdeckte Angriffsvektoren enthalten, die im Laufe der Zeit identifiziert und behoben werden, um einen ausgereiften, kampferprobten Zustand zu erreichen.
Darüber hinaus bleibt abzuwarten, bei welchem Transaktionsvolumen sich die Kosten für die Erstellung und Überprüfung von Zero-Knowledge-Proofs ausreichend amortisieren, um als kosteneffektiv angesehen zu werden.
Abschließend werden wir einige der Akteure hervorheben, die Lösungen in diesem Bereich entwickeln. Obwohl sie leicht unterschiedliche Ansätze und Markteinführungen verfolgen, stoßen sie an die Grenzen dessen, was ZK-basiertes Bridging leisten kann, und kündigen die Entstehung einer vertrauensminimierten Interoperabilität an.
Darunter haben wir:
Teams, die an Konsensnachweisen arbeiten
Interoperabilität ist ein zentraler Bestandteil der Blockchain-Infrastruktur. In den ersten Ansätzen der Überbrückung wurden Vertrauensmechanismen durch Multisigs untermauert und durch die Abhängigkeit von Menschen beeinträchtigt. Wir fangen jetzt damit an, in den Bereich der Sicherung von Brücken durch Kryptographie und Mathematik vorzudringen, die durch die Anwendung wissensfreier Beweise im Zusammenhang mit Bridging möglich werden.
In diesem Teil haben wir erläutert, wie Konsensnachweise bei der Lösung von Bridging helfen, indem sie den neuesten endgültigen Quell-Blockchain-Konsens überprüfen.
Diese Technologie kann jedoch weiter ausgeweitet werden, um den historischen Konsens zu überprüfen, was flexiblere kettenübergreifende Anwendungsfälle ermöglicht, die über die derzeitige reine Überbrückung hinausgehen. Und genau das werden wir in Teil III unserer Serie über Interoperabilität untersuchen: Speichernachweise und die Anwendungsfälle, die sie erschließen.