Casanova: Ein skalierbares Blockchain Konsensprotokoll
Das Forschungsteam von Pyrofex hat kürzlich einen Artikel veröffentlicht, der einen neuen führenden Konsensalgorithmus namens Casanova beschreibt. Das Konsensprotokoll wurde für den Einsatz in Blockchain-Kontexten entwickelt und produziert Blöcke nicht in einer Kette, sondern in einem azyklischen Richtungsdiagramm (Directed Acyclic Graph, DAG). Das Protokoll kombiniert Abstimmungsrunden mit Blockproduktion, indem es widersprüchliche Transaktionen unterscheidet. Damit ist Casanova dabei, eines der ersten zuverlässigen und korrekten Konsensverfahren zu sein, das in der Größenordnung globaler Transaktionen funktionieren könnte.
Das Konsensverfahren
Das Problem der Konsensfindung über asynchrone Netzwerke wird seit Jahrzehnten untersucht. Mit der Einführung von Bitcoin ist eine neue Klasse von Konsensalgorithmen entstanden. Dazu gehören Protokolle wie Proof of Work (PdG) oder Proof of Rapsed Time (PdT). Der Nachweis der Arbeitsalgorithmen ist von Natur aus ineffizient, da ihre Sicherheitseigenschaften aus „verlorenen“ Berechnungen stammen, wie z.B. dem Rohforcen von Hash-Preimages. Die Blockchain-Community ist natürlich daran interessiert, zuverlässige und skalierbare Konsensverfahren zu finden, die für die Verwendung in einem Kontext von Beweisen für das Problem geeignet sind.
In den Jahren 2017 und 2018 arbeitete Pyrofex an einer Reihe von Blockchain-Plattform-Projekten. Die meisten dieser Projekte erfordern die Entwicklung eines Konsensverfahrens – einem einvernehmlichen Algorithmus, der unter realen Bedingungen sicher, skalierbar und zuverlässig ist. Es sollte ein Algorithmus sein, der das erreicht, was als „optimistischer Konsens“ bezeichnet wird. Das heißt, wenn ein Benutzer eine Transaktion schickt, wird davon ausgegangen, dass ein Netzwerk die Transaktion schließlich bestätigt und so wenig Arbeit wie möglich mit der Bestätigung anfällt.
Aufbau des Netzwerks
Casanova wurde mit Blick auf die Problematik der Proof-Blockierketten entwickelt, so dass die primären Knoten des Netzwerks als Validatoren oder Clients bezeichnet werden. Proof of Work Blockketten bezeichnen ihre primären Knoten im Allgemeinen als „minor„, aber Casanova hat keine Proof-Funktion. Es ist auch möglich, komplette Knoten zu betreiben, die Blöcke empfangen, aber nicht anlegen. Auf diese Weise können Sie den Status der Blockchain verfolgen, ohne an der Erstellung dieses Berichts beteiligt zu sein.
Casanova erlegt dem Netzwerk eine leichte Synchronisationsbeschränkung auf: Die Nachrichten werden innerhalb einer begrenzten Zeit zugestellt. Wenn eine Netzwerkpartition sicherstellt, dass nicht alle Partitionen eine fehlertolerante Mehrheit haben, kann kein Konsens erreicht werden. Unter Bedingungen, bei denen die Netzverzögerung unbegrenzt zunimmt, kann kein Konsens erzielt werden. Es liegt in der Verantwortung der Betreiber von Netzknoten, eine Umgebung bereitzustellen, in der solche Ausfälle selten sind und innerhalb einer angemessenen Zeit behoben werden können. Ein Teil der Eleganz von Casanova liegt darin, dass die Anforderungen der Systemingenieure sehr klar, aber sehr locker sind. Weiterführende Informationen finden Sie im Casanova Paper.