Wenn ASIC-basierte Maschinen mit 14 TH/s laufen können, warum wird die Antwort nicht sofort gefunden?

Soweit ich das richtig verstehe, besteht das Ziel darin, eine Nonce zu finden, die einen Hash mit der angegebenen Schwierigkeit erstellt. Die aktuelle Schwierigkeit liegt bei etwa 1,4 Billionen. Wenn dem so ist, warum berechnet eine Maschine, die mit 14 TH/s läuft, die Nonce nicht in weniger als einer Sekunde?

Die „Schwierigkeit“-Zahl von 1,4 Billionen entspricht nicht direkt der „Anzahl der Hashes pro Sekunde“.

Antworten (1)

Wie hier im Bitcoin-Wiki erklärt , lautet die Formel zur Verwendung der Schwierigkeit zur Bestimmung der erwarteten Zeit zum Lösen eines Blocks:

Zeit = Schwierigkeit * 2**32 / Hashrate

Derzeit beträgt die Schwierigkeit 1.452.839.779.146, sodass von einem ASIC-Miner mit 14 TH/s erwartet wird, dass er im Durchschnitt einen Block löst

Zeit = 1.452.839.779.146 * 4.294.967.296 / 14.000.000.000.000

was ein Ergebnis von 445707095 Sekunden ergibt, was ungefähr 14 Jahren entspricht, wenn ich meine Berechnungen richtig gemacht habe.

Um zu überprüfen, ob die Technik funktioniert:

Unter Verwendung der aktuellen ungefähren Netzwerk-Hashrate (laut blockchain.info) von 10.183.000 TH/s und der gleichen Schwierigkeit wie oben angegeben, ergibt die Formel ein Ergebnis von 612 Sekunden, um einen Block zu lösen, was das erwartete Ergebnis von ungefähr 10 Minuten ist.

Wenn es sich um eine so große Zahl handelt, sollte die durchschnittliche Nonce nicht höher sein? Ich habe mir gerade den letzten Block angesehen und die Nonce war 2075812744. Bei 14TH/s wäre das fast sofort gefunden worden?
Die Nonce ist eine 32-Bit-Ganzzahl ohne Vorzeichen, sodass der maximale Wert, den eine Nonce haben kann, 4294967296 ist. Miner inkrementieren die Nonce jedoch nicht einfach; Sie tun auch Dinge mit Transaktionen innerhalb des Blocks, um die Merkle-Wurzel zusätzlich zum Erhöhen der Nonce zu ändern. Es gibt also viel mehr Dinge als nur die Nonces, die sie hashen können, um einen gültigen Block-Hash zu finden.
@DanielGee Die Person, die diesen Block tatsächlich gefunden hat, fand die Nonce zweifellos weniger als eine Sekunde, nachdem sie begonnen hatte, nach einer Nonce zu suchen, um diesen bestimmten Block zu vervollständigen. Aber Bergleute probieren sehr, sehr viele Blöcke aus, bevor sie einen finden, der funktioniert. Bis Sie eine Nonce finden, die für einen Block funktioniert, haben Sie keine Möglichkeit zu wissen, ob eine existiert oder nicht. Deshalb probierst du jede Nonce aus und beginnst dann erneut, Nonces mit einem anderen Block auszuprobieren.