Eine digitale Festung bauen. Das Bitcoin-Konsensprotokoll.

Free Bitcoins: FreeBitcoin | BonusBitcoin

Coins Kaufen: Bitcoin.deAnycoinDirektCoinbaseCoinMama (mit Kreditkarte)Paxfull

Handelsplätze / Börsen: Bitcoin.de | KuCoinBinanceBitMexBitpandaeToro

Lending / Zinsen erhalten: Celsius NetworkCoinlend (Bot)

Cloud Mining: HashflareGenesis MiningIQ Mining


In einem früheren Artikel habe ich einige technische Aspekte des Bitcoin-Mining angesprochen und erklärt, was Mining ist und wie es funktioniert. Insbesondere ging ich auf den Begriff der Blockchain ein und erläuterte, wie der Mining-Prozess verwendet wird, um eine solche Kette mit neuen Blöcken zu verlängern, die die neuen Transaktionen enthalten, die innerhalb des Netzwerks stattfinden.

Bei der Vorstellung dieser Konzepte habe ich jedoch nicht erklärt, warum Bitcoin überhaupt eine Blockchain benötigt, warum diese Blockchain unter den verschiedenen Teilnehmern des Bitcoin-Netzwerks geteilt wird und welche Regeln diese Teilnehmer für die verschiedenen Operationen einhalten müssen ( (z. B. Mining selbst), um im gesamten Netzwerk reibungslos zu funktionieren.

In diesem Artikel möchte ich diese Lücken schließen, indem ich die Konzepte von verteiltes Hauptbuch, Blockchain-Sicherheit und consesnsus-Protokoll. Obwohl diese Begriffe im Zusammenhang mit Bitcoin eingeführt werden, sind sie nicht unbedingt darauf beschränkt.

Lassen Sie uns zunächst sagen, was ein Hauptbuch ist. Ein Hauptbuch ist ein (physisches oder digitales) Aufzeichnungsbuch, in dem die Geldtransaktionen zwischen Personen und / oder Institutionen aufgezeichnet werden. Traditionell wird dieses Hauptbuch in den Händen von a anvertraut Zentralbehörde (die Bank), die es sich zur Aufgabe macht, die Aufzeichnungen bei jeder neuen Transaktion zu aktualisieren. Es versteht sich von selbst, dass das Vertrauen, das einer solchen zentralen Behörde entgegengebracht wird, immens ist und, wie die Geschichte gezeigt hat, nicht immer gut platziert ist. Darüber hinaus kann ein externer Angriff, der darauf abzielt, dieses zentralisierte Hauptbuch zu manipulieren, zu schrecklichen Konsequenzen führen, wobei enorme Geldmengen gestohlen werden.

Abbildung 1 – Vergleich zwischen zentralisierten (links) und verteilten (rechts) Architekturen. Eine verteilte Architektur ist besser in der Lage, böswilligen Angriffen standzuhalten, da sie im Gegensatz zur zentralisierten Architektur keinen einzigen Ausfallpunkt aufweist.

Umgekehrt ist ein verteiltes Hauptbuch ein Protokollbuch, von dem alle Teilnehmer eines Netzwerks eine Kopie haben. Allein diese Eigenschaft macht das verteilte Hauptbuch im Allgemeinen sicherer als sein zentrales Gegenstück. Der Grund dafür ist, dass Manipulationen an einem oder auch nur wenigen Exemplaren nicht zwangsläufig zu einer irreversiblen Beeinträchtigung des Inhalts führen. Da es verteilt ist, verfügt das Hauptbuch nicht über eine einzige Fehlerquelle, sodass es für Angriffe robuster ist. Diese Tatsache ist sehr intuitiv und stellt unseren ersten Schritt dar, um zu verstehen, warum Bitcoin eine verteilte Architektur hat. Eine verteilte Architektur an und für sich garantiert jedoch keine vollständige Immunität gegen Angriffe, und wir fragen uns möglicherweise, wie wir verhindern können, dass auch nur eine Kopie des verteilten Hauptbuchs wie ein Virus über das Netzwerk verbreitet wird alle anderen Kopien kompromittieren? "

Um diese Frage zu beantworten, müssen wir den Begriff von einführen Konsensprotokoll.

Ein Konsensprotokoll ist ein Satz von Regeln, die regeln, wie die Teilnehmer eines Netzwerks miteinander interagieren und mögliche Konflikte lösen, unabhängig davon, ob diese von außerhalb oder von innerhalb des Netzwerks selbst stammen. In der Welt der Kryptowährungen gibt es zwei Hauptkonsensprotokolle: Arbeitsnachweis (PoW) und Nachweis des Einsatzes (PoS). In diesem Artikel konzentrieren wir uns auf PoW, das vom Bitcoin-Netzwerk angenommene Konsensprotokoll.

Im Allgemeinen dient ein Konsensprotokoll zwei Zwecken:

  1. Schutz des Netzwerks vor Angriffen (wodurch die Integrität des Hauptbuchs geschützt wird)
  2. Beheben von Inkonsistenzen zwischen verschiedenen Versionen des Ledgers, die aufgrund der vom Netzwerk selbst ausgeführten normalen Vorgänge auftreten können.

Im Folgenden versuche ich zu erklären, wie das PoW-Konsensprotokoll von Bitcoin diese beiden Probleme angeht.

Wie wir bereits in meinem Artikel über den Bergbau gesehen haben, ist das verteilte Hauptbuch von Bitcoin als eine Kette von Blöcken strukturiert. Neue Transaktionen werden im Hauptbuch erfasst, indem sie zu neuen Blöcken hinzugefügt werden. Wichtig ist, dass am Ende der vorhandenen Kette ein neuer Block angehängt wird erst nach dem Lösen eines kryptografischen Puzzles Dies erfordert eine vorgegebene Menge an Rechenleistung (was wiederum erhebliche finanzielle Kosten für die benötigte Energie mit sich bringt). Die Lösung für dieses Rätsel besteht darin, eine Zahl mit dem Namen zu finden hash, dass (i) einen kryptografischen Fingerabdruck des neuen Blocks darstellt und gleichzeitig (ii) ein recht strenges Kriterium erfüllt (d.h. sein Wert muss unter einem bestimmten Schwellenwert liegen). Wer das kryptografische Rätsel für den neuen Block löst und damit einen erheblichen Arbeitsaufwand nachweist, wird mit einer bestimmten Anzahl von Bitcoins zuzüglich der Gebühren für die im neuen Block enthaltenen Transaktionen vergütet.

Motiviert durch die Aussicht auf diese Vergütung haben eine Reihe verschiedener Akteure im Bitcoin – Netzwerk (genannt Minenarbeiter) Nimm an einem Rennen teil, bei dem jeder Teilnehmer versucht, das kryptografische Rätsel zu lösen – oder, wie allgemein gesagt, es zu versuchen Bergwerk der neue block – vor den anderen. Sobald ein Bergmann das Rätsel löst, wird der entsprechende neue Block zur Blockchain hinzugefügt, der gewinnende Bergmann erhält seine Vergütung, und alle Bergleute (einschließlich des siegreichen) beginnen das Rennen erneut, um das neue kryptografische Rätsel zu lösen, das mit verbunden ist der nächste neue Block.

Woher weiß das Netzwerk nun, ob der gewinnende Bergmann die Transaktionen in dem gerade abgebauten Block gefälscht hat?

Machen wir einen Schritt zurück. Sobald ein neuer Block abgebaut ist, fügt der Gewinner den Block seiner Kopie des Hauptbuchs hinzu und sendet diese aktualisierte Version der Blockchain über das Netzwerk. Wenn die anderen Knoten (Miner oder nicht) diese aktualisierte Version erhalten, führen sie eine lange Reihe von Überprüfungen der im neuen Block enthaltenen Transaktionen durch. Wenn irgendein dieser Transaktionen schlägt fehl irgendein Bei diesen Überprüfungen wird der Block vom Netzwerk abgelehnt, und der "gewinnende" Miner wird nicht für das Mining des ungültigen Blocks vergütet. Das Schlüsselkonzept dabei ist, dass die Bergleute bei diesem Bergbaurennen viel Energie einsetzen müssen, um neue Blöcke abzubauen. Diese einfache Tatsache verhindert jeden Versuch, Transaktionen zu fälschen, da dies dazu führen würde, dass der gesamte Block vom Netzwerk abgelehnt wird, was zu erheblichen Kosten führt, die von keiner Vergütung gedeckt werden.

Was ist, wenn jemand versucht hat, einen Block zu manipulieren, der nicht der letzte in der Kette ist, beispielsweise um eine alte Transaktion zu entfernen oder zu ändern?

Ein solcher Angriff wäre noch schwieriger und teurer. Wie wir aus meinem Artikel über Mining wissen, enthält jeder Block in der Blockchain einen Verweis auf den Hash (den Fingerabdruck) des vorherigen Blocks. Wenn ein Angreifer einen alten Block ändert und erneut abbaut, stellt das Netzwerk schnell fest, dass sich der Hash eines solchen beschädigten Blocks geändert hat, da er nicht mehr der Referenz im nächsten Block entspricht. Folglich wird die beschädigte Version der Blockchain, die der Angreifer zu senden versucht, vom Netzwerk zurückgewiesen.

Die einzige Alternative wäre, dass der Angreifer nicht nur den Zielblock, sondern auch alle nachfolgenden Blöcke erneut abbaut, um die Konsistenz der Hashs zwischen den Blöcken aufrechtzuerhalten nur dann sendete seine Version der Kette. Das erneute Mining aller Blöcke, die dem Zielblock in der Kette folgen, würde jedoch eine beträchtliche Menge an Zeit (mit der damit verbundenen Arbeit, Energie und Kosten) erfordern, während derer der Rest des Netzwerks die nicht beschädigte Version von verlängern würde Hauptbuch. Dies würde letztendlich dazu führen, dass das Netzwerk zwei Versionen der Blockchain hat, eine kürzere (die vom Angreifer gestörte) und eine längere (die nicht gestörte). Wie wir später sehen werden, bevorzugt das Consensus-Protokoll die längste Version und entfernt die andere (n) aus dem Netzwerk, wenn es zwei oder mehr konkurrierende Versionen der Blockchain gibt.

Die Energiemenge und die damit verbundenen Geldkosten für einen solchen Angriff wären für einen einzelnen Angreifer oder sogar eine kleine Gruppe von Angreifern unerschwinglich. Auch ihre Erfolgschancen wären angesichts der Größe und der Hashing-Leistung, die das Bitcoin-Netzwerk erreicht hat, praktisch Null. Folglich, wenn die Leute sagen, dass das Bitcoin-Netzwerk Abfälle viel energie geben sie keine genaue aussage. Was das Bitcoin-Netzwerk macht, ist mit viel Energie, um die Sicherheit des Hauptbuchs vor Angriffen zu gewährleisten, die darauf abzielen, es zu korrumpieren. Es sollte jedoch beachtet werden, dass die Erfolgsaussichten einer Gruppe von Angreifern umso größer sind, je mehr Haschkraft sie einsetzen können. Sammeln die Angreifer mehr als die Hälfte der Hashing-Leistung des gesamten Netzwerks, sind ihre Erfolgsaussichten größer als ihre Misserfolgschancen. Dieses Szenario ist bekannt als der 51% Angriff und werden in einem speziellen Artikel behandelt.

Manchmal ist es möglich, dass mehr als eine Version der Blockchain im Netzwerk vorhanden ist. Dies kann nicht nur als Ergebnis eines Angriffs geschehen, wie zuvor erläutert, sondern auch als Folge einer normalen, nicht böswilligen Mining-Aktivität. Wie bereits erwähnt, wird diese aktualisierte Version der Kette sofort an den Rest des Netzwerks gesendet, wenn ein Bergmann das kryptografische Rätsel für einen neuen Block löst und diesen Block zu seiner Kopie des Hauptbuchs hinzufügt. Die Übertragung dauert einige Sekunden bis einige Minuten. Jetzt:

Was passiert, wenn zwei Bergleute zwei neue Blöcke unabhängig voneinander und ungefähr zur gleichen Zeit abbauen?

In diesem Fall gäbe es zwei konkurrierende Versionen der Blockchain, Version A und Version B, von denen eine begonnen hatte, sich zu verbreiten, bevor die andere fertig war. Jede dieser beiden Versionen erreicht die verschiedenen Knoten des Netzwerks zu geringfügig unterschiedlichen Zeiten. Einige der Knoten erhalten Version A vor Version B und andere Knoten erhalten Version B vor Version A, aber innerhalb einer angemessen kurzen Zeit werden alle Knoten beide Versionen haben. Wichtig ist, dass diejenigen Knoten, die zuerst Version A erhalten haben, Version A als ihren Lieblingskandidaten behandeln. In ähnlicher Weise betrachten Knoten, die zuerst Version B erhalten haben, Version B als ihren Lieblingskandidaten. Die Frage ist nun, welche Version der anderen vorgezogen und welche fallengelassen werden soll. Um diesen Konflikt zu lösen, warten die Netzwerke darauf, dass einer der beiden konkurrierenden Ketten ein weiterer neuer Block hinzugefügt wird. Die Version der Kette, die zuerst durch Hinzufügen dieses neuen zusätzlichen Blocks verlängert wird, gewinnt den Konsens des Netzwerks. Der mit diesem Konsensmechanismus verbundene Ausdruck lautet „Die längste Kette ist König“. Genauer gesagt ist die Wahrscheinlichkeit, dass eine Kette die andere gewinnt, proportional zur Gesamthashing-Kraft der Bergleute, die diese bestimmte Kette als ihren Lieblingskandidaten haben. Der Grund ist, dass jeder Bergmann versucht, die erste Kette, die er erhält, zu verlängern, während der andere in der Warteschleife bleibt, bis ein Konsens erreicht ist.

Free Bitcoins: FreeBitcoin | BonusBitcoin

Coins Kaufen: Bitcoin.deAnycoinDirektCoinbaseCoinMama (mit Kreditkarte)Paxfull

Handelsplätze / Börsen: Bitcoin.de | KuCoinBinanceBitMexBitpandaeToro

Lending / Zinsen erhalten: Celsius NetworkCoinlend (Bot)

Cloud Mining: HashflareGenesis MiningIQ Mining

By continuing to use the site, you agree to the use of cookies. more information

The cookie settings on this website are set to "allow cookies" to give you the best browsing experience possible. If you continue to use this website without changing your cookie settings or you click "Accept" below then you are consenting to this.

Close