“Diese komplexen mathematischen Probleme” – Bitcoin-Begünstigte erklärten

Anfang dieser Woche bin ich auf folgende Frage gestoßen: „Wer profitiert von den Problemen, die durch den Bitcoin-Abbau gelöst wurden?“

Niemand profitiert akademisch, das heißt – es ist nicht so, als würde eine Organisation die kombinierte Rechenleistung des Netzwerks geschickt nutzen, um mathematische Probleme zu lösen, die bis heute unbeantwortet bleiben. Das Netzwerk profitiert insofern, als je mehr Mining-Teilnehmer vorhanden sind, desto weniger anfällig ist das Netzwerk für 51% Angriffe.

Es wird allgemein behauptet, dass beim Mining komplexe mathematische Probleme gelöst werden müssen – dies ist weit von der Wahrheit entfernt, eine Handwelle, die das Mining-Verfahren in die Knie zwingt. Das vorliegende Problem ist eigentlich immer das gleiche, Satoshi Nakamotos Arbeitsnachweis. Dieses „Problem“ hat eine breite, aber spärliche Lösung mit vielen akzeptablen Lösungen. Das Problem selbst hängt davon ab, wie die Verschlüsselung funktioniert. Die SHA2-Verschlüsselung, die spezifische Art der Verschlüsselung, die in Satoshis Arbeitsnachweis verwendet wird, ist eine Einwegfunktion, die eine beliebige Menge von Eingabedaten aufnehmen und eine Verschlüsselung dieser Daten mit fester Länge ausspucken kann (wir nennen diese resultierenden Daten einen Hash). Die Ausgabe sieht ungefähr so ​​aus:

<4400326632D493AF087A10DB85B57702122A01EC2E4D1536406F7E72C6EA87B2F2

Das Problem ist einfach die Suche nach einem Hash mit einer besonderen Qualität. Bei Bitcoin ist diese Qualität die Anzahl der Nullen, die am Anfang des Hash stehen. In dem obigen Fall würde unser Hash die Anforderung (als Schwierigkeit bezeichnet) erfüllen, dass die ersten beiden Bytes Nullen sind.

Die SHA2-Verschlüsselung ist in Vorwärtsrichtung sehr einfach durchzuführen. Zusammen mit einer als Lawine bezeichneten Qualität wird dies dazu führen, dass bei jeder Verschlüsselung eines eindeutigen Informationssatzes ein eindeutiger und unvorhersehbarer Hash als Ergebnis angegeben wird.

Was genau ist das Problem mit dem Bitcoin Proof of Work? Verschlüsseln Bergleute nur zufällige Daten, um eine Antwort zu finden? Nein! Bergleute verschlüsseln ein Bündel von Transaktionsdaten (die wir als Block bezeichnen werden) zusammen mit einer identifizierenden Information und einer zusätzlichen Information (Nonce genannt). Diese zusätzliche Information ist ein spezielles Feld in einem Block, das nach Wunsch des Miners geändert werden kann, sodass er so viele eindeutige Eingaben für die Verschlüsselungsmethode erstellen kann, wie er möchte. Die Konsequenz der Möglichkeit, eindeutige Eingaben zu erstellen und gleichzeitig das gleiche Bündel von Transaktionsinformationen beizubehalten, ermöglicht es Bergleuten, viele verschiedene Hashes für dieselben Transaktionsdaten zu erhalten. Auf diese Weise kann ein Bergmann nach einem Transaktionspaket & amp; Nonce-Kombination, die zu einem Hash mit der gewünschten Anzahl von Nullen führt, nach denen das Netzwerk sucht.

Der Versuch, dieses Problem zu lösen, ist also wie folgt:

1). Nehmen Sie ein Bündel von Transaktionen und den Hash aus dem vorherigen Block und verwenden Sie diesen als Basisinhalt für einen neuen Block.
2). Wählen Sie eine zufällige Nonce und platzieren Sie diese in Block.
3). Verschlüsseln Sie diese Informationen mit der SHA2-Verschlüsselungsmethode.
4). Überprüfen Sie, ob das hat die spezifische Qualität (Anzahl der Nullen), die das Netzwerk anfordert.
5). Wenn ich eine akzeptable Antwort auf das von mir gesendete Problem gefunden habe, habe ich die Lösung gefunden. Dies kann leicht von jedem im Netzwerk überprüft werden, indem die SHA2-Verschlüsselung für meine vorgeschlagene Lösung ausgeführt und überprüft wird, ob der resultierende Hash die richtige Qualität aufweist. Dies führt dazu, dass ich die Mining-Belohnung sammle und den nächsten Block in der Blockchain veröffentliche. Wenn ich die Antwort nicht gefunden habe, wiederhole ich die Schritte 2–4. Dies wird fortgesetzt, bis jemand eine akzeptable Antwort findet und sendet.

Dieses Problem mag zwar vapid erscheinen, ist aber aus Gründen aus Gründen für ein paar sehr klug. Erstens ist es für jeden sehr einfach, meine Arbeit zu überprüfen, da er einfach das veröffentlichte Transaktionsbündel hashen und sicherstellen kann, dass es mit dem Hash übereinstimmt, den ich am Ende des Blocks abgestempelt habe. Zweitens ist das Problem so konstruiert, dass es sehr einfach ist, es exponentiell schwieriger oder einfacher zu machen. Die Anfrage kann einfach für mehr oder weniger Nullen sein. Jede weitere 0, um die ich bitte, erhöht den Schwierigkeitsgrad um den Faktor 16 (da der Hash in Basis 16 dargestellt wird). Diese Schwierigkeit ändert sich im Laufe der Zeit. Das Bitcoin-Netzwerk bewertet, wie schnell diese Probleme gelöst werden, und wählt eine Schwierigkeit aus, um die Rate zu regulieren, mit der Lösungen gefunden werden. Die Schwierigkeit versucht, die durchschnittliche Zeit, die alle Teilnehmer benötigen, bei 10 Minuten zu halten. Das Netzwerkprotokoll bewertet die Anzahl der Nullen, die eine korrekte Antwort erfordert, alle 2 Wochen neu. Wenn also mehr Menschen am Mining teilnehmen (mehr „Suchende“), werden Blöcke zunächst schneller abgebaut, das Netzwerk erkennt Änderungen in der Erkennungszeit und passt die Schwierigkeit an, die neue Hash-Leistung des Netzwerks zu regulieren. Die Belohnungen, die ein Teilnehmer erhält, sind seltener.

Also zum Schluss.

Wer bestimmt, welche Probleme Bergleute lösen?

Das Problem ist immer das gleiche. Die willkürliche Anforderung für eine akzeptable Antwort wird jedoch vom Netzwerk so festgelegt, dass in regelmäßigen Abständen Lösungen gefunden werden.

Wer kann davon profitieren?

Akademisch niemand.

Finanziell erhalten Bergleute Bitcoin-Belohnungen für die Suche nach einer Lösung, und alle transnationalen Änderungen, die aus dem Block übrig bleiben, werden dem Bergmann auch als Transaktionsgebühren ausgehändigt.

Benutzer erhalten zusätzliches Vertrauen in die Integrität von Bitcoins Blockchain. Je mehr Bergleute dazu angeregt werden, sich anzuschließen, desto schwieriger wird es, den Anteil der Netzwerkleistung zu kontrollieren. Da Miner-Belohnungen in BitCoin ausgezahlt werden, werden Bergleute außerdem dazu angeregt, virtuos zu handeln, um eine Abwertung ihrer eigenen Belohnungen zu vermeiden.