Bitcoin Mining

In diesem Artikel erfährst du alles über das Bitcoin Mining. Es hält Erklärungen zum Bitcoin Halving, der Bitcoin Geldmenge, den Proof-of-Work Algorithmus, Forks und Hash-Funktionen. Der Text ist teilweise recht technisch. 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 um BTC neu 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.

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.

via GIPHY Gute Analogie: Graphikkarten können zum Minen von Bitcoin verwendet werden. Der Hund ist übrigens das Maskottchen von Dogecoin, einem quasi Fork von Bitcoin. Dazu aber später mehr.

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.

HalvingDatumBlockBlock VergütungBitcoin gemint absolutBitcoin gemint in %
003.01.200905010 500 00050%
1. Halving28.11.2012210000255 250 00075%
2. Halving09.07.201642000012,52 625 00087,5%
3. Halving11.05.20206300006,251 312 50093,75%
4. Halvingvermutlich 08.05.20248400003,125656 25096,87%
5. Halving10500001,5625328 12598.44%
Mehr dazu

Zu diesem 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.

Was passiert beim 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.

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. 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.

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.

Bitcoin Blöcke

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.