Wie funktioniert der Casper-Proof-of-Stake-Algorithmus?

Ethereum plant, in einer zukünftigen Version des Netzwerks auf den Casper-Proof-of-Stake-Algorithmus umzusteigen. Was sind die Details dieses Algorithmus und wie vergleicht er sich mit früheren Proof-of-Stake-Konsensprotokollen?

Beachten Sie, dass ich im Gegensatz zu dieser Frage nur über Casper selbst frage, nicht darüber, warum Ethereum Casper (oder einen anderen Proof-of-Stake-Algorithmus) verwenden könnte oder nicht.
Mögliches Duplikat von Was ist Casper?
Wie kann ich am Stake teilnehmen, indem ich Gelder auf Ethereumwallet/mist habe und es rund um die Uhr laufen lasse?

Antworten (3)

Der freundliche Geist

Casper ist ein kautionsbasiertes wirtschaftliches Konsensprotokoll . Das bedeutet, dass Nodes, sogenannte Bonded Validators , eine Sicherheitsleistung hinterlegen müssen, eine Aktion namens Bonding , um dem Konsens durch die Erzeugung von Blöcken zu dienen.

Beim Proof of Stake im Casper-Stil kann jeder an der Blockproduktion teilnehmen , indem er eine Anleihe stellt. Nachdem Sie eine Anleihe gebucht haben, haben Sie die Möglichkeit, darauf zu wetten, welcher Block als nächstes aufgenommen wird. Die Anreize sind so, dass Sie Geld verdienen, indem Sie mit dem eventuellen Konsens wetten, und Geld verlieren, indem Sie gegen den Konsens wetten. Jedes kryptographisch nachweisbare Fehlverhalten führt zum Verfall der Anleihe.

Eine Analogie kann zum Arbeitsnachweis gezogen werden, bei dem jeder Miner mit seiner Hash-Power darauf setzt, welcher Block akzeptiert wird. Wenn sie falsch wetten, wird jeder Block, den sie produzieren, verwaist, was dazu führt, dass sie Geld verlieren.

Dieses Protokoll hat mehrere nette Eigenschaften:

  • Jeder kann teilnehmen
  • Ein Konsens kann zeitnah erreicht werden
  • Es konvergiert schnell zu einem unumkehrbaren Konsens
  • Es ist frei von Politik

Casper in nichtökonomischer Hinsicht

Casper ist ein schließlich konsistentes Blockchain-basiertes Konsensprotokoll. Es bevorzugt die Verfügbarkeit gegenüber der Konsistenz, siehe das CAP-Theorem. Es ist immer verfügbar und konsistent, wann immer es möglich ist. Es ist robust gegenüber unvorhersehbaren Nachrichtenübermittlungszeiten, da Knoten durch Reorganisation von Transaktionen zu einem Konsens kommen, nachdem verspätete Nachrichten schließlich empfangen wurden. Es hat eine eventuelle Fehlertoleranz von 50 %, in dem Sinne, dass eine Verzweigung, die von >50 % korrekten Knoten erstellt wird, höher abschneidet als jede Verzweigung, die von den verbleibenden potenziell fehlerhaften Validierern erstellt wird. Insbesondere können Kunden jedoch nicht sicher sein, dass ein bestimmter Fork, der mit einer Beteiligung von 51 % erstellt wurde, nicht zurückgesetzt wird, da sie nicht wissen können, ob einige dieser Knoten byzantinisch sind. Kunden betrachten einen Block daher nur dann als abgeschlossen, wenn er die Beteiligung einer übergroßen Mehrheit von Validatoren oder Bonded Stakes hat .

„Jeder kann mitmachen“ <- Das stimmt nicht zu 100%. Bei Casper besteht, wie bei allen gebondeten PoS-Protokollen, die Möglichkeit, dass das Bonding neuer Teilnehmer von den aktuellen Teilnehmern abgelehnt wird. Dieser Vorbehalt sollte bei der Beschreibung dieser Protokolle immer beachtet werden, da es sich um einen grundlegenden Unterschied zwischen PoS und PoW handelt.
„Es ist politikfrei“ <- Das stimmt nicht.
"Es konvergiert schnell zu einem irreversiblen Konsens" <- Mein Verständnis ist, dass dies von der Art des Blocks abhängt. Einige Blöcke sind reversibel.
Ich habe das Gefühl, dass dies die Frage nicht beantwortet; Ohne Quellcode kann diese Frage meiner Meinung nach nicht angemessen beantwortet werden.
@A.FrederickDudley Es gibt keinen Quellcode. Bitte sehen Sie sich diese Diskussion auf meta an .
Nur zu Ihrer Information, Rober Cartaino hat meine Antwort gelöscht, weil "Links nicht als Antwort betrachtet werden", obwohl das buchstäblich keinen Sinn ergibt.
Haben wir noch das Nonce-Konzept am POS? Was genau versuchen die Validatoren hier abzustimmen, ist es nur die Signaturüberprüfung oder etwas mehr?

https://gitter.im/ethereum/research ist ein offener, hochtechnischer Kanal, auf dem derzeit die meisten Details über Casper abgerufen werden können.

Hier sind einige Hintergrundreferenzen, die hilfreich sein können, bevor Sie sich auf den oben genannten Kanal einlassen:

Casper ist der neue Proof-of-Stake-Algorithmus, der den aktuellen Proof-of-Work-Algorithmus auf der Ethereum-Blockchain ersetzen wird. Den Unterschied zwischen PoW und PoS habe ich bereits beantwortet. Was ist der Unterschied zwischen Proof of Stake und Proof of Work?

Ethereum versucht, PoS mit seinem neuen PoS-Protokoll namens Casper einzuschalten, es ist eine Funktion, die besagt, dass der böswillige Validator (im Falle von PoS wird Miner als Validator bezeichnet), der den Block validiert, Geld verliert, wenn er/sie einen böswilligen validiert Block, der nicht richtig ist. Wenn ein Validator in PoS einen Algo oder Block validiert, setzt er einfach etwas Geld oder Einsatz, um diesen Block zu validieren, Sie können es nicht zurückbekommen, bis der Block validiert ist, oder Sie können tatsächlich Ihr Geld verlieren, das zur Lösung dieses Blocks eingesetzt wird, falls Sie validieren einen falschen Block im Casper-Update.

Vorteile des Casper-Protokolls

  1. PoS ist für einen Validator schneller, um einen Block zu validieren und auf einen Block zu setzen, im Vergleich zu PoW (Proof of Work), das ein kryptografisches Rätsel löst, um den Block in die Blockchain einzufügen. Wenn PoS schneller ist, wird die gesamte Blockchain schneller und skalierbarer. Dieses Casper-Update kann Ethereum für die weltweite Einführung bereit machen.

  2. Wenn im Proof of Work jemand Mächtiges (mit leistungsstarken CPUs oder GPUs) versucht, das System zu täuschen, wird er/sie nicht wirklich bestraft, aber im Proof of Stake (Casper Protocol), wenn jemand versucht, mit der Blockchain herumzuspielen, selbst wenn er es ist leistungsstark (mit CPUs oder GPUs), verlieren sie ihr Geld, wenn sie Validator sind und ihren Einsatz gesperrt haben, um einen Block in diesem Protokoll zu validieren.