Dezentralisierung und Skalierbarkeit – zukunftsweisende Lösungen für Bitcoin und andere Blockchain-Systeme

Als das Konzept vom elektronischen Geld und das Lösen der “Double Spend”-Problematik[1] ohne Intermediär im Jahr 2008 von dem Pseudonym Satoshi Nakamoto im berühmten Bitcoin-Whitepaper erläutert wurde, waren die Erwartungen gross. Versprochen wurde ein sicheres System, mit welchem Geld elektronisch transferiert werden kann und welches sich gut als Online-Zahlungsmittel eignet.[2] Das Versprechen wurde weitgehend gehalten, wenn wir bedenken, dass Bitcoins im Jahr 2011 zum Preis von 0.0005 BTC (damals < 0.01 USD) pro Transaktion innert kurzer Zeit global transferiert werden konnten. In den meisten Fällen war nicht einmal eine Transaktionsgebühr notwendig.[3] Die hohen Erwartungen wurden aber spätestens am 21. Dezember 2017 gebremst, als eine Bitcoin-Transaktion aufgrund des damals sehr hohen Handelsvolumens 37.49 USD kostete (siehe Abbildung 1).[4]

Abbildung 1: Historische Bitcoin Transaktionsgebühren für eine Validierung im nächsten Block (in USD pro Transaktion)[5]

Zu diesem Zeitpunkt übertraf die Anzahl an Transaktionen, welche über die Bitcoin-Blockchain getätigt wurden, die Anzahl an Transaktionen, welche mit der limitierten Bandbreite des Systems verarbeitet werden konnten. Da die Aufnahme von Transaktion in neue Blöcke auf der Bitcoin-Blockchain dem Auktionsprinzip folgt, mussten User höhere und kompetitivere Gebühren setzen, um zu gewährleisten, dass ihre Transaktionen von den Minern im überlasteten System verifiziert und im nächsten Block mit aufgenommen wurden. Wegen dieses Auktionsprinzips und aufgrund des limitierten Transaktionsvolumens, war Bitcoin Ende 2017 als Zahlungsmittel nicht mehr wettbewerbsfähig genug. Spätestens nach diesem Ereignis war jedem Teilnehmer im Bitcoin-Universum klar, dass zur weiteren Adoption der Technologie das dominierende Skalierungsproblem gelöst werden muss.

Skalierbarkeit vs. Dezentralität

Die begrenzte Anzahl verarbeiteter Transaktionen pro Sekunde – diese liegt momentan bei etwa 7 Transaktionen – ergibt sich im Bitcoin-Protokoll, welches auf dem Proof-of-Work-Algorithmus basiert, durch mehrere Parameter. Dies ist zum einen die Grösse einer Transaktion gemessen in Bytes (eine Transaktion beläuft sich im Durchschnitt auf 400 Bytes), zum anderen die maximal mögliche Blocksize (ca. 1 Megabyte). Der dritte Parameter ist die sogenannte «Blocktime»: die Zeitperiode, in welcher durchschnittlich ein neuer Block «gemined», also der Blockchain hinzugefügt, werden kann. Während die Transaktionsgrösse durch die Informationen vorgegeben wird, welche pro Transaktion gespeichert werden, sind die beiden Parameter Blocksize und Blocktime künstlich gewählt, um das Ökosystem rund um den Konsensprozess stabil und dezentral zu halten[6]. Würde man entweder die Blocksize bei gleichbleibender Blocktime erhöhen oder andernfalls die Blocktime bei gleichbleibender Blocksize verkürzen, wären manche Nodes (sprich: voneinander unabhängige Server oder Rechner), welche durch das Bereitstellen von Rechenleistung und Speicherplatz zum System beitragen, nicht mehr fähig, den dadurch gesteigerten Systemanforderungen Rechnung zu tragen, und könnten nicht mehr am Mining teilnehmen. Würde dieser Effekt überwiegen, könnte dies dazu führen, dass die Machtverteilung über den Konsensprozess innerhalb der Bitcoin-Community ausgehebelt werden und sich die Governance auf einige wenige Mitwirkende konzentrieren würde. Durch eine solche Zentralisierung der Machtverteilung wäre es diesen wenigen Parteien möglich, das System durch eine Koalition willentlich zu beeinflussen. Dadurch würde der Wert des Systems nur mehr auf dem Vertrauen beruhen, welches diesen wenigen Parteien entgegengebracht wird. Das “Trustless”-Prinzip, welches eine Blockchain-Datenbank im Kern von herkömmlichen, zentralisierten Datenstrukturen wie beispielsweise einer SQL-Datenbank unterscheidet, wäre gefährdet. Diese Schilderung behandelt eine Ausprägung des bekannten Kompromissproblems zwischen Skalierbarkeit und Dezentralität in Blockchain-Systemen.

Mögliche Lösungsansätze

Die Diskussion des Skalierungsproblems wird auf unterschiedlichen Ebenen geführt: Ist es sinnvoller, die bestehenden Systeme durch eine Reparametrisierung skalierbarer zu machen, oder kann eine bessere Skalierung erreicht werden, indem ein neuer Konsensalgorithmus eingesetzt wird? Oder kann Skalierung gar ausserhalb von bestehenden Systemen entstehen, im sogenannten “Off Chain”-Bereich? Lösungsvorschläge in all diesen Bereichen unterscheiden sich zum einen durch ihre technische Realisierbarkeit zum jetzigen Zeitpunkt und zum anderen durch ihren Grad an Dezentralitätsverlust. Während beispielsweise Reparametrisierungen von bestehenden Blockchain-Protokollen durchaus machbar sind, bergen die bisher oft nur im experimentellen Rahmen eingesetzten Off-Chain-Lösungen weniger Risiko, die Blockchain letztendlich zu einem zentral geführten Konstrukt zu transformieren. Nachfolgend werden die drei erwähnten Ebenen differenziert und anhand von Beispielen erläutert.

Reparametrisierung

Reparametrisierung ist die technisch gesehen simpelste Methode, um Skalierung innerhalb von Blockchain-Systemen zu erzielen.  Im Grundsatz geht es darum, neue Verhältnisse für die Parameter Blocktime, Blocksize und in beschränktem Rahmen auch für die Transaktionsgrösse zu definieren, um an Skalierbarkeit zu gewinnen. Obwohl diese Art der Skalierung in der Praxis bereits verfügbar ist und auch eingesetzt wird, sind davon geprägte Systeme oft weniger dezentral ausgerichtet als diejenigen, bei welchen der Trade-Off zwischen Dezentralität und Skalierbarkeit nicht eingegangen wurde. Um ein Beispiel zu nennen: Während der Hochperiode der Transaktionsgebühren im Bitcoin-Ökosystem zum Jahreswechsel 2017/2018 entstand aus der ideologischen Uneinigkeit innerhalb der Community zwischen “Pro-Dezentralität” auf der einen und “Pro-Skalierbarkeit” auf der anderen Seite eine “Hard Fork” (sprich: Abspaltung) der Bitcoin Chain. In dieser Fork wurden geänderte Parameter für Blocksize und Blocktime eingesetzt, was dazu führte, dass eine höhere Leistung, gemessen an der maximalen Anzahl Transaktionen pro Sekunde, erzielt werden konnte: Bitcoin Cash war entstanden.

Konsensalgorithmus

Mit Bitcoin wurde der Proof-of-Work-(PoW-)Konsensalgorithmus bekannt, welcher jeder Person mit Zugang zum Internet und einem Rechner die Möglichkeit eröffnet, an der Validierung und dem Schreiben neuer Blöcke teilzuhaben. Diese offene Art der Netzwerkvalidierung erlaubt es jeder Person, durch das Einsetzen von Hardware und Energie auf dem Netzwerk mitzubestimmen und Einfluss auszuüben. Die Nachteile dieses Ansatzes sind der hohe Gesamtenergieverbrauch sowie die begrenzte Bandbreite, welche beibehalten werden muss, um die Bitcoin-Blockchain allen Netzwerteilnehmern offen zu halten, was schlussendlich in einem geringen Transaktionsvolumen resultiert. Einen anderen Ansatz zur Lösung der Double-Spend-Problematik bietet beispielsweise der Proof-of-Stake-(PoS-)Konsensalgorithmus. Während beim PoW-Ansatz der Einsatz von Energie verwendet wird, um das System zu sichern, wird diese Funktion in PoS-basierten Netzwerken durch sogenannte “Stakes” erfüllt. Stakes sind grundsätzlich normale Tokens innerhalb eines Währungssystems (z. B. Bitcoins oder Ether), welche mit einer temporären Sperre versehen werden und während der Dauer dieser Sperre nicht gehandelt werden können – wie eine Art Kaution. Das Sperren dieser Tokens erlaubt es dem Besitzer, Stimm- und Schreibrechte auf der Blockchain auszuüben, beziehungsweise der Blockchain neue Blöcke hinzuzufügen. Während alle Miner beim PoW gegeneinander antreten, um das ihnen gestellte Rechenproblem als erste zu lösen, wird beim Proof of Stake eine begrenzte Anzahl an Rechnern zur Generierung eines neuen Blocks eingesetzt. Die Auswahl der Rechner trifft ein Zufallsalgorithmus, der die Anzahl der gestakten Tokens (sprich: die Höhe der Kaution) bei der Auswahl mitberücksichtigt. Neue Blöcke werden in einem PoS-System von den ausgewählten “Stakern” eingereicht, anschliessend aber vom gesamten Netzwerk validiert. Werden Betrugsversuche ausgeübt, führt dies zum “Verbrennen”, beziehungsweise zur Vernichtung, der gestakten Tokens. Dass beim PoS-Algorithmus keine Rechenleistung aufgewendet werden muss, um zu bestimmen, welcher “Miner” auserkoren wird, um den nächsten Block einzureichen, führt zu einer effizienteren Abwicklung des Schreibverfahrens auf der Blockchain und bietet neue Ansätze für Skalierbarkeit.

Eine weitere populäre Konsensmethode ist der sogenannte “Practical Byzantine Fault Tolerance”-Algorithmus. Dieser Algorithmus wird häufig für Permissioned Blockchains eingesetzt, in denen eine zentrale Instanz über die Aufnahme von Teilnehmern in die Blockchain entscheidet. Aufgrund seines zentralisierten Aspekts wird der «Practical Byzantine Fault Tolerance»-Algorithmus häufig nur in Situationen eingesetzt, in welchen bereits ein gewisser Grad an Vertrauen zwischen den Netzwerkteilnehmenden besteht. Beispiele hierfür sind professionelle Industriekonsortien. Obwohl diese Netzwerke erhöhte Skalierbarkeit aufweisen, bieten sie aufgrund ihrer Zentralität keinen Ersatz für die offenen und auf Dezentralität bedachten Protokolle.

Innovation auf der Ebene von Konsensalgorithmen zeigt sich in der aktuell vorhandenen Vielfalt, in welcher die Algorithmen in der Praxis eingesetzt werden. Durch leichte Abwandlungen und durch das Vermischen von gängigen Mechanismen erhoffen sich die Schaffer neuer Blockchain-Ökosysteme, neue Pionierleistungen in den Bereichen Skalierbarkeit und Dezentralität zu vollbringen. Ein Beispiel in der Praxis bietet EOS, welches ein «Delegated-Proof-of-Stake»- oder DPoS-Modell einsetzt, bei welchem die “Staker” aus wenigen Hunderten von Parteien wählen können, wer für sie die Validierung bzw. das Hinzufügen neuer Transaktionen in die Kette vornehmen darf. Aeternity auf der anderen Seite setzt einen kombinierten PoS- und PoW-Ansatz um, welcher wiederum die Vorteile und Nachteile von PoS und PoW relativiert.

Off-Chain-Systeme

Off-Chain-Lösungen versuchen, das Skalierungsproblem von Blockchains zu lösen, indem ein Teil der Transaktionen nicht auf der Blockchain selbst, sondern über ein separates System durchgeführt wird.  Dabei geht es vor allem um vergleichsweise geringere Beträge, bei denen schlussendlich die Skalierbarkeit und die dadurch ermöglichten geringeren Transaktionsgebühren höher gewichtet werden als die Dezentralität der sogenannten «Main Chain» (wie z. B. Bitcoin oder Ethereum). Die Idee dahinter ist, dass die höchst robuste Main Chain schlussendlich nur noch als Wertbasis für daran angeschlossene Sub-Systeme dient – ähnlich wie zu Zeiten des Gold-Standards, als Banknoten zwar von unterschiedlichen Staatsbanken in ihrer eigenen Denomination ausgegeben wurden, ihr Wert jedoch immer an der Wertbasis des Goldes hing. In Off-Chain-Systemen können Werttransaktionen durchgeführt werden, ohne dass die Transaktionen direkt auf der damit verbundenen Main Chain verbucht werden müssen.

Ein Beispiel für Off-Chain-Konzepte sind sogenannte “Sidechains”. Bei einer Sidechain müssen zuerst Tokens auf der Main Chain gesperrt werden, damit ihr entsprechender Gegenwert im separaten System der Sidechain freigegeben werden kann. Um die gesperrten Tokens auf der Main Chain wieder freizugeben, muss wiederum zuerst der Gegenwert auf der Sidechain vernichtet oder «verbrannt» werden.  Beide Prozesse laufen im Normalfall automatisiert via Smart Contracts ab. Das Protokoll einer Sidechain kann individuell ausgestaltet sein, um die Skalierbarkeit für die Übertragung kleinerer Beträge zu gewährleisten, und muss sich nicht an der Main Chain orientieren; sie kann also durchaus andere Konsensalgorithmen verwenden, wie z. B. PoS, oder auch zentralisiert auf einen klassischen Intermediär zurückgreifen. Die Dezentralität der Main Chain wird dadurch nicht negativ beeinträchtigt. Ein Beispiel für eine solche Sidechain bietet das Projekt “rsk”[7].

Einen zweiten Typ eines Off-Chain-Umsystems stellt die “State Channels”-Technologie dar. Der Unterschied zur Sidechain liegt in der Art und Weise, wie Transaktionen innerhalb des Systems stattfinden. In einem State-Channels-System betreibt jeder Teilnehmer im System einen Knotenpunkt[8]. Möchten zwei Teilnehmer eine Transaktion durchführen, eröffnen sie einen sogenannten Channel, der sie direkt miteinander verbindet. Über einen solchen Channel können Tokens in beliebiger Höhe mit minimalen Transaktionskosten zwischen den Parteien transferiert werden. Es sind aber auch Transaktionen zwischen Parteien möglich, die keinen direkten Channel unterhalten, solange sie über andere Netzwerkteilnehmer indirekt miteinander verbunden sind. Das bekannteste Beispiel für die Anwendung von State Channels bietet das “Lightning Network”, welches an die Bitcoin-Chain gebunden ist und bereits in einer Beta-Version veröffentlicht wurde.

Off-Chain-Lösungen müssen aber nicht unbedingt an Smart Contracts oder das Internet gebunden sein. Auch der Transfer einer physischen Version der Tokens in Form eines Zertifikats oder Geldscheins, genannt «Paper Wallet», ist denkbar. Ein solches Paper Wallet verfügt über einen Public Key (z. B. in Form eines QR-Codes), über den der Inhalt des Wallets eingesehen werden kann, sowie über einen Private Key, der benötigt wird, um den Inhalt in ein anderes Wallet zu transferieren. Solange der Private Key nachweislich nicht geöffnet wurde, kann das Paper Wallet von Hand zu Hand weitergegeben und als Zahlungsmittel verwendet werden. Ein Beispiel liefert die schweizerische Firma Bitcoin Suisse mit ihren gezeichneten Krypto-Zertifikaten. Ein einzelnes Bitcoin-Zertifikat kann ähnlich eines Geldscheins physisch hundertmal den Besitzer wechseln, ohne dass jemals eine Transaktion auf der Blockchain registriert wurde. Gleichzeitig kann der Besitzer eines solchen Scheins den darin enthaltenen Wert jederzeit auf ein anderes Wallet transferieren, wenn er dies möchte. Dazu muss er nur den Private Key unter einem Hologramm freilegen.

Abbildung 2: Krypto-Zertifikate ausgestellt von Bitcoin Suisse[9]
Fazit

Blockchain-Systeme sind in ihrer heutigen Ausprägung nicht ausreichend skalierbar, um eine echte Alternative zu konventionellen Zahlungssystemen darzustellen, da eine Skalierung heute immer auch mit einem Verlust an Dezentralität und dadurch mit einem Verlust an Robustheit einhergeht. Ansätze zur Lösung des Skalierungsproblems gibt es einige, die wichtigsten wurden in diesem Artikel vorgestellt. Auf dieser Grundlage können wir auch ohne die weitergehende Beschäftigung mit der detaillierten Funktionsweise der Technologien folgendes Fazit ziehen:

Reparametrisierung wird bereits aktiv angewendet, die unterschiedliche Parametersetzung stellt heute das Hauptunterscheidungsmerkmal vieler populärer Blockchain-Systeme dar. Je nach Parametersetzung lässt sich bei diesen Systemen jeweils eine Tendenz in Richtung Dezentralität oder Skalierbarkeit beobachten. Obwohl sich durch Reparametrisierungen Effizienzgewinne und besser abgestimmte Systeme ergeben können, handelt es sich hier grundsätzlich nicht um technische Innovation, sondern um Verbesserungen durch eine Anpassung der Systemkonfiguration. Auf der Ebene der Konsensalgorithmen erhofft sich die Blockchain Community entscheidende Skalierungsgewinne in absehbarer Zeit. Für Ethereum beispielsweise ist die Umstellung auf ein neues, durchaus als dezentral bewertetes Protokoll, Ehereum 2.0, geplant, das den Proof-of-Stake-Konsensalgorithmus einsetzt. Darüber hinaus sollen zusätzliche leistungssteigernde Technologien wie Sharding eingesetzt werden, durch welches die Blockchain in Segmente unterteilt wird, welche gleichzeitig von unterschiedlichen Parteien validiert werden. Der Release von Ethereum 2.0 wird nach zweimaliger Verzögerung jetzt im Juli 2020 erwartet. Die zuletzt besprochene Skalierungsebene «Off Chain» ist die mit weitem noch am wenigsten erkundete Ebene. Sie ist geprägt von kreativen Ansätzen und neuartigen Konzepten, von welchen es bereits einige in die Testphase geschafft haben. Wegen der grundsätzlich neuartigen Auslegung, Transaktionen in Sub- oder Umsystemen zu tätigen und herkömmliche Blockchains lediglich zur Rebalancierung von Konten zu verwenden, ist grundlegende Innovation am ehesten aus dieser Richtung zu erwarten. Innovation ist notwendig, denn langfristig gesehen sind einfache Zahlungstransaktionen zwischen zwei Personen nur der Anfang in einer Finanzwelt, welche möglicherweise schon bald von den exponentiell wachsenden Skalierungsanforderungen geprägt ist, welche durch maschinengesteuerte Mikro- und Nanotransaktionen entstehen.


[1] Eine vereinfachte Erklärung der Double-Spend-Problematik gibt es hier auf dem Blog des CC Ecosystems. Eine ausführlichere Version kann im Bitcoin-Whitepaper unter  https://bitcoin.org/bitcoin.pdf nachgelesen werden.

[2] https://bitcoin.org/bitcoin.pdf

[3] https://maltemoeser.de/paper/transaction-fees.pdf

[4] https://bitcoinfees.info/

[5] https://bitcoinfees.info/

[6] https://github.com/bitcoinbook/bitcoinbook

[7] https://www.rsk.co/

[8] Bei einer Sidechain ist das zwar je nach Protokoll möglich, aber im Normalfall nicht notwendig.

[9] https://www.bitcoinsuisse.com/crypto-certificates/

Colin Hablützel

Was sind Deine Erfahrungen mit dem Thema? (Kommentieren geht auch ohne Anmeldung oder Einloggen; einfach kommentieren, auf Freigabe warten und fertig!)