Proof of Elapsed Time | Ein (fast) perfekter Algorithmus?

Der Proof of Elapsed Time (PoET) gehört zu den eher ungewöhnlichen Konsensalgorithmen. Das von Intel entwickelte Modell soll Ressourcen- und Energieverbrauch deutlich verringern und gleichzeitig für effiziente und faire Abläufe sorgen. Ist das zu schön um wahr zu sein?

intel-logo-620x411 Proof of Elapsed Time | Ein (fast) perfekter Algorithmus?
Intel Logo @wikipedia.org

Die Entwicklung von Proof of Elapsed Time

Der Proof of Elapsed Time wurde Anfang 2016 vom Chiphersteller Intel entwickelt. Intel hat sich bei der Entwicklung an der Grundidee des ersten Nakamoto-Algorithmus orientiert, bei der ein Anführer gewählt wird, der den nächsten Block vorschlagen darf. Auf diesem Prinzip beruhen viele Konsensalgorithmen, auch Proof of Work. Der Unterschied ist dabei nur, die Art wie der Anführer ausgewählt wird.

Der zweite Ansatz, der miteinbezogen wurde, ist die byzantinische Fehlertoleranz (BFT). Dieses Konzept ist auch die Grundlage für die Algorithmen von Stellar und Ripple. BFT beschreibt ein mathematisches Problem. Es beschreibt wie viele Computer in einem verteilten Netzwerk notwendig sind, um eine ausreichende Verlässlichkeit zu bieten und mögliche Fehlmeldungen, ob gewollt oder nicht, ausgleichen zu können. Diese Eigenschaft ist für ein Distributed Ledger besonders wichtig, da es sich auch hier um verteilte Computer handelt.

Durch die Kombination dieser beiden Ansätze soll der Proof of Elapsed Time sicher, effizient, energieschonend und fair sein.

Wie funktioniert PoET?

Beim Proof of Elapsed Time wird eine für jeden teilnehmenden Knoten innerhalb des Netzwerks eine zufällige Zeitspanne gewählt, die dieser warten muss. Der Knoten, dessen Wartezeit kürzer ist, gewinnt den neuen Block. Dieser darf dann den neuen Block zur Blockchain hinzufügen und sendet die notwendigen Informationen an alle anderen Knoten innerhalb des Peer-to-Peer Netzwerks. Dann beginnt der Prozess wieder von vorne.

Damit der Konsens-Algorithmus wirklich funktionieren kann, sind zwei Punkte wichtig:

  1. Die Wahl der Wartezeit muss zufällig sein, denn sonst könnten die Teilnehmer bewusst eine besonders kurze Zeit wählen, um ihre Chancen auf den neuen Block zu erhöhen.
  2. Es muss nachvollziehbar sein, dass der Knotenbetreiber auch tatsächlich die entsprechende Wartezeit eingehalten hat.

Diese Punkte werden durch zwei Funktionen eingehalten. Zum einen sorgt die Funktion CreateTimer dafür, dass die Wartezeit zufällig zugeordnet wird. Die zweite Funktion lautet CheckTimer. Sie überprüft, ob der Nutzer die Wartezeit eingehalten hat und damit berechtigt ist den neuen Block anzuhängen.

hyperledger-sawtooth-logo-620x310 Proof of Elapsed Time | Ein (fast) perfekter Algorithmus?
Hyperledger Sawtooth Logo @hyperledger.org

Proof of Elapsed Time in der Praxis

Der von Intel vorgeschlagene Konsensalgorithmus wird seit einigen Jahren in Hyperledger Sawtooth eingesetzt. Dies ist bisher auch die einzige bekannte Plattform, die den Algorithmus verwendet. Intel war maßgeblich bei der Entwicklung von Sawtooth Lake beteiligt. Die Plattform wurde unter der Schirmherrschaft der Linux Foundation 2016 vorgestellt. Sie soll Unternehmen dabei helfen eigene Distributed Ledger ohne besondere Vorkenntnisse schnell und einfach zu erstellen. Die Projekte nutzen dazu einen modularen Aufbau, der die Erstellung, Verwaltung und Nutzung erheblich leichter macht.

Kann sich PoET nachhaltig durchsetzen?

Wie bereits erklärt, gibt es derzeit keine Kryptowährung, die den Proof of Elapsed Time als Konsensalgorithmus verwenden würde. Dabei hat der PoET durchaus auch seine Vorteile:

  1. Keine Ressourcenverschwendung: Miner können die Wartezeit für andere Aufgaben nutzen und Rechenleistung wird nicht unnötig blockiert oder verschwendet
  2. Energieschonend: Im Gegensatz zum Proof of Work müssen nicht alle in eine Art Wettkampf treten und viel Energie einsetzen, um die richtige Lösung zu finden
  3. Fairness: Alle Miner haben prinzipiell die gleichen Voraussetzungen ausgewählt zu werden. Anders als im Proof of Stake zum Beispiel, werden Nutzer nicht auf Grund ihres Vermögens in Coins bevorzugt
  4. Für alle zugänglich: Der Proof of Elapsed Time benötigt keine teure Hardware und kann mit fast jedem CPU gemined werden. Denn jeder Intel Rechner, der SGX unterstützt, kann genutzt werden

Wieso hat sich der Proof of Elapsed Time also bisher nicht durchsetzen können? Der Hauptgrund dafür liegt darin, dass sich das Konzept für eine öffentliche Blockchain nicht sehr gut eignet. Denn für diesen Algorithmus ist es erforderlich Intel zu vertrauen. Das wiederum entspricht nicht der Grundidee einer Kryptowährung, die ohne eine monopolisierte Dritte Partei auskommen sollte. Für ein permissioned Ledger wie zum Beispiel in Sawtooth, kann es jedoch eine effiziente und energieschonende Lösung sein.