Woher wissen wir, dass die HASH-Funktion eine Ausgabe erzeugt, die die Schwierigkeit erfüllt, dh unter 0000 ... xxxx ... xxx liegt?
Ist es möglich, dass kein Beweis gefunden wird, sodass der HASH diese Ausgabe 000 ... xxx ... erzeugt?
Das Wichtige dabei ist, dass jeder Mining-Pool/Solo-Miner an einem anderen Input arbeitet : Sie haben unterschiedliche Coinbase-Transaktionen und arbeiten an unterschiedlichen Transaktionssätzen. Weitere Entropie kann hinzugefügt werden, indem die Nonce und Extra-Nonce geändert, eine weitere Transaktion hinzugefügt oder die Reihenfolge der Transaktionen geändert wird.
Während es Blockeingaben geben kann, die mit keiner Nonce erfolgreich sind, durchläuft das gesamte Netzwerk so viele verschiedene Eingaben, dass irgendwann ein gültiger Block entdeckt wird.
Da der Hash-Prozess als Poisson-Prozess implementiert ist, beträgt die erwartete Zeit, um den nächsten Block zu finden, zu jedem Zeitpunkt genau 10 Minuten , wenn die Hash-Leistung des Netzwerks der Schwierigkeit entspricht.
Die Wahrscheinlichkeit, dass eine Anzahl von X
Blöcken in einem Zeitraum gefunden wird, in dem Sie erwarten würden, λ
Blöcke zu finden, kann mit der folgenden Formel berechnet werden :
Um also die Wahrscheinlichkeit zu berechnen, dass ein Intervall zwischen Blöcken um einen Faktor länger als der Mittelwert (10 Minuten in einer idealen Welt) ist λ
, erhalten wir p(0|λ) = exp(-λ)*(λ^0)/(0!) = exp(-λ)*1/1 = exp(-λ)
, z. B. die Wahrscheinlichkeit, dass ein Blockintervall ist
Dass längere Zeiten auftreten, ist zwar nicht ausgeschlossen, aber äußerst unwahrscheinlich.
In den letzten zwei Jahren war die durchschnittliche Blockbestätigungszeit von sieben Tagen nie länger als 15 Minuten. Siehe Durchschnittliche Bitcoin-Transaktionsbestätigungszeit
In den sehr frühen Tagen von Bitcoin waren größere Schwankungen aufgrund schwankender Mining-Leistung häufiger, siehe zum Beispiel Was ist die längste Zeitspanne zwischen Blöcken in 2010 - 2011? .
Eine Liste aller Blockintervalle bis Jan. 2014 sortiert nach Länge finden Sie hier: Blockintervalle sortiert .
Die erste Spalte bezeichnet die das Intervall bildenden Blöcke, die zweite Spalte gibt das Blockintervall in Sekunden an. Quelle: Runeks auf Reddit: Was war die längste Zeit zwischen Blöcken in der Geschichte von Bitcoin?
Wir können nicht mit absoluter Sicherheit wissen, ob ein Block gefunden wird. Wir können jedoch Wahrscheinlichkeiten grob berechnen.
Die aktuelle Blockschwierigkeit erfordert ungefähr 63 Nullbits am Anfang des Hashs. Die Wahrscheinlichkeit, einen Block mit einem Hash zu finden, beträgt ungefähr 2**(-63)
. Die Wahrscheinlichkeit , einen Block nicht(1 - 2**(-63))
zu finden, ist . N
Das liegt wahrscheinlich daran, dass nach Hash-Versuchen kein Block gefunden wird (1 - 2**(-63))**N
.
Die aktuelle Netzwerk-Hash-Rate beträgt etwa 30.000.000 GH/s oder 3e16 H/s. In 10 Minuten kann das Netzwerk etwa 1.8e19 Hashes erstellen. Wenn Sie diesen Wert wie N
oben verwenden und das Ergebnis berechnen, erhalten Sie 0,14205174, was wiederum die Wahrscheinlichkeit ist , nach 10 Minuten keinen Block zu finden.
In Anbetracht dessen können Sie die Zeit verlängern und einige weitere Wahrscheinlichkeiten berechnen:
Kein Ergebnis in einer Stunde => 0,00000821 = 8,21e-6
Kein Ergebnis in einem Tag => 8,96e-123
Es ist äußerst unwahrscheinlich, dass nach einem Tag kein Ergebnis für einen Block gefunden wird.
N
mal würfelt und nie eine 1 bekommt, (5/6)**N
.
Benutzer10386
Mursch