Rechenaufgaben und Updates Bitcoin

Hallo zusammen,

ich hätte eine Frage bzgl. dem Minen. Genauer gesagt die „Rechenaufgaben“ die die Miner lösen müssen um einen Block zu finden bzw. zu kreieren. Was steckt genau hinter diesen Rechenaufgaben?
Handelt es sich hierbei um das errechnen, ob der jeweilige Versender tatsächlich über die Coins verfügt?
Oder wie kann man sich das genau vorstellen?

Falls dies der Fall sein sollte, wie funktioniert dann die Erschwerung der Rechenaufgaben wenn mehr
Rechenleistung ins Netzwerk kommt?

  1. Frage:
    Wie entstehen Bitcoin-Updates? Es wurden ja in Vergangenheit schon einige Updates bei Bitcoin eingeführt. Doch wie kommen diese zu Stande?
    Wo wird sich hier über die Inhalte eines Updates abgestimmt? Wie wird das Update dann genau eingeleitet?

  2. Frage:
    Wie genau kann man einen „Hash“ beschreiben?

Der erklärt das ziemlich gut

1 „Gefällt mir“

Die Miner müssen einen Eingangswert finden, der einen Hash generiert, der den Vorgaben entspricht.

Nein.

Eher wie ein Ratespiel oder Lose ziehen. Es werden einfach sehr sehr viele Möglichkeiten durchprobiert, bis ein Miner die Lösung hat.

Besagte Vorgabe.
Z.B.: Soll der Hash mit 8 Nullen beginnen und dann soll eine 1 kommen, also 0000000001xxxxxxxxxxxxxx.
Je mehr Nullen bzw. je genauer die Vorgabe, desto schwieriger wird das Mining.
(Credits to @anon52841224)

2 „Gefällt mir“

Danke.

Aber @rennas Hinweis/Ergänzung sollte nicht unerwähnt bleiben. :slight_smile:

Du hast einen Input, z.B. „Blocktrainer“ und dieser wird, einfach ausgedrückt, durch eine Funktion gejagt, die man nicht mehr rückwärts rechnen kann.
Ich kann also, wenn ich den Input „Blocktrainer“ kenne, verifizieren, dass der Hash korrekt ist, kann aber, wenn ich nur den Hash habe, nicht auf den Input „Blocktrainer“ schließen.

Aus „Blocktrainer“ wird mit SHA-256 (dem Algorithmus den das Bitcoin Netzwerk nutzt) dann
92bafe95c079147083a28a24652c293018031892cc615a4a4f2ab4a72bfceb8f

Verändert man auch nur ein kleines Detail am Input, z.B. „Plocktrainer“, sieht der Hash komplett anders aus:
4a73e7ef298177f33a105c92cf705e4fb4b7fb4945072ea0a182cd6ed6500d62

Das ist extrem wichtig, da man somit Hashes nicht miteinander vergleichen kann. Sehen zwei Hashes sehr ähnlich aus, heisst das nicht, dass der Input ein ähnlicher war.

Das kannst du dir folgendermaßen vorstellen, auch wenn das mehrmals von anderen erklärt wurde, aber egal, mir ist langweilig:

Die Miner haben die Aufgabe einen Hash zu finden, der in etwa so aussieht:
0000000000000000000cad4ebfee50968c64c79ae94cc3b13412ee1f18e3f831

Na, was fällt auf? Richtig, die vielen Nullen am Anfang. Dieser Hash ist das „Proof of Work“ für den Block 683329. Um einen solchen Hash zu finden, muss ich viel Arbeit investieren, da ich ja die Funktion nicht zurück rechnen kann. Je spezieller der Hash sein soll, also wie viele Nullen am Anfang zum Beispiel, desto mehr Arbeit muss ich investieren und desto unwahrscheinlicher wird es, dass ich eine Lösung finde. Ich muss also durch ausprobieren versuchen, einen besonderen Hash zu erhalten, man spricht daher auch davon, einen „Block zu finden“.

Für Bitcoin wird die Schwierigkeit immer so an die Hashrate, also die Rechenleistung die dem Netzwerk zur Verfügung steht, angepasst, damit es in etwa 10 Minuten für einen neuen Block dauert.

Es ist nicht möglich, diesen Arbeitsnachweis zu fälschen, Mathematik lügt nicht, entweder sie stimmt oder sie stimmt nicht.

Danke für dieses Video!!
Nach sowas hab ich lange gesucht. Endlich habe ich es verstanden…

1 „Gefällt mir“