In diesem Artikel möchte ich mich mit dem vorgeschlagenen Stratum v2 Protokoll beschäftigen, das die Abhängigkeiten von Minern und Mining Pools umkehrt. Dazu wollen wir erstmal ein paar generelle Konzepte in Erinnerung rufen.
Aufgabe von Minern
Wer sich nochmal genau mit dem Ablauf von Mining befassen möchte, dem rate ich Ausgabe #41 zu lesen.
Wir erinnern uns, dass es im Bitcoin-Ökosystem drei große Gruppen gibt, die sich nicht jeweils ausschließen. Es gibt die Miner, die Node-Betreiber und die Nutzer. Diese schließen sich nicht gegenseitig aus, da man auch in zwei oder sogar drei dieser Gruppen verhaftet sein kann. Die Miner übernehmen Aufgaben, die die anderen zwei Gruppen nicht leisten können und dafür werden sie durch den Anreizmechanismus belohnt. Denn durch ihre Arbeit gewährleisten sie die Sicherung des Netzwerks (je höher die aufgebrachte Hashrate, desto schwieriger werden Angriffe), sie validieren, sortieren und fügen Transaktionen dem Netzwerk hinzu und darüber hinaus helfen sie dabei bitcoins zu verteilen (zumindest bis alle ca. 21 Millionen bitcoins in ca. 100 Jahren erschlossen wurden). Warum die Analogie zum Mining schwierig ist, haben wir schon öfter besprochen, kurz und verständlich auf den Punkt gebracht hat es diese Woche Gigi in einem kurzen Beitrag.
Mining Pools
Ich habe Mining-Pools detailliert in einem Artikel letzten September beschrieben. Wer sich mit dem Thema nochmal eingehender beschäftigen möchte, kann das hier tun:
Doch TL;DR für all diejenigen, die keine Zeit oder Lust haben, hier in Kürze:
Die immer weiter steigende Hashrate im Netzwerk, ausgelöst durch immer größer werdende Mining-Operationen und immer leistungsfähigere ASIC Chips, führt dazu, dass es kleine und auch mittelgroße Miner immer schwerer haben erfolgreich Bitcoins zu minen, und damit Profite zu erzielen.
Mining-Pools bieten da Abhilfe, indem sie Minern die Möglichkeit bieten, ihre Hashrate zu bündeln und somit eine größere Wahrscheinlichkeit erzeugen, im Wettkampf um die Winner-take-all-Prämie, einen Teil der Belohnung in Form von Block-Subsidy und Gebühren einzustreichen (➡️ Block Reward). Je mehr Miner sich in einem Pool zusammenschließen, um somit die Hashrate zu bündeln, desto wahrscheinlicher wird, dass dieser Zusammenschluss von Minern den nächsten Block findet. Damit sinkt natürlich die einzelne Auszahlung pro Block, jedoch steigt die proportionelle Anzahl der Blocks, die dieser Pool erfolgreich produzieren kann.
Diese Rechnung lohnt sich neben Mining-Farmen auch für die meisten kleinen und mittelgroßen Miner, da so ein stetiger Fluss von Einkommen wahrscheinlicher wird, als ab-und-zu (oder nie) den Jackpot zu knacken. Das Problem bei Mining-Pools besteht in der Bündelung der Hashrate unter einer übersichtlichen Anzahl von Betreibern, denn erstens macht es jede Konzentration einer bestimmten Sache für Angreifer einfacher, diese eine große Einheit ausfindig zu machen und gezielt zu attackieren. Und zweitens verschiebt sich die dezentrale Wahrheitsfindung zugunsten einer zentralisierten Entscheidungsfindung.
Denn bisher sind es die Mining-Pools, die über die Architektur der Blöcke bestimmen, also darüber, welche Transaktionen in den nächsten Blockkandidaten gepackt werden. Dies ermöglicht Mining-Pool-Betreibern sowohl Transaktionen zu zensieren (black listing), als auch Transaktionen auszuwählen, die nicht unbedingt im besten Interesse der Miner (z.B. Transaktionen mit geringen Gebühren, obwohl es welche mit hohen Gebühren gegeben hätte), oder gar des ganzen Netzwerks sind (z.B. leere Blöcke, um das Netzwerk zu verlangsamen) (white listing). Diese vermeintliche Macht der Pool-Betreiber muss nicht unbedingt von ihnen selbst ausgenutzt werden, bietet aber auch Regierungen und anderen Apparaten einen leichten Angriffsvektor, wenn diese versuchen wollen, das Netzwerk, bzw. einzelne Transaktionen gezielt zu zensieren, indem sie Mining-Pools unter Zwang setzen.
Wie in dieser Grafik leicht ersichtlich, gibt es heute einige wenige Pools, die einen deutlichen Anteil der globalen Hashrate bündeln. 80% (!!!) der Hashrate wird von den größten vier Pools bestimmt, und immerhin 55% (also mehr als die Hälfte - immer noch nicht cool) von den beiden größten. Dies macht Pools natürlich zu einem leicht bestimmbaren Angriffspunkt mit einer riesigen Zielscheibe auf dem Rücken.
Besteht überhaupt eine solche theoretische Möglichkeit, dass z.B. Foundry USA im Rahmen einer hypothetischen Verpflichtung durch Dritte (Regierung, Finanzaufsicht, Geheimdienst, etc.) mit der Zensur bestimmter Transaktionen beginnen könnte? Die Antwort ist: theoretisch erstmal ja. Auf technischer Ebene könnte es passieren. Doch Miner würden sehr schnell erkennen, dass etwas im Busch ist und ihre Hashrate auf andere Pools verlagern (dies muss nicht mal aus altruistischen Gründen geschehen, sondern einfach weil theoretische wirtschaftliche Anreize verloren gehen).
Transaktionsauswahl
Wie schon erwähnt, sind Mining-Pool-Betreiber heute dafür verantwortlich Transaktionen für den nächsten Block vorzuschlagen. Das bedeutet der Betreiber hat die volle Kontrolle darüber, wie der nächste Block im Mining-Prozess aussieht und die Miner und Mining-Farmen werden sozusagen zu Lieferanten von Hashrate, um diesen Vorschlag umzusetzen. Pools stellen den einzigen Koordinierungspunkt zwischen den teilnehmenden Hardware-Betreibern dar. Es bleibt dem Miner natürlich selbst überlassen, welchem Pool er sich anschließt (und ob sich überhaupt einem Pool angeschlossen wird) und auch der Wechsel von einem Pool zum nächsten ist relativ simpel und schnell vollzogen. Es bleibt jedoch dabei - Betreiber sind verantwortlich für die Auswahl von Transaktionen, die in die Kandidaten-Blöcke eingefügt (oder unterlassen, sprich zensiert) werden sollen. Es besteht also eine zusätzliche Bürde für jeden Miner zusätzlich zu kontrollieren, dass keine Transaktionen ausgeschlossen werden, oder Transaktionen sauber ausgewählt werden.
“Bitcoin is dead.” “Mining is over.” “They will regulate Bitcoin.” “Censorship will come.” - Peter Todd
Ob nun ein Pool-Betreiber oder Miner durch Zwang dazu geführt wird, individuelle Transaktionen hinzuzufügen, oder auszulassen, oder ob es aus eigenem Antrieb heraus geschieht (wie im obigen Artikel von MARA beschrieben: der von Marathon kontrollierte MARA Pool hatte entschieden, nur Blöcke mit OFAC-konformen Transaktionen zu produzieren und damit Transaktionen von und zu Adressen zu zensieren, die vom US-Finanzministerium auf die schwarze Liste gesetzt wurden, was einen großen Aufstand hervorrief und kein anderer Miner schloss sich dem Beispiel an. MARA veröffentlichten nach nur einem Monat in einer Pressemitteilung, dass keine Transaktionen mehr gefiltert würden.) ist dabei zunächst egal.
Doch eine Umkehrung der Verantwortlichkeit würde die Verantwortung zu den einzelnen tausenden Hardware-Betreibern (Minern) verschieben, die zentrale Entscheidungsgewalt der Pool-Betreiber auflösen und einen großen Angriffspunkt im Netzwerk eliminieren.
Wie alle anderen Computer-Netzwerk, besteht auch Bitcoin aus Protokollen, mit denen die Kommunikation zwischen Teilnehmern und Regeln festgelegt werden und die geschilderten Bedrohungen werden durch das aktuelle Protokoll ermöglicht, das von Minern und Mining-Pools verwendet wird, um miteinander zu kommunizieren: Stratum V1.
Stratum v2
Wie bei allen Sachen im Bitcoin-Ökosystem, gibt es keine zentrale Organisation, die Verbesserungen im Protokoll oder, wie in diesem Fall, in untergeordneten Protokollen vorschlagen und umsetzen kann. Es bedarf immer einer Gruppe von Entwicklern, die ein Problem im derzeitigen System erkennen und einen passenden Lösungsvorschlag unterbreiten. So auch bei Stratum. Das originale Stratum-Protokoll (v1) wurde 2012 eingeführt und wird seitdem weitgehend unverändert eingesetzt.
Bei der Stratum v2 Reference Implementation (SRI) handelt es sich um eine kostenlose, unabhängige, Open-Source-Variante von Stratum v2. Aber Justus, heißt das etwa, es gibt noch andere Stratum v2 Varianten? Bingo, Zweiter, es können beliebig viele Varianten erstellt werden. Alleine die Mining Pools entscheiden darüber, welches Protokoll, also welche Software, für sie und ihr Geschäftsmodell am besten funktioniert. Und die kürzlich vorgestellte Variante, die SRI, ist das bis dato umfangreichste und am weitesten unterstützte Update des Protokolls. Denn sowohl Braiins, ein Anbieter von Mining-Pools und Mining-Software (inkl. einer eigenen Variante von Stratum v2), als auch Foundry USA, der derzeit größte aller Mining-Pools, sind aktive Unterstützer des Projekts.
SRI ist also das wichtigste Protokoll-Update seit 2012. Aber was genau macht v2 so wichtig und wo liegen die Schwächen von v1?
In der aktuellen Version 1 ist Datenübertragung zwischen Minern, aber auch zwischen Minern und Pool-Betreibern nicht verschlüsselt. In v2 wird Kommunikation verschlüsselt und gewährleistet so Integrität und Vertraulichkeit der übermittelten Informationen. Dies soll vor allem vor sogenannten Man-in-the-Middle-Angriffen schützen, bei denen Dritte die Übertragung von Hashrate zwischen Minern und Pools abfangen (sogenanntes Hashrate-Hijacking), und diese als die eigenen weiterzuleiten und somit Auszahlungen zu stehlen.
Das v2 Protokoll ist vollständig binär. Das heißt, Datenübertragungen werden nicht in Menschen-lesbarem Textformat (ASCII Code), sondern in Computer-lesbarem Binärformat vorgenommen, was unnötige Datenmengen eliminiert. Dies und einige andere Leistungsverbesserungen machen den gesamten Prozess bis zu 20% performanter.
Stratum v2 dezentralisiert das Bitcoin-Mining erheblich, denn Miner bekommen die Möglichkeit, die Transaktionen fortan selbst auszuwählen, wodurch das Netzwerk zensurresistenter wird. Dies wird mit Hilfe von weiteren untergeordneten Protokollen erreicht, die es Minern ermöglichen, Transaktionen über ihre Nodes auszuwählen. Dies ist ein wichtiger Meilenstein bei der Demokratisierung der Transaktionsauswahl im gepoolten Mining und eliminiert die oben beschriebenen Risiken.
Konkret haben die Entwickler ein neues dezentralisiertes untergeordnetes Protokoll geschaffen, das sich Job Negotiator (JN) nennt. Achtung, jetzt wird es etwas technisch: Miner betreiben ihre eigenen Knoten, die eine neue Vorlage direkt vom Vorlagenanbieter erhalten. Die neue Vorlage enthält den Merkle-Pfad der Transaktionen, die vom Anbieter ausgewählt wurden. Für den neuen Block muss ein neuer Job erstellt werden, also sendet der JN des Miners eine Nachricht mit einem vorgeschlagenen Satz von Transaktionen an den Pool-Betreiber. Der Betreiber akzeptiert dann die Vorlage oder lehnt sie ab. Wenn der Vorschlag der Miner akzeptiert wird, werden sie benachrichtigt, dass sie mit dem Mining beginnen und ihre anteilige Hashrate an den Pool senden können.
Kurz gesagt: Miner schlagen vor, welche Transaktionen in einen Block kommen und nicht andersrum. Alle sind glücklich, alle sind froh und darüber hinaus geschieht dies natürlich blitzschnell, sodass für die Miner und den Pool kein Nachteil gegenüber anderen Mitbewerbern entsteht, denn beim Mining zählt jede Millisekunde, wenn es darum geht erfolgreich den nächsten Block produzieren zu dürfen, oder nicht.
Was sind die Anreize für die Pool-Betreiber, dieses neue Protokoll zu verwenden, wenn sie damit ihr Gewaltmonopol aufgeben?
Relativ einfach: Pool-Betreiber mögen diese Verantwortung eigentlich gar nicht. Sie haben sie irgendwie geerbt und sind mit dieser großen Verpflichtung gegenüber dem Netzwerk und sich selbst irgendwie im Unreinen. Ein bisschen so wie bei Morty, Aaliyah, Djibrail, Laila, Issa, Leonora, Naima und Amaya.
Pool-Betreiber mögen es also nicht so in der Öffentlichkeit zu stehen und permanent angegriffen zu werden, des Weiteren birgt die Transaktionsauswahl auch ein gewisses Haftungsrisiko, das sie gerne von sich weisen würden.
Die beiden anderen grundlegenden Merkmale des Stratum v2 Protokolls sind, wie oben beschrieben, natürlich auch Sicherheits- und Leistungsverbesserung. Alleine für diese Attribute würde es sich schon lohnen, auf das neue Protokoll umzusteigen.
Die neue Variante des Protokolls (SRI) wurde erst kürzlich öffentlich und als Open-Source Code zugänglich gemacht. Es bleibt also nur eine Frage der Zeit, bis sich nach Braiins und Foundry auch die anderen Mining-Pools (sehr wahrscheinlich) nach einer gründlichen Test-Phase dem Update öffnen.
Besonders in Zeiten, in denen Gegner von Bitcoin in halb-öffentlichen Reden über Pläne sprechen, wie man das Bitcoin-Netzwerk kontrollieren, bzw. für seine Zwecke benutzen kann, ist es wichtig die oben besprochenen Angriffs-Vektoren zu minimieren.
Carole House, ehemalige Direktorin für Cybersicherheit des Nationalen Sicherheitsrates des Weißen Hauses, sprach bei einem Event an der Universität von Princeton und sagte "sie würde lieber mehr Hashrate in den USA sehen, damit sie Miner zwingen können, das Netzwerk zu zensieren" und dass es "nicht nur darum ginge, Minern zu sagen, dass sie bestimmte Transaktionen nicht in Blöcke einbauen, sondern auch nicht auf Blöcken mit nicht konformen Transaktionen aufzubauen, damit diese Transaktionen nirgendwo in der Kette ankommen".
Die zeugt davon, dass Menschen wie Carole House ein substantielles Verständnis von der Bitcoin-Technologie besitzen und dieses Fachwissen dafür verwenden werden, Wege und Mittel aufzutun, wie man Bitcoin zumindest attackieren kann.
Sven
Sven Steiger
Sven is author of Genexy.org an independent #Bitcoin publication launched in 2022 // Block 736100 Nostr: npub102mehs854zw704xr6s3krzwesmy7r8fa5vxar6yeu3zpmyu94kvs2nasul
follow me :
Related Posts
Rabbit fragt #17
Aug 28, 2024
Der Bitcoiner in der Midlife-Crisis
Jun 14, 2024
Rabbit fragt...#16...Was ist eine Hardware Wallet?
May 26, 2024