In diesem Artikel erfährst du alles über das Bitcoin Mining. Es enthält Erklärungen zum Bitcoin Halving, der Bitcoin Geldmenge, dem Proof-of-Work Algorithmus, Forks und Hash-Funktionen.
Ganz unten gibt es nützliche Quellenangaben zu den Themen.
Bitcoin Mining Einleitung
Mining dient zwei zentralen Aspekten im Bitcoin-System.
-
Zum einen ist es der einzige Weg neue Bitcoins zu schöpfen und dem System hinzuzufügen.
-
Zum anderen fungiert der Prozess als Validierung der Transaktionen und verhindert so das Double-Spending-Problem. Das Mining ist dafür als Zeitstempel-Server organisiert, der die zeitliche Abfolge der Transaktionen aufzeichnet und richtig einordnet.
Bitcoin Mining hat mit dem klassischen Bergbau nichts zu tun. 😉
Um den Begriff des Mining greifbar und in den Kontext richtig einzuordnen, vergleicht Andreas Antonopoulos den Prozess mit dem Fördern von Edelmetallen oder dem Drucken von Banknoten der Zentralbanken. Im Deutschen kann von dem Schürfen bzw. dem Finden eines Blocks gesprochen werden.
Bitcoin Kontrollierte Geldmenge
Am 28.11.2012 bzw. Blocknummer 210000 fand das erste Halving statt. Die Belohnung für das Finden eines Blocks fiel von 50 BTC auf 25 BTC.
Seit dem 11.05.2020 bzw. Block 630000 ist die Blockvergütung für das Schürfen eines Blocks von 12,5 BTC auf 6,25 BTC gefallen.
Mehr zum Bitcoin Halving oder hier
Zum Zeitpunkt des dritten Halving sind bereits 18.375.000 von 21.000.000 BTC im Umlauf.
Der jährliche Zufluss von BTC ist für die nächsten vier Jahre 328.125 BTC, was einer Inflationsrate von 1,79 bis 31,69 Prozent der nächsten Jahre entspricht.
Bei Block 840.000 wird die Blockvergütung dann auf 3,125 BTC halbiert.
Theoretisch verfügbare Geldmenge
Die theoretisch verfügbare Menge an BTC darf nicht mit der tatsächlichen verfügbaren Menge verwechselt werden. BTC können durch Verlust des privaten Schlüssels unbenutzbar werden. Eine Wiederherstellung des privaten Schlüssels ist nicht möglich, sodass eine sichere und verantwortungsbewusste Lagerung jenes wichtig ist.
Diese Verluste von BTC werden durch eine Verlustrate beschrieben, die durch die Dezentralität nicht erfassbar ist. Die Verlustrate sorgt dafür,dass Bitcoin einen deflationären Charakter aufweist, der spätestens mit dem Ende der BTC-Schöpfung im Jahre 2140 ansetzt.
Miner und PoW-Algorithmus
Die Betreiber von Mining-Knoten werden Miner genannt. Miner sorgen für die Sicherheit des Systems und erhalten als Anreiz dafür neu geschöpfte BTC und die freiwillige Transaktionsgebühr. Bitcoin benutzt die SHA256 Hash-Funktion und den PoW-Algorithmus für das Mining. Die Miner treten dabei in einem Wettkampf gegeneinander an, um als Erster die Lösung zu einem mathematischen Problem zu finden.
Bitcoin Mining im Detail
Der Miner berechnet den Hash-Wert des Block Headers, indem er die sechs Felder des Block Header, Version, voriger Block Header, Merkle Root, Zeitstempel, Schwierigkeit und Nonce zusammenrechnet.
Bitcoin Difficulty
Um das Problem erfolgreich zu lösen, muss der Hash-Wert des Block Headers unterhalb eines vorgegebenen Zielwertes (Difficulty target) liegen. Der Zielwert wird dabei über die Schwierigkeit gesteuert.
Difficulty Anpassung
Steigt die Schwierigkeit, sinkt der Zielwert, sodass es schwieriger wird einen passenden Block Header Hash zu berechnen. Die Schwierigkeit wird alle 2016 Blöcke angepasst, sodass die Blockzeit auch bei steigender oder fallender Gesamthashleistung gleich bleibt.
Blockzeit Bitcoin
Die Bitcoin Blockzeit beschreibt die Dauer für die Bestätigung einer Bitcoin-Transaktion.
Sie liegt bei ungefähr 10 Minuten. Dies ist ein angestrebter Richtwert, der von Satoshi Nakamoto bestimmt wurde.
- Steigt die Bitcoin-Hashrate, dann sinkt die Blockzeit unter 10 Minuten
- Fällt die Bitcoin-Hashrate, dann steigt die Blockzeit über 10 Minuten
Die Difficulty-Anpassung sorgt dann dafür, dass der Richtwert von 10 Minuten pro Block eingehalten wird.
Proof-Of-Work: Finden des richtigen Hash-Wertes
Der Miner kann über das Verändern der Nonce den Hash-Wert anpassen. Die Nonce ist eine zufällige Zahl und standardmäßig null.
Durch die Eigenschaften einer Hash-Funktion bewirkt eine kleine Änderung an der Nonce eine beliebige Änderung beim Hash-Wert. Das Hash-Ergebnis kann weder im Voraus bestimmt, noch kann ein Muster erstellt werden, dass einen speziellen Hash-Wert produziert.
Nur über Probieren kann die Lösung zum Finden eines Blocks erzwungen werden und somit der rechnerische Arbeitsnachweis (Proof-Of-Work) erbracht werden. Je größer die eingesetzte Rechenleistung, desto wahrscheinlicher ist das zufällige Finde des richtigen Hash-Wertes.
Neuer Bitcoin Block gefunden
Nachdem ein Miner für einen Block das passende Hash-Ergebnis „gefunden“ hat, wird ein neuer gültiger Block an den vorigen angehängt und die Nachricht im Netzwerk verteilt. Erhält ein Miner eine solche Nachricht, bevor er selbst einen Block gefunden hat, verwirft er seine aktuellen Berechnungen, erkennt den gefunden Block als gültig an und startet sofort das Mining nach dem nächsten Block. Dieser Vorgang wiederholt sich und beginnt immer wieder von neuem.
Ein Knoten benötigt im Durchschnitt 6,5 Sekunden (arithmetische Mittel 12,6 Sekunden), um die Information über das Finden eines Blocks im Netzwerk zu erhalten. Nach 40 Sekunden haben 95% der Knoten diese Information erhalten.
Forks im Bitcoin Mining
Durch die dezentrale Datenstruktur der Blockchain kann es passieren, dass mehrere Miner gleichzeitig einen Block gefunden haben bevor die Nachricht über das Finden des jeweils ersten Blocks über das Netzwerk sie erreicht hat. Die Folge sind sogenannte Blockchain-Gabeln.
Eine Gabel, im Folgenden mit dem englischen Begriff Fork beschrieben, ist eine Aufteilung der Blockchain in zwei oder mehrere parallel laufende Ketten.
Die Miner schließen sich nun jener Kette an, von der sie als erstes den Block erhalten haben und beginnen den Wettkampf für den nächsten Block.
Der Mining-Konsens stellt sicher, dass die Kette mit der höheren Hash-Rate sich gegen die Kette mit der niedrigeren Hash-Rate in der Folgezeit durchsetzt, da sie schneller den nächsten Block finden wird. Die Wahrscheinlichkeit, dass eine solche Aufteilung fortbesteht, wird mit jedem zurückliegenden Block in der Blockchain geringer.
Das Fortbestehen einer Fork nach einem Block ist üblich und geschieht jede Woche. Nach zwei zwei Blöcken ist sie bereits außerordentlich selten. Nach sechs Blöcken bzw. einer Stunde gilt eine Transaktion in Bitcoin als unwiderruflich (laut Antonopoulos). Zur Erinnerung ein Block wird durchschnittlich alle 10 Minuten generiert.
Künstliche Forks (z.B. Bitcoin Cash)
Neben den natürlichen Forks gibt es auch künstliche Forks. Diesen Arten von Forks können eine Änderung des Protokolls erwirken, indem die Knoten ein Software Update durchführen. Künstliche Forks untergliedern sich in Soft Fork und Hard Fork.
Softfork vs Hardfork
Eine Soft Fork erfordert nicht, dass alle Knoten der Änderung durch Aktualisieren zustimmen müssen. Trotz Änderung wird an der gleichen Blockchain weitergearbeitet. Eine Hard Fork erfordert dagegen, dass alle Knoten ein Update durchführen, da sonst eine alte und eine neue Blockchain entsteht. Bekannte Hardforks im Bitcoin Netzwerk waren Bitcoin Cash und Bitcoin Gold.
Lohnt sich Bitcoin Mining noch?
Die gesamte Hash-Rate des Netzwerkes hat sich seit der Einführung enorm gesteigert, sodass die Wahrscheinlichkeit einen Block zu schürfen für Privatpersonen ohne riesige Investitionssummen mittlerweile nahe Null ist. Viele Miner haben sich in sogenannten Mining-Pools zusammengeschlossen.
Mining Pool
Ein Mining-Pool stellt einen einzelnen Full Node dar, welcher die Mining-Rechenleistung vieler einzelner Miner bündelt, um die Wahrscheinlichkeit einen Block zu finden zu erhöhen. Wenn ein Block gefunden wird, wird die Belohnung an alle teilnehmenden Miner entsprechend ihres Rechenanteils ausgeschüttet.
Quellen
Für diesen Artikel habe ich insbesonderes aus folgenden Quellen informationen bezogen:
- Antonopoulos, Andreas M. (2014): Mastering Bitcoin. Unlocking Digital Cryptocurrencies.
- Sixt, Elfriede (2016): Bitcoins und andere dezentrale Transaktionssysteme. Blockchains als Basis einer Kryptoökonomie.
- Decker, Christian / Wattenhofer, Roger (2013): Information Propagation in the
- Bitcoin Network.
- Bitcoin Wiki
Dies ist ein Ausschnitt aus meiner 2016/2017 verfassten Abschlussarbeit über Bitcoin und Ethereum.