Das Nonce ist ein zentraler Bestandteil des PoW-Mining-Algorithmus (Proof of Work) für Blockchains und Kryptowährungen wie Bitcoin. Bergleute konkurrieren miteinander um Suchen Sie eine Nonce, die einen Hash mit einem Wert erzeugt, der kleiner oder gleich dem durch die Netzwerkschwierigkeit festgelegten Wert ist. Wenn ein Bergmann eine solche Nonce findet, nennt man a goldene Nonce, dann gewinnen sie das Recht, diesen Block zur Blockchain hinzuzufügen und die Blockbelohnung zu erhalten.

Das Nonce ist eine zufällige, einmalige ganze Zahl. Bergleute testen und verwerfen jede Sekunde Millionen von Nonces. Sie hoffen, einen Hash-Wert zu erzielen, der das Ziel erreicht, und so die Blockbelohnung zu gewinnen. Dies ist, was während des PoW-Mining auf der einfachsten Ebene passiert, obwohl es noch viel mehr gibt. Hier werden wir den gesamten Zweck der Nonce während des gesamten Abbauprozesses untersuchen.

Bausteine ​​mit Nonces

Das Nonce ist eine 32-Bit-Zahl. Es bleibt zusammen mit anderen Schlüsseldaten wie dem Schwierigkeitsgrad und dem Zeitstempel im Blockheader. Wenn Bergleute Blöcke erstellen, wählen sie zufällig eine Nonce aus und geben sie in den Blockheader ein, wodurch ein neuer Blockheader-Hash erstellt wird.

Der Hash ist eine 256-Bit-Zahl und muss mit einer großen Anzahl von Nullen beginnen, d. H. Einen unglaublich kleinen Wert haben. Wenn die Anzahl der Nullen nicht ausreicht, verwirft der Miner den Hash und versucht eine neue Nonce. Dieser Vorgang wird wiederholt, bis ein Bergmann eine Nonce entdeckt, die einen Hash mit einem Wert erzeugt, der kleiner oder gleich dem durch die Schwierigkeit festgelegten Wert ist.

Blockstruktur

Die 32-Bit-Größe des Nonce bedeutet, dass es vier Milliarden mögliche Kombinationen gibt. Obwohl technisch gesehen, ist es aufgrund der sogenannten extra nonce. Dies ist zusätzlicher Platz für eine längere Nonce, was bedeutet, dass Sie mehrere zehn Milliarden Kombinationen haben können.

Das Nonce ist der einzige Parameter, den der Miner ändert, alle anderen bleiben statisch. Wenn der Bergmann die goldene Nonce findet, fügt er diesen Block der Blockchain hinzu und erhält die Blockbelohnung. Derzeit gibt es keine Möglichkeit, das Auffinden der richtigen Nonce zu beschleunigen. Dies bedeutet, dass Bergleute nur in Versuch und Irrtum arbeiten, bis sie eine goldene Nonce finden. Dieser Prozess macht das aus Arbeit, zum Nachweis der Arbeit.

Beziehung zur Schwierigkeit des Bergbaus

Wie bereits erwähnt, versucht der Miner, eine Nonce zu finden, die einen Hash unterhalb des durch die Netzwerkschwierigkeit festgelegten Werts erzeugt. Das Bitcoin-Protokoll legt diese Mining-Schwierigkeit fest. Mit zunehmender Schwierigkeit nimmt auch der Zielwert für den Hash ab. Dies bedeutet, dass am Anfang der Hash-Nummer mehr Nullen stehen müssen. Die Wahrscheinlichkeit, einen niedrigeren Hash-Wert zu finden, nimmt ab, und Bergleute müssen mehr Nonces testen. Wenn ein Miner einen Block hascht, muss der Hash einen Wert haben, der gleich oder kleiner als die Zielnummer ist, um erfolgreich zu sein.

Beim Abbau von Bitcoin wird der Schwierigkeitsgrad alle 2016 Blöcke angepasst. Dies funktioniert alle zwei Wochen. Andere PoW-Blockchains lassen sich jedoch schneller anpassen. Zum Beispiel, Litecoin, aufgrund seiner kürzeren Blockierungszeit passt sich sein Schwierigkeitsgrad alle dreieinhalb Tage an. Digibyte hingegen passt seine Schwierigkeit bei jedem Block in Echtzeit an.

Warum die Anpassung wichtig ist

Wenn sich die Schwierigkeit nicht anpassen würde, gäbe es eine lineare Beziehung zwischen der Hashing-Kraft und den Blockbelohnungen. Wenn mehr Bergleute dem Netzwerk beitreten und die Hashing-Leistung zunimmt, steigen die Bitcoin-Belohnungen entsprechend. Dies würde die Inflationskontrolle des Bitcoin-Protokolls und damit seine soliden Geldeigenschaften untergraben.

Glücklicherweise können durch eine Schwierigkeitsanpassung die Blockbelohnungen alle zwei Wochen relativ stabil gehalten werden. Die Schwierigkeit kann sich aber auch niedriger einstellen. Wenn die Rentabilität des Bergbaus verschwindet, stellen die Bergleute den Betrieb ein und die Hash-Rate sinkt. Der Schwierigkeitsgrad wird dann entsprechend angepasst. Wir sehen dies nun seit einigen Monaten im Bitcoin-Netzwerk seit dem Schwierigkeit erreichte ihren Höhepunkt am 4. Oktober.

Bei Bitcoin vergleicht der Bitcoin-Client nach jeweils 2016 Blöcken die Echtzeit für jeden zu generierenden Block mit der Zielzeit. Anschließend wird der Schwierigkeitsgrad entsprechend angepasst. Ziel ist es, dass Bergleute Blöcke so genau wie möglich in zehn Minuten produzieren.

Schutz durch sichere Hash-Algorithmen

Die Ausfallsicherheit des SHA-256-Algorithmus verhindert, dass Bergleute den Versuch und Irrtum beschleunigen und betrügen können. SHA-256 gehört zur SHA-2-Familie sicherer Hash-Algorithmen und wurde 2001 von der NSA veröffentlicht. Wenn dieser Algorithmus defekt wäre, wie es bei der SHA-1-Klasse kryptografischer Hash-Algorithmen der Fall war, würde der PoW-Prozess untergraben.

Es gibt verschiedene Möglichkeiten, einen Hash-Algorithmus zu unterbrechen. Damit meinen wir, die Trial-and-Error-Methode umgehen und korrekte Nonces viel schneller finden zu können. Kollisionsangriffe sind der neueste und effizienteste Weg, dies zu tun.

Der gesamte Zweck eines sicheren Hash-Algorithmus besteht darin, die Eindeutigkeit eines Hash sicherzustellen. Wenn Daten gehasht werden, sollten die Eingaben eine völlig eindeutige Hash-Nummer erstellen. Die einzige Möglichkeit, dieselbe Nummer zu replizieren, besteht darin, genau dieselben Eingaben zu machen, einschließlich der Nonce. Ein Kollisionsangriff bedeutet jedoch, dass der gleiche Hash aus verschiedenen Eingaben erzeugt werden kann. Ein böswilliger Akteur kann dies mit ausreichenden Rechenressourcen tun. Dies untergräbt den Zweck des sicheren Hash-Algorithmus vollständig.

Hash-Funktion

Nachdem sich gezeigt hat, dass ein Kollisionsangriff gegen SHA-1-Algorithmen wirksam ist, kann man sich nicht mehr auf sie verlassen. Der Angriff wurde teilweise aufgrund der enormen Fortschritte bei der Computerleistung im letzten Jahrzehnt ermöglicht.

Irgendwann, wenn die Rechenleistung ausreichend gestiegen ist, ist SHA-256 auch für solche Angriffe anfällig. Bitcoin-Entwickler sollten dies jedoch lange vorher wissen. Dies liegt daran, dass solche Angriffe theoretisch fast immer als möglich gezeigt werden, bevor tatsächlich nachgewiesen wird, dass sie im wirklichen Leben funktionieren. Das Bitcoin Core-Team sollte sich dann einem neueren und härteren Algorithmus zuwenden.

Es ist auch erwähnenswert, dass die meisten Authentifizierungsprotokolle im Internet derzeit SHA-2-Algorithmen verwenden. Wenn sie über Nacht verwundbar würden, hätten wir große globale Probleme, die weit über den Bergbau von Bitcoin hinausgehen.

Wert des Arbeitsnachweises

Bergleute verwenden ihre Hardware, um diese Nonces mit einer Geschwindigkeit von Millionen pro Sekunde zu testen. Die Tatsache, dass es keine Möglichkeit gibt, das Nonce schnell zu finden, hält PoW zu einem offenen und fairen System.

Das vorteilhafte Merkmal dieses Systems ist, dass es eine enorme Menge an Energie, Zeit und Kapital benötigt, um den richtigen Wert zu finden und die Belohnung zu gewinnen. Gleichzeitig ist es für andere Knoten unglaublich einfach, den korrekten Wert zu überprüfen. Diese Zweiteilung schützt das Netzwerk und bietet eine einfache Möglichkeit, einen Konsens zu erzielen.

Letztendlich ist das Nonce nur ein kleiner Teil des Bitcoin-Mining-Prozesses. Es spielt jedoch eine entscheidende Rolle bei der Aufrechterhaltung seiner Integrität. Das Nonce ist das einzige, was ein Bergmann ändert, um einen ausreichenden Hashwert zu finden. Es ist wirklich das Gaspedal, die Bremse und die Kupplung für das gesamte Setup.

Mike Owergreen Administrator
Sorry! The Author has not filled his profile.
follow me