Document ID: /fineweb-2-swissfilter-quality_10-filterrobots/filtered/03471.jsonl.gz/2084

Wie geht das genau?
Bei Bitcoin ist dies ein relativ simpler Algorithmus. Die Bitcoin Client Software schaut sich die letzten 2015 Blöcke an und erreichnet dann daraus die notwendige Schwierigkeit. 2015 Blöcke entspricht dabei dem Durschnitt der letzten 14 Tage. Die Schwierigkeit für den nächsten Block wird dann also aus der Anzahl der Blöcke und den Zeitabständen errechnet. Somit wird automatisch sichergestellt, dass Schwankungen in der Hashrate schnell zu Anpassungen in der Schwierigkeit (Difficulty) führen, und zwar nach oben und unten.
Damit kann das Netzwerk leicht kleinere Schwankungen ausgleichen, so dass die Blockzeit von ca. 10 Minuten, über den Tagesverlauf gerechnet, ungefähr eingehalten wird.
Das heisst, es wird nicht exakt alle 10 Minuten ein neuer Block erzeugt und vom Netzwerk akzeptiert, sondern, im Durschnitt. Es kann also durchaus sein, dass gleichzeitig mehrere Blöcke kurz hintereinander generiert werden und dann wieder eine Zeit lang nicht. Die Blockzeit sollte also einer statistischen Normalverteilung folgen. Daher wird ein Zeitraum von 2015 Blöcken zur Berechnung der Difficulty herangezogen und durch weitere Mechanismen ergänzt, um Unstimmigkeiten im statistischen Verhalten auszugleichen.
Kommt es allerdings zu grösseren Schwankungen innerhalb der Hashrate, also zum Beispiel durch den Wegfall grosser Mining Kapazitäten, dann läuft der Algorithmus bei der Anpassung eine Zeit lang hinterher und es kommt zu einer Dehnung der Blockzeit. Fällt zum Beispiel die Hälfte der Miner plötzlich aus oder steigt auf ein alternatives Coin um, so würde für eine gewisse Zeit die Difficulty im Netzwerk weiterhin höher bleiben, als sie sein müsste, um ca. alle 10 Minuten ein Block zu erzeugen. In diesem Falle könnte die Blockzeit für die nächsten Blöcke im Schnitt 20 Minuten erreichen und erst langsam wieder sinken. Sie würde im Anschluss, in einer Art Aufholaktion, auf unter 10 Minuten sinken, da ja die Blockzeit über die ganzen 2015 Blöcke gemessen wird. Auch das kann das Bitcoin Netzwerk gut verkraften.
Schwierig wird das ganze nur unter zwei Bedingungen.
- Wenn es jemandem gelingt, die Hashing Power zu seinen Gunsten volatil zu gestalten. In dem Fall kann er die Difficulty geringfügig steuern und immer dann zu seinen Gunsten nutzen, wenn sie gerade niedrig ist.
- Wenn das Netzwerk durch Schwankungen der Hashing Power um einen Faktor ins Schwanken gerät, der es an seine Kapazitätsgrenze bring und die Transaktionen in der Warteschlange den Zahlungsverkehr unsicher gestaltet. Dieser Punkt lässt sich dynamisch berechnen. Wir können aber zum derzeitigen Zeitpunkt davon ausgehen, dass es hier Schwankungen um den Faktor 3 - 10 bedarf.