Website-Icon BitcoinBlog.de – das Blog für Bitcoin und andere virtuelle Währungen

Scaling Bitcoin in Hongkong: der Konsens rückt näher!

"Hong Kong Sunset" von Mike Behnken via flickr.com. Lizenz: Creative Commons

Der Scaling Bitcoin Workshop in Hongkong tagt noch. Aber bereits jetzt gibt es spannende erste Eindrücke, die über das Netz geteilt werden. Es scheint, als schlagen die Teilnehmer diesmal tatsächlich eine konkretere Richtung ein. Die Wahl des Standorts führt zudem zu einem regen Austausch zwischen Ost und West, und Pieter Wuille bringt eine überraschende Lösung ins Spiel.

Scaling Bitcoin in Hongkong ist der zweite Workshop der Scaling Bitcoin Reihe. Sein Ziel ist es, einen Konsens zwischen Entwicklern, Community und Miner herbeizuführen, wie das immer drängendere Problem der Skalierbarkeit des Bitcoins zu lösen ist. Derzeit kann das Bitcoin-Netzwerk nur 2-3 Transaktionen je Sekunde prozessieren, da die Größe der Blöcke auf 1 MB limitiert ist. Es gibt eine Vielzahl von Möglichkeiten, die Skalierbarkeit des Bitcoins zu verbessern – allerdings erfordern sie einen Konsens unter den wichtigsten Beteiligten, um ohne große Risiken für das ganze Netzwerk durchgeführt zu werden. Nachdem die erste Scaling Bitcoin Konferenz einen technischen Überblick vermittelt hat, soll die zweite Konferenz vom 6. bis zum 7. Dezember nun wichtige Schritte hin zu einer Einigung einleiten.

Die große Firewall

Der Begriff der großen Firewall bezeichnet eigentlich die Internetzensur der Volksrepublik China. Man könnte mit ihr aber auch die großen Kommunikations-Probleme bezeichnen, die jeden Austausch zwischen West und Ost begleiten. China ist anders, oft nicht so anders, wie die meisten denken, aber dennoch anders. Auf dem Scaling Bitcoin Workshop in Hongkong, der vom 6. bis zum 7. Dezember läuft, sollten die chinesischen Miner – die zusammen mehr als 60 Prozent der Hashrate stellen – sowie die Entwickler aus dem Westen zusammenkommen. Denn ein Konsens zur Skalierbarkeit ist nicht ohne die chinesischen Miner möglich.

Bereits am ersten Tag des Workshops kamen auf dem Mining-Panel Vertreter der chinesischen (Avalon, Bitmain, BTCC, BW und F2Pool) sowie der westlichen Mining-Industrie (KnC, BitFury) zusammen. Die Mining-Community stimmte überein, dass sie einen Konsens über die ideale Skalierbarkeit des Netzwerkes wünscht, aber diese Entscheidung durch die Community getroffen werden sollte und nicht durch den Willen einer Gruppe. Die beiden beliebtesten BIPs zur Skalierbarkeit, BIP101 und BIP100, sind beide für die Mining-Community einigermaßen akzeptabel, BIP100 ein wenig mehr als BIP101, und noch besser wäre eine Mischung aus beiden.

Eines der Probleme, die auch auf den Tisch kamen, war die Große Firewall. Jonathan Toomim hat beispielsweise die Ergebnisse der Tests des umstrittenen, aber beliebten BIP101 im Testnet präsentiert. An sich waren Blöcke mit 8 oder mehr MB kein Problem. „Der größte Teil der Welt kann mit großen Blöcken umgehen. China, allerdings, kann es nicht. Chinesische Pools müssen ihre Blocks außerhalb von China propagieren.“ Toomim betreibt Nodes in Beijing, Shanghai, Shenzhen und Hong Kong sowie Europa. Er hat zur selben Zeit mit allen diesen Knoten 8 MB Blöcke heruntergeladen. Während die europäischen Knoten den Download bereits abgeschlossen hat, lädt Beijing mit 200kb/sekunde und Shangai mit 50kb/sek weiter herunter. „Vor einigen Tagen war Shanghai schneller als überall sonst. Noch ein paar Tage zuvor war Peking am schnellsten. Es ändert sich von Tag zu Tag, manchmal von Stunde zu Stunde. Wenn ein Knoten mit 30-40 kb/sek. lädt, bekommen wir Probleme. Und wir hatten Probleme. Aber nur mit den chinesischen Knoten.“

Viele BIP – viele Möglichkeiten der Skalierbarkeit

Es wäre zuviel, hier auf jeden einzelnen Vortrag einzugehen. Wenn ihr wollt, lest die Transkripte der Vorträge hier nach. Ich möchte eine Präsentation von Jeff Garzik vorstellen, der versucht, auf nüchterne Weise die vielen verschiedenen BIPs zur Skalierbarkeit einzuordnen. Seine Präsentation (hier das Transkript) ist spannend für alle, die sich einen Überblick über die mannigfaltigen Möglichkeiten, Bitcoin besser zu skalieren, machen wollen. Diese Bitcoin Improvement Proposals (BIP) stehen zur Debatte:

Garzik möchte die verschiedenen BIPs nicht bewerten bzw. sich nicht für eines aussprechen. Dennoch drückt er seine persönliche Meinung aus: Am besten man macht jetzt eine kleine Änderung, um Feldforschung für künftige Änderungen zu betreiben. Man müsse jetzt planen und den Code schreiben, um die Änderung in 6 Monaten auszuführen. Es ist ökonomischer Konsens, die Größe der Blöcke zu erhöhen, und technischer Konsens, dass ein Sprung auf mehr als 2 MB riskant ist. Die für Garzik ungünstigste Lösung ist BIP100 – nichts zu tun. Dies wäre ein armseliges Signal an die Märkte und die Community und würde vermutlich zur Spaltung der Bitcoin-Szene führen.

Dies klingt, als läge der Konsens irgendwo zwischen BIP100, 103, 105, 106, 102 und 248. Mir persönlich gefällt BIP106 am besten: die Blockgröße ändert sich mit dem Bedarf, und es gibt keine Gruppe, die am Drücker sitzt.

Segregated Witness: Gleiche Blockgröße, 4x mehr Transaktionen

Die meisten Beachtung fand jedoch ein Vorschlag von Pieter Wuille, Core-Entwickler und Co-Gründer von Blockstream. Wuille sprach über „Segregated Witness“. Dies ist eine Änderung, die über eine Soft Fork implementierbar ist und die Inhalte von Transaktionen verändert. Sie kann dazu führen, dass die Daten in den Blöcken um 75% reduzierbar sind. Insgesamt ist das Thema kompliziert, daher gebe ich es hier sehr verkürzt wieder. Wer die lange Version lesen möchte, dem sei das Transkript oder die Präsentation empfohlen.

Jede Transaktion hat Inputs, die darauf verweisen, welche Outputs zuvor ausgegeben worden sind. Jeder Input beinhaltet die Transaktions-ID und die Signatur, um zu beweisen, dass sie gültig ist, sowie einen Betrag und ein Script in jedem Output. Wuille fragt: sind all diese Informationen gleich wichtig? Sie sind es, natürlich, nicht. So sind die „historischen“ Signaturen für viele Bereiche unnötig, obwohl sie rund 60 Prozent der Blockchain ausmachen. Sie spielen etwa in der Datenbank der unspent coins, dem UTXO set, keine Rolle. „Wäre es nicht toll, wenn wir die Signaturen weglassen?“

Allerdings sind die Signaturen Teil der Transaktions-Hash. Wuille schlägt vor, den Merkle-Tree von Transaktionen in zwei Teile zu teilen, von denen einer die ID ohne Signatur und der andere die Hashes ohne Signaturen trägt. Dies würde es ermöglichen, die Signaturen unter bestimmten Umständen wegzulassen und historische Blockchain-Daten zu „prunen“ (=komprimieren bzw. kürzen). Eine Grafik von Wuille zeigt, dass die Blockchain mit diesem Konzept um 2/3 bis 3/4 kleiner wäre. Darüber hinaus unterbinde dieser Patch sämtliche Arten von Malleability-Problemen und ermöglicht „Fraud proofs“ für SPV-Wallets. Wuille hat eine Möglichkeit entwickelt, „Segregated Witness“ als Softfork zu implementieren.

„Das ist mein Vorschlag, was wir sofort machen. Wir implementieren segregated witness so bald wie möglich. Was wir damit machen, ist die witness data der Blockgröße um 75% zu senken. Das ermöglicht uns also, 4x mal so viele Signaturen in der Chain zu erlauben.“ Auf reddit wird Wuille Vorstoß als „genial“ und „brillant“ gefeiert.

Konsens in greifbarer Nähe?

Insgesamt vermittelt das, was man bisher über Scaling Bitcoin hört, einen sehr optimistischen Eindruck. Zum einen nähert sich ein Konsens zur Erhöhung der Blöcke, zum anderen wird weiter an Möglichkeiten geforscht, die Blockchain abseits des Blocksize-Themas besser skalierbar zu machen. Diese Mischung sowie die Kooperation mit den Minern in China – auf twitter wird von der engen Zusammenarbeit geschwärmt – könnten den Workshop zum Wendepunkt in der Blocksize-Debatte machen.

Die mobile Version verlassen