Um zu verstehen, was Mining genau ist, muss man sich mit der Funktionsweise einer Blockchain auseinandersetzten. Die häufig vertretene Meinung zu diesem Thema, dass gemined wird, um Bitcoins zu erschaffen, ist nur teilweise richtig. Das man sich dabei Bitcoin sichert ist nämlich nur ein schöner Nebeneffekt, der eigentliche Sinn besteht darin, die Funktionsweise und die damit verbundenen Eigenschaften einer Blockchain zu gewährleisten.
Jede Blockchain besteht aus Blöcken, die Informationen besitzen und fest miteinander verkettet sind.
Informationen können beim Bitcoin z.B. sein, dass Person A eine Transaktion von 10 BTC an Person B vornehmen möchte. Diese Blöcke müssen erst erschaffen und bestätigt werden. Bestätigen heißt hier, dass die Mehrheit im System abstimmt und den neuen Block akzeptiert. Wie das genau funktioniert wird unten am Beispiel der Bitcoin Blockchain vorgestellt.
Damit die oben erwähnten Blöcke in der Blockchain verarbeitet werden, sind folgende Schritte nötig:
In folgendem Beispiel sollen 3 Transaktionen in die Blockchain aufgenommen werden.
Transaktion 1: Max sendet 10 BTC an Tom
Transaktion 2: Laura sendet 5 BTC an Henri
Transaktion 3: Justus sendet 2 BTC an David
Damit diese Transaktionen aufgenommen werden können, müssen die Absender die Transaktionen dem sogenannten Mempool hinzufügen. Das ist nichts anderes als ein Topf mit allen Transaktionen , die noch nicht vollzogen worden sind. Jede einzelne Transaktion war also bereits in diesem Topf. Im Normalfall verweilen diese dort aber nicht lange. Sie als normaler Nutzer einer Blockchain kriegen von diesem Veröffentlichen im Mempool gar nichts mit. Sie senden nur die Transaktion in ihrem entsprechenden Programm ab und lassen die Software im Hintergrund den Rest erledigen.
Damit die Transaktionen von Max, Laura und Justus nun bei ihren Empfängern ankommen, müssen die Transaktionen in einen Block aufgenommen werden. Das Aufgabe eines Miners. Diese wählen sich aus dem Mempool verschiedene Transaktionen aus und konstruieren damit einen individuellen Block.
Der Miner hat aber noch eine weitere Aufgabe. Er muss parallel eine mathematische Aufgabe lösen, deren Lösung durch nichts anderes als Rechenleistung, die sogenannte Hash Rate, beeinflussbar ist. Die Wahrscheinlichkeit eine solche Lösung für einen Block zu finden steigt mit höher Hash Rate.
Schafft es ein Miner eine Lösung für einen Block zu finden, darf er diesen individuellen Block mit den vorher ausgesuchten Transaktionen der Community vorstellen.
In unserem Beispiel schafft es der Miner 2 nun die richtige Lösung für den Block zu finden. In seinem Block sind (natürlich nur unter anderem) die Transaktionen von Max und Laura. Miner 2 schickt nun diesen Block an die Community.
Damit bei dem vorherigen Prozess kein Betrug entstehen kann, fügt der Miner mit der einer richtigen Lösung den Block nicht direkt der Blockkette hinzu, sondern lässt den Block durch die Community bestätigen. Die überprüft, ob die im Block ausgewählten Transaktionen durchführbar sind (das wäre z.B. nicht der Fall, wenn Max nur 6 BTC besitzt) und prüft ihn somit auf Legalität. Finden die anderen Miner einen Fehler bzw. Betrugsversuch in einem Block, stimmen sie mit "Nein" und der Block wird somit verworfen. In unserem Beispiel ist der Block von Miner 2 aber vollkommen legal und die Community stimmt somit für ihn.
Der Aufnahme des Blockes in die Blockchain steht nun nichts mehr im Weg. Ein wichtiger Schritt, für allem für Miner 2, steht aber noch bevor. Er erhält mit der Aufnahme seines Blockes nun die entsprechenden Rewards. Rewards heißt Belohnung und steht für die "geschürften" Bitcoin. Genau wegen diesen Rewards ist Mining für viele so interessant.
Wer die vorherigen Schritte aber verstanden hat sieht ein, dass die Rewards nur nebensächlich sind und Mining viel mehr als das Schaffen neuer Bitcoin ist. Miner 2 freut sich aber trotzdem, denn er erhält 12,5 Bitcoin! Die Rewardgröße ist übrigens genau definiert und halbiert sich alle 4 Jahre.
Ein äußerst wichtiger Punkt beim Erstellen von Blöcken bzw. bei der Einbindung in die Blockchain wurde in der vorherigen Schritten zur Vereinfachung unterschlagen. In einem Block stecken nämlich noch weitere wichtige Informationen: Eindeutige Verweise auf den vorherigen Block. Da in diesem vorherigen Block auch wieder Informationen über dessen vorherigen Block stecken (usw.) Also liefert der aktuellste Block auch Informationen über die komplette vorherige Historie!
Durch diese Informationen wird die Fälschungssicherheit der Blockchain gewährleistet. Würde ein Hacker bspw. versuchen einen älteren Block zu seinen Gunsten zu verändern, müsste er sämtliche andere Blöcke auch ändern, da diese mit dem Block sprichwörtlich zusammengeklebt sind.
Somit ist beim Hinzufügen weiterer Blöcke auf die einzigartige Verbindung zur gesamten Blockchain zu achten.
Um zu unserem Beispiel zurückzukehren halten wir fest, dass der Block 2 von Miner 2 nun in der Blockchain enthalten ist. Wir haben gesehen, dass bereits 2 unserer 3 Beispielstransaktionen verwendet wurden. Was ist nun aber mit der dritten?
Diese bleibt im Mempool und Justus hofft, dass seine Transaktion im nächsten Block aufgegriffen wird.
Wir gehen mal davon aus, das Justus Glück hat und im genau darauf folgenden Block auch an der Reihe ist. Dieser Block durchläuft genau die gleichen Schritte wie der vorherige Block 2.
Dadurch, dass der Block X mit der Transaktion von Justus nun auch in der Blockchain ist und somit zuvor auch bestätigt wurde, erhöht sich auch Sicherheit für den vorherigen Block 2. Bei der Abstimmung über Block X wurde der klare Verweis ja auch überprüft und somit ein weiteres mal bestätigt. Genau aus diesem Grund gelten Transaktionen beim Bitcoin nach 30-40 Minuten auch erst als endgültig sicher. Da alle 10 Minuten ein neuer Block erstellt wird, sind in diesen 30 bzw. 40 Minuten also 3 bzw. 4 neue Blöcke hinzugekommen und der ursprüngliche Block wurde weitere Male bestätigt.
Es können maximal 21.000.000 Bitcoins existieren. Das liest man häufig und das ist so auch korrekt. Wie geht das aber mit dem eben beschriebenen Mining-Prozess konform? Es wird ja irgendwann unendlich viele Blöcke in der Blockchain geben, dann kann ja nicht jedes Mal eine Belohnung an den Löser eines neuen Blockes gehen oder?
Auch diese Frage lässt sich beim genauen Anschauen des Mining Prozesses beantworten. Die Anzahl der Bitcoins, die als Belohnung ausgegeben wird, ist nämlich variabel und klar definiert. Zur Zeit (Stand 2018) erhält jeder 12,5 Bitcoins für einen gelösten Block. Ganz schön verlockend, wenn man bedenkt, dass ein Bitcoin schon knappe 20.000 $ wert war. Nur hier kommt wieder die Wahrscheinlichkeit ins Spiel. Es ist leider wie beim Lotto spielen: Die Höhe des Gewinns ist verlockend, nur sollte man nicht aus den Augen verlieren, wie wahrscheinlich es ist, diesen auch zu erreichen.
Aber zurück zur Ausgangsfrage. Um sicherzustellen, dass nach dem 21.000.000-sten Bitcoin kein weiterer verteilt wird, wird die Belohnungsmenge stetig verringert. Genauer gesagt: Sie halbiert sich alle 4 Jahre. D.h., nach der nächsten Umstellung wird ein Miner als Belohnung nur 6.25 Bitcoins erhalten. Irgendwann geht dieses Halbieren soweit, dass die Miner keine Bitcoins mehr bekommen. Dann wurden 21.000.000 Bitcoins erschaffen.
Falls sich jemand jetzt fragt, warum die Miner dann noch weiter minen sollten, weil es ja keine Belohnungen mehr gibt, muss man beachten, dass auf der Blockchain Transaktionsgebühren herrschen. Das wird dann die Belohnung eines Miners sein.
Bei anderen Kryptowährungen ist das übrigens nicht immer so. Es gibt viele andere Kryptowährungen, in denen kein Hardcap (Obergrenze) existiert. Gerade bei volkswirtschaftlichen Themen, wie der Geldpolitik eines Staates, ist die Beeinflussbarkeit der Geldmenge essentiell und somit sind solche Lösungen bei der Mainstreamadoption äußerst interessant. Im Zusammenhang mit einer festen Obergrenze an Coins steht nämlich eine Inflation. Es gibt verschiedene Ansichten dazu, ob eine Obergrenze bei einer Kryptowährung in Zukunft Sinn machen wird. Technisch ist es auch ohne möglich.