Hallo zusammen
Ich möchte gerne verstehen was genau die BitcoinMiner rechnen oder raten.
Funktioniert das vielleicht so?:
In das Feld Nonce wird die Zahl 1 geschrieben und dann ein neuer Hash generiert. Beginnt der neu generierte Hash nicht mit der verlangten (Difficulty) Anzahl Nullen, so wird der Wert im Feld Nonce um eins erhöht und ein neuer Hash generiert. Das wird dann solange wiederholt, bis ein gültiger Hash, also mit der richtigen Anzahl Nullen herauskommt.
Bin ich da auf dem richtigen Weg? Oder weiss Jemand wo ich mehr darüber nachlesen könnte?
Besten Dank!
Grüsse
Markus
*Um euch ein Beispiel zu nennen: Der Text „The quick brown fox jumps over the lazy dog. The quick brown fox jumps over the lazy dog.” ergibt den Hashwert: *
“635241ac823ee4a81fbb410c92be616b0a89191083d8d7b5d232c823dc8df4f5”
Der Hashwert eines Blocks muss in der Blockchain gewisse Vorgaben erfüllen. Beispielsweise muss der Hash bei Bitcoin mit einer bestimmten Anzahl von Nullen beginnen (Difficulty).
*Damit das möglich ist, enthält ein Block neben den vorgegebenen Daten das Feld „Nonce“, das eine beliebige Zahl enthalten darf. Beispielsweise ist die Difficulty „00“. Die Zahl im Feld Nonce (2983373116) und der Text im Datenfeld („The quick brown fox jumps over the lazy dog. The quick brown fox jumps over the lazy dog.”) ergeben somit den Hash *
*00245750cdddf195efb0594740c08ed5b1a07c8df5cbc4b0d1d1e99bc69a0d3f. *
Je mehr Nullen für den Hashwert erforderlich sind, umso rechenintensiver ist das Finden einer Zahl, die einen solchen Hashwert liefert. Die Überprüfung, ob die Zahl mit den Daten auch wirklich einen solchen Hashwert ergibt, ist für euch sehr einfach. Das Finden einer solchen Zahl – also das sogenannte Mining - hingegen sehr aufwendig.