Blockchain-Grundlagen - Verwaiste (orphan) Blöcke
In diesem Artikel werden wir über verwaiste Blöcke sprechen, die auch als veraltete Blöcke bekannt sind. Verwaiste Blöcke kommen von Zeit zu Zeit bei den meisten Proof-of-Work-Blockchains vor. Aber warum passieren sie und was sind sie?
Bevor Sie fortfahren, empfehle ich dringend diesen Artikel über Proof of Work und seine Funktionsweise zu lesen. Dadurch erhalten Sie ein besseres grundlegendes Verständnis von Mining und insbesondere Einweg-Hash-Funktionen (Hashing).
Zusammenfassung vom Proof of Work
Proof of Work basiert auf Einweg-Hash-Funktionen. Einweg-Hash-Funktionen ermöglichen es uns, eine unendliche Datenmenge in eine Ausgabe mit fester Größe namens Hash zu „hashen“ oder zu „komprimieren“. Im Blockchain-Fall sind Eingabedaten Transaktionen, während Ausgabedaten eine Hash-Ausgabe sind.
Sobald der Miner die richtigen Ausgabedaten (Hash) findet, wird der Transaktionsblock bestätigt und der Block an das Netzwerk übermittelt. Wenn Sie einen etwas technischeren Artikel über den Proof of Work möchten, können Sie ihn gerne hier lesen.
Laienhaft ausgedrückt lösen die Miner eine mathematische Funktion, der erste, der das Problem richtig löst, wird die Lösung an die Knoten auf der ganzen Welt senden und die Blockbelohnung für die Lösung des Problems erhalten Es ist wichtig zu beachten, dass die Übertragung der Lösung im gesamten Netzwerk einige Zeit in Anspruch nehmen kann.
Was passiert also, wenn zwei Miner gleichzeitig oder ungefähr gleichzeitig die richtige Lösung finden? Die Kette wird in zwei Ketten aufgeteilt. Sobald die längste Kette gefunden ist, werden die anderen Blöcke zu verwaisten (orphan) Blöcken.
Was ist ein verwaister Block?
Orphan Block ist ein Begriff, der von der Allgemeinheit verwendet wird, aber in technischen Dokumenten wird er als veralteter Block bezeichnet. Ein Orphan-Block wird erstellt, wenn zwei Miner (oder mehr) gleichzeitig die Lösung finden.
Da jeder Miner die Lösung an das Netzwerk sendet und das Netzwerk einige Momente zum Synchronisieren benötigt, wird es für kurze Zeit zwei Blockchains geben. Jeder Teil der Blockchain wird denken, dass seine Lösung zuerst gefunden wurde und die Lösung ist, die primär verwendet werden sollte. In der Realität sind beide Lösungen gültig.
Sobald die neue Blockchain aktiv ist, beginnt das „Wettrennen“ zwischen beiden Ketten. Welche Kette die längere Kette haben wird, wird die Hauptkette sein.
Detailierte Erklärung
Man kann sich das so vorstellen, als würde ein Miner in den USA gleichzeitig mit einem Miner in Europa den Block bestätigen. Die Knoten in den USA würden höchstwahrscheinlich zuerst vom USA-Miner synchronisiert und die Knoten in Europa würden zuerst vom Europa-Miner synchronisiert. Zu diesem Zeitpunkt würden zwei Blockchains gleichzeitig laufen. Dies zeigt das folgende Bild. US-Knoten verwenden den vom USA-Miner bestätigten Block, während die europäischen Knoten die von den europäischen Knoten bestätigten Blöcke verwenden. Die Ketten kommunizieren nicht miteinander.
Wenn wir uns das obige Beispiel ansehen, laufen auf den Knoten zwei gleichzeitige Blockchains, aber die Blockchain regelt, dass die längste Kette die richtige/Hauptkette ist. Dies bedeutet, dass die nächsten Blöcke, die entweder von „Seite“ oder Kette gefunden werden, entscheidend sind. Wenn die nächsten Blöcke auf der europäischen Seite schneller bestätigt werden und es weniger bestätigte Lösungen auf der USA-Seite gibt, gilt die europäische Kette als die längste, somit gilt der Block auf der USA-Blockchain als verwaister Block.
Normalerweise ist die Kette mit der höchsten Hashrate die Hauptkette, da die Blöcke dort schneller gefunden werden.
Niemand kann wissen, ob der Block verwaist ist, bis die längste Kette entschieden ist.
Werden Miner für verwaiste Blöcke bezahlt?
Das hängt von der Blockchain ab. Einige Blockchains zahlen für verwaiste Blöcke. Bevor Ethereum zum Proof of Stake ging, belohnte es die Miner für verwaiste Blöcke, aber die Belohnung war niedriger als die Belohnung für normale Blöcke.
Es gibt zu viele Blockchains, um sie hier alle aufzulisten, aber im Allgemeinen neigen Blockchains mit sehr schnellen Blockzeiten dazu, verwaiste Blöcke auf die eine oder andere Weise zu belohnen. Allerdings nicht unbedingt.
Die gängigsten Blockchains, die keine verwaisten Blöcke belohnen und auch von NiceHashs EasyMining verwendet werden sind:
- Bitcoin (BTC)
- Bitcoin Cash (BCH)
- Dogecoin (DOGE)
- Litecoin (LTC)
- Zcash (ZEC)
Was passiert mit den Transaktionen in den verwaisten Blöcken?
Transaktionen in den verwaisten Blöcken werden nicht auf der Hauptkette verarbeitet. Das bedeutet, dass die Transaktion verworfen wird, wenn der Block, der die Transaktion enthält, verwaist ist. Das Wallet-Guthaben des Absenders ist dasselbe, wie vor der Überweisung des Geldes und die Ziel-Wallet sieht keine eingehenden Gelder. Die Transaktion könnte jedoch tatsächlich in die beiden konkurrierenden Ketten (beide Blöcke) aufgenommen werden. In diesem Fall wird die Transaktion trotzdem verarbeitet.
Treten Sie, wie immer unserer Reddit Seite und unserem Discord Server bei!