[Translation] Die Geschichte von Delegated Proof of Stake(DPoS)

in Deutsch D-A-CH5 years ago (edited)

@blocktrades hat eine Artikelserie über die Geschichte von DPoS angefangen. In diesem Teil geht es um die Grundlagen der Blockchain und die Tatsache, dass ein einfrieren von Geldern immer Möglich sind und kein Raub der Coins ist. Außerdem geht es kurz um sein Unverständnis, warum viele führende Köpfe in der Kryptowelt keine Ahnung haben, wie die Technologie mit der sie arbeiten eigentlich funktioniert.


DPOS (Delegated Proof-of-Stake) wurde von Daniel Larimer als Ersatz für den Proof-Of-Work-Konsens-Algorithmus erfunden, der von Bitcoin und den meisten anderen Krypto-Währungen zu dieser Zeit verwendet wurde. Alle von Dan entwickelten Blockchains (einschließlich BitShares, Steem und EOS) verwenden DPOS zur Auswahl ihrer Blockproduzenten.

In diesem Beitrag wird @blocktrades die Geschichte diskutieren, die zur Erfindung von DPOS führte. Er hat zur Zeit der Erfindung eng mit Dan zusammengearbeitet, und so ist es geschehen, soweit er sich erinnert.

Bevor er sich jedoch mit den Einzelheiten der DPOS-Geschichte befasst, muss er einige Hintergrundinformation darüber vermitteln, wie Blöcke zu einem Blockchainnetzwerk hinzugefügt werden.

Ordnen von Transaktionen (z.B. ein Geldtransfer) in einem Blockchainnetzwerk

Eine der wichtigsten Funktionen eines Blockchainnetzwerks ist die Erstellung einer zeitlich geordneten Liste von Transaktionen, wobei Gruppen dieser Transaktionen in einer Abfolge von verknüpften Blöcken, einer sogenannten Blockchain, gespeichert werden. Diese zeitliche Reihenfolge ist wichtig, weil sie verhindert, dass jemand seine Kryptowährung mehr als einmal ausgibt (ein als "Doppelausgabe" bekannter Angriff).

Um neue Transaktionen zu verarbeiten, muss einer der Computer im Blockchainnetzwerk eine gültige Reihenfolge für neue Transaktionen, die er erhalten hat, festlegen, sie in einen Block setzen und diesen Block dann an alle anderen Computer im Blockchainnetzwerk senden. Die anderen Computer im Blockchainnetzwerk können diesen Block dann überprüfen, und wenn er die Regeln des Blockchainnetzwerks erfüllt, fügen sie ihn ihrer lokalen Kopie der Blockchain hinzu. Nach einer gewissen Zeitverzögerung (oft als Blockintervall bezeichnet) wiederholt ein anderer Computer die oben genannten Schritte, und ein weiterer Block wird der Blockchain hinzugefügt.

Probleme mit einem Blockchainnetzwerk, das einen einzigen Computer zur Erzeugung aller Blöcke verwendet

Theoretisch könnten die Regeln einer Blockchain einen einzelnen Computer im Netzwerk zuweisen, der alle Blöcke generiert. Aber es gibt mehrere Probleme mit dieser Idee.

Zum einen stellt es ein sehr zerbrechliches Netzwerk dar: Wenn dieser eine Computer abstürzt oder die Verbindung zum Internet verliert, können keine Transaktionen verarbeitet werden, solange dieser Computer nicht in der Lage ist, mit den anderen Computern im Netzwerk zu kommunizieren (mit anderen Worten, niemand kann Geldtransfers durchführen).

Ein weiteres Problem besteht darin, dass ein einziger Computer, der alle Blöcke durchführt, alle Überweisungen jeder beliebigen Person blockieren kann, wodurch auf einem Konto gespeichertes Geld "eingefroren" wird. Das liegt daran, dass der Computer, der eine Blockierung vornimmt, wählen kann, welche Transaktionen er in eine Blockierung einfügt. Wenn er eine Transaktion nicht einbeziehen will, kann er einfach so tun, als hätte er sie nie gesehen. Aber selbst dieser Computer kann nur Gelder einfrieren, er kann sie nicht wirklich stehlen (weil er nur Transaktionen blockieren kann, er kann keine gefälschte Transaktion durchführen, die Geld von einem Konto bewegt, das ihm nicht gehört, weil das gegen die Regeln der Blockchain verstößt).

Wessen Computer macht den nächsten Block in der Blockchain?

Aber die Möglichkeit, Gelder im Netzwerk willkürlich einzufrieren, ist eine Menge Macht, und man will auch nicht, dass das Finanznetzwerk von der Funktionsfähigkeit eines Computers abhängig ist. Deshalb wurde Bitcoin, die erste Kryptowährung, mit einer Funktion namens "Mining" entwickelt, die es Computern im Netzwerk ermöglicht, um das Recht zu konkurrieren, den nächsten Block in der Blockchain zu erzeugen.

Wie das Bitcoin-Mining (auch bekannt als "Proof-of-Work" oder kurz POW) funktioniert

Beim " Mining " konkurriert jeder Computer, um das Recht, den nächsten Block (einen Miner) zu erstellen, gegen die anderen Computer, um eine Lösung für ein mathematisches Problem zu finden. Da die Computer dieses mathematische Problem lösen und beweisen müssen, dass sie die richtige Lösung haben, werden auf dem Mining basierende Krypto-Währungen auch als "Proof-Of-Work" (POW) Krypto-Währungen bezeichnet.

Im Allgemeinen werden die Miner mit den schnellsten Computern als erste die Lösung finden und dann einen Block an das Blockchainnetzwerk senden, der ihre Lösung enthält. Wenn die anderen Computer im Netzwerk zustimmen, dass die Lösung korrekt ist, wird dies der nächste Block in der Blockchain.

Zunächst war das Mining scheinbar eine großartige Lösung für das Problem der Auswahl, wer den nächsten Block produzieren würde. Jeder Miner im Netzwerk konnte den nächsten Block produzieren, so dass selbst wenn ein Miner beschloss, die Transaktionen eines Benutzers nicht mit einzubeziehen, die Transaktionen wahrscheinlich vom nächsten Miner einbezogen werden würden. Im schlimmsten Fall könnten sich die Transaktionen eines Benutzers also um einige Blöcke verzögern.

Aber Computer, die im Mining eingesetzt werden, verbrauchen eine Menge Strom, um diese mathematischen Probleme zu lösen, was Geld kostet. Damit die Miner ihre Ausgaben decken können (und sogar von ihrem Mining profitieren), erhalten sie bei erfolgreicher Produktion eines Blocks eine Blockprämie. Dies führt zu einem Wettrüsten unter den Minern, und letztendlich griffen die Bitcoin-Miner zu sehr spezialisierten und teuren Geräten, um einen Miningvorteil zu erlangen. Leider wurde es dadurch für die meisten Menschen zu teuer, Bitcoin zu minen, und mit der Zeit wurden die meisten Bitcoin-Blöcke von nur wenigen Leuten mit sehr teurer Ausrüstung hergestellt.

Schritte, die zur Erfindung des Delegated Proof-of-Stake (DPOS) führten

Im Jahr 2013 arbeitete er zusammen mit Dan Larimer an der Schaffung einer neuen Kryptowährung namens BitShares. BitShares wurde als eine auf einer Blockchain basierende dezentralisierte Börse konzipiert (d.h. ein Ort, an dem Benutzer Peer-to-Peer-Handel mit Kryptowährungen und anderen Waren handeln können). Sein Team arbeitete hauptsächlich am Peer-to-Peer-Netzwerkcode und an der Kommandozeilen-Wallet, und Dans Team arbeitete am Blockchaincode, einschließlich der Methode zur Bestimmung, welcher Computer im Netzwerk den nächsten Block machen darf. Trotz der Trennung der Arbeit, vielleicht nicht überraschend, diskutierte man oft Implementierungsideen, und manchmal halfen Leute aus seinem Team auf der Blockchain-Seite aus, wenn es ein Problem gab.

Warum nicht mit dem bewährten Proof-of-Work?

Der Proof-of-Work benötigte eine Menge an Computerressourcen (so dass die Blockchain den Minern eine Menge zahlen musste) und war für ihre Bedürfnisse als Handelsplattform relativ langsam. Das Bitcoin-Netzwerk hatte eine Blockzeit von 10 Minuten, und sie strebten eine Blockzeit von 10s an (schließlich setzten sie die Blockzeit auf 3s). Daher schloss Dan die Verwendung von Proof-of-Work für die Auswahl des nächsten Blockproduzenten aus.

Ein einziger Blockproduzent? Ein einziger Fehlerpunkt und zu viel Vertrauen

Um die schnellste Geschwindigkeit zu erreichen, war Dans erste Idee, nur einen einzigen Blockproduzenten einzusetzen. Dies hat tatsächlich einige Leistungsvorteile, da jeder seine Transaktionen an diesen einen Blockproduzenten schicken kann, was es ermöglicht, Transaktionen schneller in einen Block aufzunehmen. Aber ein einziger Versagenspunkt ließ dies nicht praktikabel erscheinen, und man legt wirklich viel Macht in die Hände einer Person.

Wie wäre es mit einer Gruppe von "Treuhändern"? Erfordert immer noch zu viel Vertrauen

Dans nächste Idee war nur eine Reihe von Treuhändern: vertrauenswürdige Personen in der neugeborenen BitShares-Community, die damit beauftragt werden, Blöcke in der Reihenfolge des Round-Robin zu produzieren. Die Idee war, dass selbst dann, wenn ein Treuhänder eine Transaktion nicht mit einbezieht, der nächste eine solche durchführen würde. Die einzige Möglichkeit, eine Transaktion zu blockieren, war also, wenn alle Treuhänder beschlossen, die Transaktion zu blockieren. Einer der großen Reize dieser Idee war die völlige Einfachheit, die eine sehr schnelle Kodierung ermöglichte, und sie standen unter großem Zeitdruck, um ein funktionierendes Blockchainnetzwerk in Betrieb zu nehmen, bevor die Finanzierung auslief.

Die Idee des Kuratoriums war zwar aus technischer Sicht sehr leicht realisierbar und wegen ihrer einfachen Implementierung sehr attraktiv, aber sie war auch insofern etwas fragil, als sie auf einer festen Anzahl von Computern im Netzwerk beruhte und es keinen Mechanismus gab, wie diese Liste von Benutzern im Laufe der Zeit geändert werden konnte, außer durch einen Hardfork durch eine neue Gruppe von Treuhändern.

Außerdem wurde den Treuhändern viel Vertrauen entgegengebracht, und Kryptoanarchisten wollen im Allgemeinen niemandem zu viel Vertrauen entgegenbringen. Deshalb argumentierte @blocktrades und andere, dass es zu viel Vertrauen erfordere und von der Krypto-Community nicht akzeptiert werden würde. Nach einem Tag oder so gab Dan diesen Punkt zu und suchte nach einer neuen Methode, um schnell den nächsten Blockproduzenten aus zu wählen.

Proof-Of-Stake (POS): eine alternative Methode zur Auswahl des nächsten Blockproduzenten auf der Grundlage des Coin-Stakes

Als nächstes begann Dan mit der Betrachtung von Proof-of-Sake-Systemen. Proof-of-Sake (POS) war damals die neue aufstrebende Methode zur Auswahl von Blockherstellern, und die bekanntesten Implementierungen waren Peercoin und NXT. NXT war von besonderem Interesse, da es auch zur Unterstützung eines dezentralen Austauschs ähnlich wie BitShares konzipiert wurde.

Proof-of-Stake-Konsens-Algorithmen wählen den nächsten Blockproduzenten auf der Grundlage einer Kombination aus der Anzahl der Coins, die ein Blockproduzent hat, der Dauer, in der er die Coins hält (ein Faktor, der als "Coin Age" bezeichnet wird), sowie einer gewissen Zufälligkeit aus.

Die wahrscheinlich interessanteste Idee zu den POS-Konsens-Algorithmen war, dass sie sich auf das Eigeninteresse der Blockproduzenten verließen, um sie an Absprachen zur Blockierung von Transaktionen zu hindern. Die Idee ist einfach: Durch die Gestaltung von POS-basierten Blockchains halten die Blockproduzenten einen großen proportionalen Anteil der Coins. Der Wert dieser Coins wird von Personen unterstützt, die bereit sind, diese Coins für andere Waren zu akzeptieren. Und wenn die Benutzer entscheiden, dass die Blockproduzenten die Verarbeitung ihrer individuellen Transaktionen einstellen könnten, werden die Münzen wahrscheinlich an Wert verlieren, so dass die Blockproduzenten im allgemeinen Fall einen Anreiz haben, die Transaktionen anderer Benutzer zu verarbeiten.

Er kann sich nicht erinnern, warum Dan sich entschieden hat, keinen POS-Konsens-Algorithmus zu implementieren. Dan hatte seine Kritikpunkte, einschließlich der Tatsache, dass PoS angeblich Gegenstand von "Nothing at Stake"-Angriffen war. Er habe eine vage Erinnerung aus der Zeit, als er den POS-Algorithmus für NXT gelesen hat, dass dieser ziemlich kompliziert erschien (z.B. klingt die Verwendung der Randomisierung im Blockproduzenten-Auswahlprozess etwas chaotisch, und die Berechnung des Coinalters hätte die Rechenkomplexität erhöht), und er vermute, dass dies bei Dans Entscheidung, keinen POS-Konsens-Algorithmus zu implementieren, eine große Rolle gespielt hat, insbesondere angesichts des Zeitdrucks, einen funktionalen Konsens-Algorithmus zu implementieren, der mit begrenzten Mitteln schnell funktioniert.

Die Erfindung des Delegated Proof-of-Stake

Aber Dan war schon immer ein starker Befürworter der Wirtschaftsanalyse, insbesondere wenn es um die Gestaltung von Blockchain-Designs geht, und @blocktrades glaubt, das war Dans Hauptanreiz für Proof-of-Stake-Systeme.

Gleichzeitig gefiel Dan aber auch die Einfachheit des zuvor besprochenen Treuhändermodells (leicht zu implementieren, vorhersehbare Blockproduktion, funktioniert hervorragend, solange man den Treuhändern vertrauen kann).

DPOS war also im Wesentlichen eine Synthese dieser beiden Ideen, kombiniert mit einer Wendung: Anstatt dass die großen Stakeholder die Blöcke direkt produzieren, würden die Stakeholder die Blockproduzenten für die Herstellung der Blöcke wählen. Hier erfüllen die Blockproduzenten eine ähnliche Rolle wie die Treuhänder in Dans ursprünglichen Plan für den Konsens-Algorithmus. Aber unter DPOS muss man ihnen nicht ganz so viel Vertrauen entgegenbringen, und das System verfügt über einen definierten Mechanismus, wie die Treuhänder ausgewählt und ersetzt werden, so dass sie nicht aufwändig ersetzt werden müssen.

Eine letzte Anmerkung zum "Einfrieren von Geldern" auf einer Blockchain

Es erstaunt ihn immer wieder, wie Geschäftsleute, die als "Vordenker" und " Influencer" agieren, oft die Grundlagen der technologischen Revolution, die sie angeblich anführen, nicht verstehen.

Eine Sache, die ihn dazu inspiriert hat, diesen Beitrag zu schreiben, war ein kürzlich von Changpeng Zhao, dem CEO von Binance, alias CZ Binance, auf Twitter getwitterter Tweet, der ihn zum Lachen brachte. CZ sagte: "Blockchains sollten KEINE Einfrierfunktionen haben."

CZ war offenbar verärgert, dass die Steem-Blockchain die Gelder eines Kontos einfrieren konnte, und dachte, dass dies eine Besonderheit einer DPOS-basierten Blockchain sei. Doch wie er hofft, dass Sie aus diesem Beitrag gelernt haben, kann jedes bestehende Blockchainnetzwerk, einschließlich des Bitcoin-Netzwerks, die Gelder auf einem Konto einfrieren, solange alle Blockproduzenten in diesem Netzwerk dem zustimmen. Sie müssen nur zustimmen, die Transaktionen nicht in ihre Blöcke aufzunehmen.

Beachten Sie, dass dies nicht wirklich ein "Feature" der Blockchaintechnologie ist, in dem Sinne, dass nicht alle Blockchainentwickler sich verschworen haben, ihre Blockchain so zu gestalten, dass sie so funktionieren. Es ist hauptsächlich eine Einschränkung der Technologie, zumindest soweit wir bisher in der Lage waren, Blockchains zu entwerfen.

Je weniger Blockhersteller an einer Blockchain beteiligt sind, desto einfacher ist es, die notwendige Koordination zu erreichen, um die Gelder eines Kontos einzufrieren. Das bedeutet zum Beispiel, dass die obersten Bitcoin-Minenpools die Gelder eines Kontos wahrscheinlich für sehr lange Zeit einfrieren könnten, wenn sie sich dafür entscheiden, dass es sinnvoll ist. Aber im Allgemeinen wird davon ausgegangen, dass dies nicht geschehen wird, weil sie in Bitcoin bezahlt werden und das willkürliche Einfrieren von Geldern von jemandem im Allgemeinen von den Leuten, die den Wert von Bitcoin unterstützen, nicht wohlwollend betrachtet wird.

Daher muss die Wirtschaftlichkeit einer Blockchain so gestaltet werden, dass die Blockproduzenten der Chain davon abgehalten werden, ein Konto ohne guten Grund einzufrieren. Er wird wahrscheinlich in seinem nächsten Beitrag über einige Möglichkeiten sprechen, dies zu tun.

Es kommt noch mehr

Wie bereits erwähnt, habt er diesen Beitrag hauptsächlich geschrieben, um die Grundlage für seinen nächsten Beitrag zu schaffen, der sich mit der Wirtschaft und Philosophie der DPOS befasst, ihre Vorteile und Schwächen untersucht und Ideen für ihre Verbesserung liefert. Leider ist er in letzter Zeit ziemlich beschäftigt, so dass es eine Weile dauern kann, bis er den Folgebeitrag zu diesem Thema schreibt. Er veröffentliche diesen Beitrag jetzt, da er größtenteils geschrieben wurde, als er seine früheren Beiträge geschrieben hat und ihn heute fertigzustellen, war eine nette Möglichkeit, sich zu entspannen und seine Gedanken zu bündeln.

Sort:  

Du hast ein Upvote von mir bekommen, diese soll die Deutsche Community unterstützen. Wenn du mich unterstützten möchtest, dann sende mir eine Delegation. Egal wie klein die Unterstützung ist, Du hilfst damit der Community. DANKE!

Du wurdest als Member von @investinthefutur gevotet! ---> Wer ist investinthefutur ?
Eine kleine Dividende a little bit !BEER


Hey @satren, here is a little bit of BEER from @investinthefutur for you. Enjoy it!

Learn how to earn FREE BEER each day by staking.

Ich danke Dir vielmals. Wirklich eine sehr gute ,einfache Erklärung. Es ist auch sehr interessant die Geschichte von Steem und Dan Larimer mal zu erfahren. Wie alles begann. Auch danke für diese Hintergrund-Informationen. Liebe Grüße Michael
!invest_vote

Hat mich meine Mittagspause gekostet, aber war es definitv wert :)

Danke für den Beitrag.

@mima2606 denkt du hast ein Vote durch @investinthefutur verdient! ----> Wer ist investinthefutur ?
@mima2606 thinks you have earned a vote of @investinthefutur !----> Who is investinthefutur ?

Du hast ein Upvote von unserem Kuration – Support Account erhalten.

Dieser wird nicht von einem Bot erteilt. Wir lesen die Beiträge. (#deutsch) und dann entscheidet der Kurator eigenverantwortlich ob und in welcher Stärke gevotet wird. Unser Upvote zieht ein Curation Trail von vielen Followern hinter sich her!!!

Wir, die Mitglieder des German Steem Bootcamps möchten "DIE DEUTSCHE COMMUNITY" stärken und laden Dich ein Mitglied zu werden.

Discord Server an https://discord.gg/Uee9wDB

Hochinteressant und gut verständlich geschrieben (übersetzt) 👍
VgA

Ich bedanke mich für deine sehr geile Erklärung. Du weist ja als alter Minerkollege, dass nichts Neues für mich drin steht. Die Blockchain und ihr Funktionsweisen, wie auch Möglichkeiten sind meistens gar nicht so bewusst im Bilde sogenannter Experten. Ich für mich habe erlebt das ich erst nach einigen Jahren das Potenzial der Technologie erkannt habe. Trotz der einfachen Struktur dieser.

Dank dir kann ich mich mit deinen Texten in meiner Muttersprache mich erinnern und weiterbilden. Gut das du das für uns machst. Weiter so!

Danke dir !jeenger

Ein jeengervote für dich von @kadna