--German--Ep. 19 [Block-Erstellung] Block-Schwellenwert Teil 2.
Vormerk:
Gelange auf einfachste Weise zum Grundverständnis von Kryptowährungen durch Analogien. Die Bilder sind extra für die Stories von @RatzFratz gezeichnet worden. Jede Geschichte, baut auf den vorherigen Artikeln auf. Ich empfehle daher sich ein paar Minuten Zeit zu nehmen und nochmal die vorherigen Geschichten aufzufrischen. Je öfter man die Artikel durchliest, desto sicherer wird man mit dem Umgang und der Anwendung von Bitcoin-Technologie. Als Steemit-Nutzer rate ich jedem dazu, sich ein grundlegendes Verständnis über Kryptowährungen wie Bitcoin und Steem anzueignen, um bestmöglich und verantwortungsvoll mit seinem Profil(und somit mit seinem Geld) umgehen zu können. Falls in den Artikeln irgendwas unklar sein sollte, schreibt einfach einen Kommentar. Ich werde versuchen schnellstmöglich darauf einzugehen. Danke!
--------------------------------------------------------------In der letzten Episode haben wir gesehen, was ein Schwellenwert ist. Der Schwellenwert ist der Maximalwert einer Block-Nummer von einem Block-Kandidaten, so dass dieser Block von dem Bitcoin-Netzwerk, also von anderen Bitcoin-Nodes, als legitim und somit als gültig angesehen wird.
Der Schwellenwert sorgt dafür, dass nur ungefähr jede 10 Minuten ein "gültiger" Block erstellt wird. Einen Block zu erstellen, dauert normalerweise nur einen Bruchteil einer Sekunde. Dies würde dazu führen, dass ohne einen Schwellenwert zu viele Block-Kandidaten von den ganzen Bitcoin-Minern erstellt werden würden und über das Bitcoin-Netzwerk propagiert werden. Diese vielen Blocks wären auch alle gültig, solange die enthaltenen Transaktionen legitim sind. Diese Schnelligkeit führt zu einem Problem. Die ganzen Bitcoin-Nodes, die sich alle gegenseitig die neuesten Blocks hin und hersenden, um auf den neuesten Stand zu bleiben, würden nicht genug Zeit haben, um zu einem Konsensus zu kommen.
Der Schwellenwert definiert also neu, was ein "gültiger" Block ist(nämlich Block-Nummer < Schwellenwert) und drosselt somit die Geschwindigkeit, mit der die Bitcoin-Miner gültige Blocks erstellen können. Diese Drosselung soll so erfolgen, dass ungefähr jede 10 Minuten ein gültiger Block im Bitcoin-Netzwerk erstellt wird.
Jetzt kommen wir zu einem weiteren Problem: Das Bitcoin-Netzwerk ist offen für alle. Das heißt, jeder der will, kann sich mit seiner Rechenleistung am Bitcoin-Mining anschließen oder auch austreten. Somit variiert ständig die Gesamtrechenleistung, welche zum erstellen von Blocks eingesetzt wird.
Um das Zeitintervall von 10 Minuten pro gültigen Block aufrechtzuerhalten, muss der Schwellenwert dynamisch angepasst werden, und zwar abhängig von eben der Gesamtrechenleistung, die zur Blockerstellung durch das Bitcoin-Netzwerk eingesetzt wird.
Jede Bitcoin Node passt seinen Schwellenwert nach 2016 gültigen Blocks an. Bei einem geplanten Zeitintervall von 10 Minuten pro Block, erwartet die Bitcoin-Node, dass die Erstellung von 2016 gültigen Blocks mit dem vorhandenen Schwellenwert 20.160 Minuten(=10 Minuten * 2016 Blocks) dauert:
Die Mathematische Formel für die Berechnung des neuen Schwellenwerts lautet:
SCHWELL_neu = SCHWELL_alt x t / 20.160 Minuten
Nochmal: Eine Bitcoin-Node erwartet nach 20.160 Minuten 2016 gültige Blocks an ihre Blockchain angehängt zu haben.
Beispiel: Der aktuelle Schwellenwert (=SCHWELL_alt) beträgt '23.000'
Falls nun 2016 gültige Blocks in 10.000 Minuten angehängt werden, so wird die Bitcoin-Node den Schwellenwert reduzieren. Die ausgefüllt Formel lautet:
SCHWELL_neu = SCHWELL_alt x t / 20.160 Minuten
SCHWELL_neu = 23.000 x 10.000 Minuten / 20.160 Minuten
SCHWELL_neu = 11.408
Durch den neuen, niedrigeren Schwellenwert, wird es nun für die Bitcoin-Miner schwerer einen gültigen Block zu erstellen, mit einer Block-Nummer, die unter dem neuen, kleineren Schwellenwert liegt. Diese Reduzierung des Schwellenwerts führt dazu, dass die nächsten 2016 gültigen Blocks länger als 10.000 Minuten (wie zuvor) brauchen.
Nehmen wir an, tatsächlich dauert es für die nächsten 2016 gültigen Blocks 30.000 Minuten. Die Anpassungsformel lautet nun:
SCHWELL_neu = SCHWELL_alt x t / 20.160 Minuten
SCHWELL_neu = 11.408 x 30.000 Minuten / 20.160 Minuten
SCHWELL_neu = 16.976
Die Erhöhung des Schwellenwerts führt nun dazu, dass es schneller gehen wird die nächsten 2016 gültigen Blocks zu erstellen, als bei den letzten 2016 Blocks, wo der Schwellenwert niedriger war.