Bitcoin Mining Difficulty

Dynamische Anpassung des rechnerischen Aufwands, der nötig ist, einen neuen Bitcoin Block zu produzieren.

Wenn von Bitcoin Mining die Rede ist, dann fällt früher oder später der Begriff der „Difficulty“. Sie gibt an, wie schwierig es ist, das Proof-of-Work-Puzzle zu lösen. Doch wie genau kann man sich das vorstellen? Und wonach richtet sich die Difficulty? 

Warum ist Bitcoin Mining so kompliziert? 

Beim Bitcoin Mining versuchen die Miner, einen besonderen Hash zu finden. Auf den ersten Blick fällt solch ein besonderer Hash auf, denn er beginnt mit einer gewissen Anzahl von Nullen. Die Schwierigkeit richtet sich nach der gesamten globalen Hash Rate des Netzwerks. 

Der Hash selbst hat allerdings auch einen Wert. Je mehr Nullen zu Beginn des Hashes stehen, desto kleiner ist der Wert des Hashs. Die Schwierigkeit wird durch das sogenannte Target bestimmt. Das Target gibt an, wie klein der Hash des Blocks sein muss, damit er vom Rest des Netzwerks als gültig akzeptiert wird.

In Bitcoin lautet eine der Spielregeln nämlich, dass ein Block mit gültigen Transaktionen und einem Hash unter dem Target von allen anderen Teilnehmern ebenfalls als gültig akzeptiert wird. Die anderen Teilnehmer reihen diesen Block dann in ihre Kopie der Blockchain ein und bauen auf diesem Block den nächsten auf.  

Da Hashes immer komplett zufällig sind, ist es eine Frage der Wahrscheinlichkeit, wie oft man raten muss, damit ein Hash unter einem gegebenen Target aus der Hash-Funktion herauspurzelt. Die Difficulty (Schwierigkeit) gibt also an, wie schwierig es ist, einen gewünschten Hash zu finden.  

Die Schwierigkeit ist somit eine Komponente des Proof of Work. Sie bestimmt, wie viel Arbeit im Schnitt aufgewendet werden muss. Hat man einen gültigen Hash gefunden, ist eindeutig klar, dass der Miner die Arbeit (Rateversuche) aufgebracht hat.  

Wie verändert sich die Mining Difficulty? 

Im Durchschnitt findet das Bitcoin-Netzwerk alle zehn Minuten einen neuen Block. Diese zehn Minuten sind eine Konstante in Bitcoin. Satoshi Nakamoto bestimmte diese zehn Minuten als einen Richtwert für die Block-Zeit.  

Das heißt, das Target passt sich an die gesamte Hash Rate des Netzwerks an, sodass im Schnitt alle zehn Minuten ein Block gefunden wird. Das heißt mit allen Rateversuchen aller Teilnehmer im Netzwerk dauert es zehn Minuten, bis einer auf eine gültige Lösung kommt.  

Wenn neue Miner in das Netzwerk kommen, oder ein existierender Miner seine Mining Hardware ausbaut, erhöht sich die Hash Rate. Damit nun die Block-Zeit nicht immer weiter schrumpft, passt sich die Schwierigkeit alle 2016 Blöcke automatisch an. Das entspricht ungefähr zwei Wochen. Dabei untersucht der Bitcoin-Computercode die Blockzeit der letzten 2016 Blöcke und adjustiert das Target und folglich die Schwierigkeit.  

Der Vorteil bei einem mathematischen Proof-of-Work-Mechanismus wie in Bitcoin ist, dass man sehr genau bestimmen kann, wie schnell das Netzwerk auf einen gültigen Hash stößt.  

So produziert das Netzwerk im Schnitt alle zehn Minuten einen neuen Block, der neue Transaktionen bestätigt. Wenn Mining Power, also Hash Rate dazu kommt oder abfällt, passt sich Bitcoin automatisch an die neuen Gegebenheiten an.  

Warum dauert es zehn Minuten, bis ein neuer Block gefunden wird? 

Die Block-Zeit von zehn Minuten ist ein Trade-Off zwischen mehreren Faktoren. Auf der einen Seite würde eine kürzere Blockzeit für schnellere Bestätigungen der Transaktionen führen. Ein oft genanntes Argument gegen die zehn Minuten Block-Zeit in Bitcoin ist, dass der Kauf eines Kaffees so lange dauern würde, dass er vor dem Trinken schon erkaltet wäre. Denn eine Transaktion erst bestätigt, wenn sie in der Blockchain aufgenommen ist: Schließlich will der Kaffeeverkäufer auch sicherstellen, dass er sein Geld bekommt und den Kaffee nicht umsonst herausgibt.  

Auf der anderen Seite erfordert eine kürzere Blockzeit auch eine größere Bandbreite der Netzwerkteilnehmer, denn die Blöcke müssen schnell genug im Netzwerk propagiert werden. Im Bitcoin-Netzwerk herrscht ein Konsens über den aktuellen Stand aller Konten. Alle Teilnehmer sind sich einig, welche Transaktion passiert ist und welche nicht. Wenn die Block-Zeit zu kurz ist, kann es passieren, dass nicht alle Teilnehmer rechtzeitig vom neuen Block gehört haben. Gerade wenn die Größe der Blöcke steigt, kann dies, bei mangelnder Bandbreite, zu einem Problem werden. Im Netzwerk könnte es zu versehentlichen Spaltungen kommen, wenn die eine Hälfte des Netzwerks einen Block nicht rechtzeitig bekommt. Mit sinkender Block-Zeit steigt die Zahl der verwaisten Blocks (sogenannte Orphan Blocks). 

Vor diesem Hintergrund wählte Satoshi Nakamoto die Block-Zeit von zehn Minuten. 

Ähnliche Begriffe

Bereit für den nächsten Karrieresprung?

Experte werden
  • Geführtes E-Learning
  • Abschlussprüfung
  • Teilnahmezertifikat