“Produktiver, als sich auf reddit zu trollen”

Montreal @ night von |vv@ldzen| via flickr.com. Lizenz: Creative Commons

Am Wochenende fand im kanadischen Montreal der Workshop Scaling Bitcoin statt. Die veröffentlichten Vorträge zeigen, wie komplex die Skalierbarkeit des Bitcoins ist und wie viele verschiedene Standpunkte es gibt. Hinter den Kulissen scheint jedoch Bewegung in die Geschichte gekommen zu sein. Ein interessanter Vortrag von Emir Gun Sirer verdeutlicht, dass man sich in der Skalierbarkeits-Debatte nicht auf die Größe der Blöcke fixieren sollte.

Der Workshop Scaling Bitcoin fand am 12. und 13. September in Montreal in Kanada statt. Auf ihm trafen sich die Bitcoin-Entwickler, um darüber zu diskutieren, wie man den Bitcoin besser skaliert. Parallel dazu gab es viele Vorträge, die sich jeweils einen Aspekt der Skalierung vornahmen.

Das Problem, um das es ging und geht, ist die Skalierbarkeit des Bitcoins. Skalierbarkeit heißt bei IT-Systemen: wie viele Daten packt das System? Ein gut skalierbares System sollte mit einer potenziell gigantischen Menge an Daten zurechtkommen. Bei Transaktionssystemen ist dies zum Beispiel VISA. Das Netzwerk des Kreditkartenanbieters schafft 56.000 Transaktionen je Sekunde. Beim Bitcoin sind dies wohl nur 2-3. Dies zeigt, wie sehr sich der Bitcoin weiterentwickeln muss, um seinem Anspruch gerecht zu werden, ein globales Transaktions- oder Settlementsystem zu sein.

Jeff Garzik, einer der bekanntesten Bitcoin-Kernentwickler, veranschaulichte die Dringlichkeit des Problems mit einer kurzen Geschichte. Fidelity Investments würde den Bitcoin gerne für ein Projekt nutzen, aber wenn sie ihr Beta-Programm anknippsen, würden sie sofort die Kapazitäten des Bitcoins voll belegen.

Kein Konsens, aber gute Stimmung

Bitcoin muss mehr Transaktionen bändigen können. Darüber sind sich eigentlich alles einig. Bisher drehte sich die Diskussion vor allem darum, ob man das Limit der Blockgröße, derzeit 1 Megabyte, aufhebt, und wenn ja, wo man das neue Limit ansetzt. Gavin Andresen ist mit seinem BIP101 weit vorgestoßen, hat die Diskussion damit erst ins Laufen gebracht, sich aber auch gehörig Kritik eingefangen. Andere Kernentwickler wollen die Blockgröße, falls überhaupt, nur sehr zaghaft anheben. Stattdessen sollen weitere Schichten wie das noch längst nicht entwickelte Lightning Netzwerk für eine nachhaltige Skalierbarkeit sorgen.

Da die Meinungen so weit auseinandergehen, war auch von ScalingBitcoin kein Konsens zu erwarten. Insgesamt scheint jedoch eine sehr gute Stimmung gewesen zu sein, die viele fruchtbare Diskussionen hervorbrachte. Die wichtigsten Gespräche fanden wohl “offchain”, also nicht dokumentiert statt. Wayne Vaughan brachte dies mit einem tweet zum Ausdruck:

Heißt auf Deutsch etwa: “Die wichtigste Lektion: Von Angesicht zu Angesicht zu reden ist produktiver, als sich auf reddit zu trollen.” Wer hätte das gedacht?

Wer nun Lust hat, mehr über die Konferenz zu erfahren, findet im Netz reichlich Material. Der Veranstalter der Konferenz hat auf Youtube zahlreiche Videos online gestellt, und hier findet ihr die Transkripte der Vorträge. Ich habe mich ein wenig in die Transkripte eingelesen, und diese wirken tatsächlich nicht wie eine zielführende Diskussion, welches BIP wir jetzt nehmen, um den Bitcoin skalierbar zu machen, sondern wie einer dieser Sammelbände, die gerne nach wissenschaftlichen Konferenzen herausgegeben werden: Ein Sammelsurium von Aufsätzen, die sich unter einem lockeren Dach den verschiedensten Themen und Randaspekten widmen. Es geht ums Mining, um die Arbeit der vollen Knoten, um Lightning, um einen Markt für Gebühren, um die Synchronisierung von Blöcken und um vieles mehr. Alles Themen, die eine Rolle spielen im Komplex “Skalierbarkeit” – aber keine Themen, die auf einen konkrete Einigung hindeuten.

Wissenschaftlich erforschen, was zu erforschen ist

Von den Vorträgen, die ich mir durchgelesen habe, fand ich den von Emir Gun Sirer bisher am interessantesten. Sirer ist Professor an der Cornell University, beschäftigt sich mit verteilten Systemen und bloggt mit seinen Ko-Forschern auf “Hacking, Distributed” gerne auch über den Bitcoin. Er stellte zunächst klar, worum es geht:

I want to talk today about how to scale bitcoin. We want lower latency, we want higher throughput, more bandwidth and more transactions per second, and we want security. We can try to tune the parameters.

Heisst soviel wie: Wir wollen Bitcoin skalieren. Wir wollen weniger Verzögerung, mehr Durchfluss, mehr Bandbreite, mehr Transaktionen, mehr Sicherheit. Alles gleichzeitig geht nicht, das eine macht das andere schlechter. Wir können nur die Parameter einstellen.

Anschließend kommt ein Satz, der zeigt, wie stark am Anfang die ganze Debatte noch ist:

We need proper evaluation. We need a scientific way to realize what we are achieving and how to evaluate which proposal is better.

Übersetzt: Wir müssen uns das genau anschauen. Wir müssen wissenschaftlich feststellen, was wir erreichen können und wie wir entscheiden, welcher Vorschlag besser ist.

So reden Wissenschaftler, wenn sie Grundlagenforschung betreiben. Zum Beispiel zu Graphen, das seit bald zehn Jahren der intensivsten Grundlagenforschung untersteht und noch immer weit davon entfernt ist, auf den Markt zu kommen. Grundlagenforschung bedeutet: Wir müssen wissenschaftlich erforschen, was wir erforschen wollen und wie wir unsere Ergebnisse bewerten. Wir haben also noch gar nicht angefangen, wirklich zu forschen.

Klingt nicht gut, oder? Satoshi Nakamoto hat 2 Jahre gebraucht, um den Bitcoin zu entwickeln. Die Kernentwickler brauchen vermutlich erheblich länger, um das Problem der Skalierbarkeit zu lösen. Man könnte nun beklagen, dass mit einem solch zögerlichen Ansatz noch kein großes Projekt vollendet wurde.

Es gibt noch Luft

Dennoch ist es gut, dass man sich zusammensetzt und die beste Lösung entwickelt. Schließlich ist das Thema, trotz Jeff Garziks Fidelity-Episode, längst nicht so drängend, wie es manchmal dargestellt wird. Derzeit funktioniert der Bitcoin. Man macht eine Transaktion, fügt eine Gebühr hinzu – je nach Dringlichkeit etwa zwischen 0,1 und 1 cent – und die Zahlung wird in 10 Minuten bis einer Stunde bestätigt. Teilweise spielt die Bestätigung ohnehin keine Rolle – wenn man etwa bei BitPay bezahlt – oder wenn man eine Transaktion auf eine andere Wallet von sich überweist.

Wenn wir nicht gerade Stresstest haben, ist das Netzwerk bei einem derzeitigen Transaktionsvolumen von etwa 120.000 Transaktionen am Tag noch weit von seiner Belastungsgrenze entfernt. Die Blöcke sind während der Stresstests im Durchschnitt 0,7 Megabyte groß und fallen danach wieder auf rund 0,4 Megabyte, was wohl die Größe sein dürfte, die der Bitcoin derzeit benötigt. Man hat also noch eine Menge Luft mit der Skalierbarkeit, und sollte es tatsächlich zu einer dauerhaften Überlastung kommen, dürften sich unter den Kernentwicklern schnell ein Konsens erreichen lassen, die Größe der Blöcke geringfügig zu erhöhen, um Zeit zu erkaufen, eine nachhaltige Lösung zu entwickeln.

Nach allem, was mittlerweile über größere Blöcke bekannt ist – sie erhöhen die Rate verwaister Blöcke und die Verzögerung des Konsens im Netzwerk – ist ein Proposal wie BIP101 von Gavin Andresen, dass die Blöcke relativ abrupt wachsen lässt, mit enormen Risiken verbunden. Daher ist es sehr zu befürworten, wenn sich die Entwickler wie in Montreal zusammensetzen und nach der bestmöglichen Lösung suchen, die alle Parameter sorgfältig gegeneinander abwägt.

Mehr Blöcke anstatt größere Blöcke?

Sirer hat einen originellen Ansatz vorgeschlagen, wie man Bitcoin besser skalieren könnte. Zusammen mit seinen Forschungskollegen hat er das Bitcoin-Netzwerk auf 500 Computern simuliert und dabei verschiedene Parameter durchgespielt. So hat er etwa anstelle der Größe der Blöcke deren Häufigkeit erhöht. Was wäre, wenn man die Interwalle zwischen den Blöcken verkürzen würde? Die Bandbreite bleibt interessanterweise die Gleiche, die Anzahl an Transaktionen erhöht sich und die Konsensfindung im Netzwerk wird sogar besser. Das ist gut. Mit Konsensfindung meint Sirer die Synchronisierung der Knoten. Mindestens 80 Prozent der Zeit sollen mindestens 80 Prozent der Knoten einig sein, was vor 10 Minuten geschehen ist.

Sirer hat auch größere Blöcke simuliert. Die Bandbreite erhöht sich, und mit ihr auch die Verzögerung der Konsensfindung. Das ist schlecht. Warum sollte man also verkrampft an der Blockgröße rütteln, wenn man auch ihre Anzahl erhöhen kann? Viele Altcoins, etwa Lite- oder Dogecoin, haben viel kürzere Abstände zwischen den Blöcke und scheinen dennoch zu funktionieren.

Sirer stellte danach das von ihm und seinen Kollegen entwickelte Protokoll Bitcoin NG vor, das für alle von ihm untersuchten Parameter die beste Lösung darstellen soll. Bitcoin NG ist nicht einfach nur ein anderer Client und sogar mehr als eine Hardfork. Bitcoin NG ist ein Konzept für ein weitgehend anderes Protokoll. Es beruht auf der Trennung zwischen “Key Blocks” und “Microblocks.” Key Block haben keinen Inhalt, entscheiden aber, wer der “Leader” ist. Die Microblocks beinhalten Transaktionen und werden nur von den Leadern, die einen Key Block gefunden haben, generiert. Die Interwalle zwischen den Keyblocks beträgt wie bisher beim Bitcoin 10 Minuten, während die Microblocks in wenigen Sekunden auftauchen.

Es gibt für Bitcoin NG noch kein Whitepaper. Der Vorschlag wurde, immerhin, von coindesk als “most newsworthy” Beitrag der Konferenz vorgestellt. Die Idee ist originell, und wenn sie durch genügend Forschung und Simulation erprobt wurde, hat sie eine echte Chance, die künftige Debatte mitzuprägen.

Allerdings ist auch dies nur einer von vielen Aspekten. Eine Folgekonferenz, ScalingBitcoin II, soll diese Aspekte zusammenführen und sich einer greifbaren Lösung annähern.

About Christoph Bergmann (887 Articles)
Das Bitcoinblog wird von bitcoin.de gesponsort, ist inhaltlich aber unabhängig und gibt die Meinung des Redakteurs Christoph Bergmann wieder. Wenn Ihnen das Blog gefällt, freuen wir uns über Spenden an 1BvayiASVCmGmg4WUJmyRHoNevWWo5snqC. Jeder Satoshi wird dazu verwendet, um das Blog besser zu machen. Weitere Infos, wie Sie uns unterstützen können, finden Sie HIER. Gastbeiträge sind ebenfalls willkommen. Meinen öffentlichen PGP-Schlüssel sowie den Bitmessage-Schlüssel finden Sie HIER

3 Comments on “Produktiver, als sich auf reddit zu trollen”

  1. Danke für diese schöne Zusammenfassung des Bitcoingeschehens🙂

  2. Scheint sich Ernüchterung breit zu machen. Eine Erhöhung der Blockgrösse ist eher zu riskant (höhere Bandbreite, verzögerung Konsensfindung), eine schnellere Blockbildung kompliziert, weil dabei auch die Belohnung der Miner pro Block entsprechen reduziert, sowie die Difficulty angepasst werden muss. Eine Kombination aus beidem könnte vielleicht eine Lösung sein. Z.B. 2 MB Blöcke und alle 2,5 Minuten (wie bei Litecoin) einen Block ergeben dann so ca. 20 mögliche Transaktionen pro Sekunde. Dies ist dann aber immer noch Lichtjahre von einer Währung für die Massen entfernt. Ohne Settlement Network gehts wohl eher nicht. Oder gleich ein neues Protokoll alla Sirer, welches eigentlich einer neuen Kryptowährung gleichkommt? Na da kann man ja nur hoffen, dass Bitcoin “vorerst” eine Nischenwährung bleibt…

  3. Carsten Otto // 16. September 2015 at 8:51 // Reply

    Ich würde “full node” als “vollständigen Knoten” übersetzen. “Voll” ist irreführend.

3 Trackbacks / Pingbacks

  1. Warum XT und BIP101 so gefährlich sind | BitcoinBlog.de – das Blog für Bitcoin und andere virtuelle Währungen
  2. Scaling Bitcoin in Hongkong: der Konsens rückt näher! | BitcoinBlog.de – das Blog für Bitcoin und andere virtuelle Währungen
  3. Scaling Bitcoin in Hongkong: der Konsens rückt näher! | Bitcoin-Einfach.de

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s