Zum Inhalt springen
buybitcoinsmart

Glossar / Mining und Konsens

Kettenreorganisation

Auch bekannt als Kettenreorganisation, Reorg, Blockchain-Reorganisation.

Was ist eine Kettenreorganisation?
Eine Kettenreorganisation liegt vor, wenn Ihr Node einen Zweig mit mehr aufsummierter Arbeit entdeckt, die von ihm akzeptierten Blöcke abtrennt und die Spitze entlang des neuen Zweigs neu aufbaut.

Nodes folgen nicht der Kette, die sie zuerst gesehen haben. Sie folgen derjenigen mit dem meisten Proof of Work, und wenn ein besserer Zweig auftaucht, rollen sie bis zum Abzweigungspunkt zurück und spielen von dort vorwärts. Fast jede Reorganisation in der Hauptkette von Bitcoin ist einen Block tief und ist in Sekunden beendet; die tiefste je verzeichnete mit 24 Blöcken im März 2013 wurde von einem Softwarefehler und nicht von einem Angreifer verursacht.

Wie das funktioniert

Eine Kettenreorganisation besteht aus drei Schritten, und ein Node führt alle drei selbstständig aus, ohne jemanden zu fragen.

Zuerst geht er von seiner aktuellen Spitze bis zum letzten Block zurück, den beide Zweige gemeinsam haben, und macht dabei jeden Block rückgängig: Ausgaben, die dieser Block erzeugt hat, werden aus der Menge der nicht ausgegebenen Ausgaben entfernt, Ausgaben, die er verbraucht hat, werden wiederhergestellt, und seine Transaktionen kehren in den Mempool zurück. Dann verbindet er die Blöcke des konkurrierenden Zweigs der Reihe nach und validiert jeden einzelnen genau so, als wäre er gerade erst eingetroffen. Zuletzt berechnet er den Mempool neu, verwirft alles, was inzwischen bestätigt ist, und behält alles, was nicht bestätigt ist.

Der zweite Schritt ist der Ort, an dem die Sicherheit liegt. Mehr Arbeit ist notwendig, aber nicht ausreichend. Wenn ein Block des herausfordernden Zweigs auch nur eine einzige Konsensprüfung nicht besteht, hält der Node an, markiert diesen Zweig als ungültig und behält die Kette, die er bereits hatte. Ein Miner mit unbegrenzter Hashrate kann einen Node trotzdem nicht dazu bringen, einen Block zu akzeptieren, der sich selbst zu viel auszahlt oder eine Ausgabe zweimal ausgibt.

Die Regel lautet meiste aufsummierte Arbeit, nicht längste Kette. Die Arbeit wird aus der Schwierigkeit summiert, mit der jeder Block gemint wurde, sodass ein Zweig mit weniger Blöcken, die bei einer höheren Schwierigkeit gemint wurden, eine längere übertreffen kann. Bei Bitcoin fallen die beiden Maße fast immer zusammen, weil sich die Schwierigkeit nur alle 2.016 Blöcke ändert.

Die Tiefe ist es, was Routine von Alarmierendem trennt. Ein Block Tiefe ist normale Aufräumarbeit. Bitcoin Core behandelt alles Nennenswerte als berichtenswert und gibt eine Warnung vor einem Zweig mit großer Arbeit an den Betreiber aus, wenn er sieht, dass ein konkurrierender Zweig mehr als sechs Blöcke von der aktiven Kette abweicht.

Warum das beim Bitcoin-Kauf wichtig ist

Die Zahl der Bestätigungen ist eine Wette auf die Tiefe einer Reorganisation, und jede Plattform, die Sie nutzen, hat still und leise eine in Ihrem Namen platziert.

Eine Börse, die eine Einzahlung nach drei Blöcken gutschreibt, hat entschieden, dass eine Umkehr über drei Blöcke nicht wert ist, abgesichert zu werden. Eine, die sechs Blöcke abwartet, hat das Risiko höher bepreist. Keine der beiden Zahlen stammt aus dem Protokoll; beide sind Vorgaben des Anbieters, weshalb dieselbe Einzahlung auf der einen Plattform in zwanzig Minuten gutgeschrieben wird und auf einer anderen in über einer Stunde. Wenn Sie Bitcoin zwischen den Börsen bewegen, die diese Website bewertet, lohnt es sich, diesen Unterschied zu prüfen, bevor Sie annehmen, dass etwas schiefgelaufen ist.

Ihre Schlüssel bleiben von all dem unberührt. Eine Reorganisation kann ändern, welche Transaktionen in der Kette sind und in welcher Reihenfolge, aber sie kann keine Signatur erzeugen, sodass Bitcoin in einer Wallet, die Sie selbst steuern, nicht zur Exposition gehören. Im Wirkungsbereich liegt Wert in Bewegung: eine Einzahlung, die gutgeschrieben, aber noch nicht tief eingebettet ist, eine Zahlung, die Sie für Waren angenommen haben, ein Peer-to-Peer-Geschäft, bei dem Sie Guthaben gegen eine einzige Bestätigung herausgegeben haben.

Die Geschichte liefert eine lehrreiche Warnung. Am 4. Juli 2015 bauten mehrere große Pools auf Blöcken, die sie nicht validiert hatten, eine Praxis, die als SPV-Mining bekannt ist, und erzeugten eine Kette aus sechs Blöcken, die sich als ungültig erwies. Bitcoin.org veröffentlichte eine Warnung, in der Nutzern geraten wurde, 30 Bestätigungen abzuwarten, bis sich die Lage geklärt habe. Die Lehre war nicht, dass Bitcoin fragil ist; sie war, dass die benötigte Tiefe davon abhängt, was gerade schiefgeht, und dass eine Bestätigung niemals viel ist.

Wenn Sie auch kleinere Proof-of-Work-Coins halten, behandeln Sie deren Reorganisationsgeschichte als eine völlig getrennte Frage. Börsen verlangen weit mehr Bestätigungen für Ketten, die tatsächlich reorganisiert wurden, und diese Anforderung ist ein nützliches öffentliches Signal dafür, wie sicher eine Kette wirklich ist.

Die Reorganisation über 24 Blöcke im März 2013

Die tiefste Reorganisation, die die Hauptkette von Bitcoin je durchgemacht hat, wurde dadurch verursacht, dass zwei Versionen der Software sich über einen Block uneinig waren, den beide hätten akzeptieren müssen.

Bitcoin 0.8, veröffentlicht im Februar 2013, ersetzte die Speicher-Engine Berkeley DB durch LevelDB. Am 11. März traf Block 225.430 mit einer ungewöhnlich großen Zahl von Eingaben ein. Nodes mit 0.8 akzeptierten ihn. Nodes mit 0.7 stießen auf ein Sperrlimit von Berkeley DB, über das hinaus sie nie konfiguriert worden waren, und lehnten ihn ab. Das Netzwerk spaltete sich in zwei Teile, wobei jede Seite völlig sicher war, dass die andere falsch lag.

Entwickler koordinierten sich innerhalb einer Stunde über IRC und trafen eine unangenehme Entscheidung: Sie baten die Pools, auf 0.7 zurückzugehen und damit bewusst den Zweig mit mehr Arbeit aufzugeben, weil dieser Zweig derjenige war, dem eine Mehrheit der laufenden Nodes nicht folgen konnte. Die Spaltung dauerte etwa sechs Stunden. Als die 0.7-Kette überholte, reichte der verworfene Zweig bis 24 Blöcke. Ein Zahlungsabwickler, OKPay, meldete, in diesem Zeitfenster doppelt ausgegeben worden zu sein.

Die Korrektur kam Tage später mit 0.8.1, wodurch neue Nodes das alte Limit nachahmten, bis zu einem koordinierten Umstellungstermin. BIP50 dokumentiert den gesamten Vorfall ausführlich und ist die beste Lektüre dazu, wie Bitcoin mit einem echten Notfall umgeht. Es ist auch der Grund, warum die tiefste Reorganisation in der Geschichte von Bitcoin eine Geschichte über die Konfiguration einer Datenbank und nicht über Mining-Leistung ist.

Kettenreorganisation vs. Hard Fork

Eine Kettenreorganisation findet innerhalb eines Regelwerks statt und endet damit, dass alle wieder auf derselben Kette sind. Ein Hard Fork ändert die Regeln so, dass die beiden Zweige nie wieder zusammengeführt werden können, und beide wachsen als getrennte Werte weiter, was am 1. August 2017 mit Bitcoin Cash geschah. Das eine ist eine vorübergehende Uneinigkeit darüber, welche gültige Kette die beste Kette ist. Das andere ist eine dauerhafte Uneinigkeit darüber, was gültig bedeutet.

Kettenreorganisation vs. Doppelausgabe

Eine Reorganisation ist ein Mechanismus; eine Doppelausgabe ist eine Sache, die man damit tun könnte, und selten das, was tatsächlich passiert. Die überwiegende Mehrheit der Reorganisationen mint einfach dieselben Transaktionen in einem anderen Block erneut, sodass sich die Zahlung für niemanden ändert. Eine Umkehr erfordert, dass der gewinnende Zweig eine konkurrierende Transaktion enthält, die der Angreifer absichtlich dort platziert hat, was entweder enorme Hashrate oder außergewöhnliches Glück bedeutet. Günstigere Versuche der Doppelausgabe beinhalten überhaupt keine Reorganisation, weil sie auf Zahlungen abzielen, die von vornherein nie bestätigt wurden.

Nicht zu verwechseln mit

Häufig gestellte Fragen

Wie tief kann eine Bitcoin-Reorganisation werden?

In der Praxis ein Block. Die tiefste Reorganisation der Hauptkette von Bitcoin waren 24 Blöcke im März 2013, verursacht durch eine Datenbank-Inkompatibilität zwischen zwei Versionen der Software und nicht durch Mining-Leistung, und nichts Vergleichbares ist seitdem geschehen.

Kann eine Reorganisation Bitcoin aus meiner Wallet holen?

Nein. Eine Reorganisation ändert, welche Transaktionen in der Kette sind und in welcher Reihenfolge, und sie kann Coins nicht ohne Ihre Signatur bewegen. Die Gefahr betrifft Zahlungen, die Sie erhalten haben, die aber noch nicht unter mehreren Blöcken begraben sind.

Warum warten Kryptobörsen mehrere Bestätigungen ab, bevor sie eine Einzahlung gutschreiben?

Weil jeder zusätzliche Block eine Umkehr, die Ihre Einzahlung entfernt, weit unwahrscheinlicher macht. Das Warten verschafft der Plattform einen Sicherheitspuffer, weshalb die Zahl eine Richtlinienentscheidung ist, die sich zwischen Kryptobörsen unterscheidet, und keine Regel des Protokolls.

Weiterlesen

Verwandte Begriffe

Mehr zum Thema Mining und Konsens

Diese Seite auf Englisch lesen