Sidechains und Zahlungskanäle erklärt
Grundlagen
In der Informatik bezeichnet Skalierbarkeit die Fähigkeit eines Systems, steigende Nachfrage zu bewältigen. Um die Leistung einer Maschine zu erhöhen, kann man die Hardware aufrüsten. Bei Blockchains bezieht sich Skalierbarkeit jedoch auf die Kapazität, mehr Transaktionen zu verarbeiten. Bitcoin hat viele Stärken, aber Skalierbarkeit gehört nicht unbedingt dazu. Würde Bitcoin in einer zentralen Datenbank laufen, wäre es relativ einfach, Geschwindigkeit und Durchsatz zu erhöhen. Aufgrund seiner Wertversprechen, wie Zensurresistenz, müssen jedoch viele Teilnehmer eine Kopie der Blockchain synchron halten.
Das Skalierbarkeitsproblem der Blockchain
Das Betreiben eines Bitcoin-Nodes ist erschwinglich, und selbst einfache Geräte können es leisten. Da jedoch tausende Nodes synchron bleiben müssen, gibt es bestimmte Kapazitätsbeschränkungen. On-Chain-Transaktionen unterliegen Limits, damit die Datenbank nicht zu schnell zu groß wird. Wächst sie zu schnell, tun sich Nodes schwer, Schritt zu halten. Außerdem können zu große Blöcke nicht schnell im Netzwerk weitergeleitet werden.
Das führt zu einem Engpass: Ein Netzwerk, das von ausstehenden Transaktionen überschwemmt wird, zwingt Nutzer dazu, höhere Gebühren zu zahlen, um eine zeitnahe Verarbeitung sicherzustellen. Eine mögliche Lösung wäre, die Blockgröße zu erhöhen, was Durchsatz verbessern und Gebühren senken könnte. Es gibt jedoch keine Garantie, dass die zusätzliche Kapazität nicht wieder voll wird.
Vitalik Buterin, der Schöpfer von Ethereum, führte das Scalability Trilemma ein, das die Herausforderung für Blockchains beschreibt. Es besagt, dass Protokolle Skalierbarkeit, Sicherheit und Dezentralisierung ausbalancieren müssen, was sich manchmal widersprechen kann. Viele sind deshalb der Ansicht, dass Skalierbarkeit Off-Chain erreicht werden sollte, während Sicherheit und Dezentralisierung auf der Hauptkette maximiert werden.
Off-Chain-Skalierungslösungen
Es gibt Skalierungslösungen, die es erlauben, Transaktionen zu verarbeiten, ohne die Blockchain zusätzlich zu belasten. Diese Off-Chain-Methoden werden durch Protokolle ermöglicht, die an die Kette angeschlossen sind und es Nutzern erlauben, Gelder zu senden und zu empfangen, ohne dass diese Transaktionen auf der Hauptkette verzeichnet werden. Zwei bemerkenswerte Ansätze sind Zahlungskanäle und Sidechains.
Sidechains
Sidechains sind alternative Blockchains, die in irgendeiner Form mit der Hauptkette verbunden sind. Diese Blockchains sind interoperabel, das heißt, Vermögenswerte können frei zwischen Hauptkette und Sidechain transferiert werden. Es gibt verschiedene Methoden zur Übertragung von Mitteln, eine davon besteht darin, Assets in eine spezielle Adresse auf der Hauptkette einzuzahlen. Diese Assets werden nicht verschoben, sondern in der Adresse gesperrt und auf der Sidechain ein entsprechender Betrag ausgegeben. Eine andere, zentralisiertere Option ist, Gelder an einen Verwahrer zu senden, der die Einzahlung gegen Mittel auf der Sidechain tauscht.
Wie funktioniert es?
Angenommen, unser Bekannter Roman hat fünf Bitcoins, die er gegen gleichwertige Einheiten auf einer Bitcoin-Sidechain namens „Sidecoins“ mithilfe eines Two-Way-Pegs tauschen möchte. Die Sidechain ist eine separate Blockchain mit eigenen Blöcken, Nodes und Validierungsmechanismen. Um Sidecoins zu erhalten, sendet Roman seine Bitcoins an eine bestimmte Adresse; sobald die Bitcoins empfangen sind, wird seine Sidechain-Adresse mit fünf Sidecoins gutgeschrieben oder die Software erkennt die Zahlung und schreibt die Sidecoins automatisch gut.
Roman hat nun seine Coins in Sidecoins umgewandelt, kann den Vorgang aber umkehren, um seine Bitcoins zurückzuerlangen. Auf der Sidechain kann er wie auf der Hauptkette Transaktionen durchführen: Er kann Sidecoins senden und empfangen. Beispielsweise bezahlt er Angela ein Sidecoin für ein T‑Shirt und kehrt dann zur Bitcoin-Hauptkette zurück, indem er seine verbleibenden vier Sidecoins an eine bestimmte Adresse sendet. Nach Bestätigung der Transaktion werden vier Bitcoins wieder entsperrt und an seine Adresse auf der Hauptkette geliefert.
Warum Sidechains nutzen?
Angela könnte eine Sidechain nutzen, um ihre Bitcoins in Sidecoins umzutauschen, also Einheiten auf einer separaten Blockchain mit Two-Way-Peg. Das erlaubt einen freien Fluss von Assets zwischen Hauptkette und Sidechain. Während Bitcoin sehr sicher und dezentralisiert ist, gibt es Kompromisse, etwa langsamere Transaktionen und höhere Gebühren bei Netzüberlastung.
Sidechains hingegen können mit unterschiedlichen Konsensmechanismen, Parametern und Funktionen angepasst werden, wodurch sie flexibler und an spezifische Anwendungsfälle anpassbar sind. Zudem eignen sich Sidechains für Experimente, ohne die Hauptkette zu beeinträchtigen. Angela kann hunderte Transaktionen auf der Sidechain durchführen und dann mit nur zwei on-chain-Transaktionen zurückkehren. Sidechains könnten eine wichtige Rolle bei der Skalierung und Weiterentwicklung der Blockchain-Technologie spielen.
Zahlungskanäle
Zahlungskanäle sind eine praktikable Skalierungslösung und verfolgen einen ähnlichen Zweck wie Sidechains, funktionieren jedoch grundlegend anders. Zahlungskanäle benötigen keine separate Blockchain, sondern arbeiten über einen Smart Contract. Durch eine softwaregestützte Vereinbarung können zwei Teilnehmer Transaktionen durchführen, ohne diese auf der Blockchain zu veröffentlichen. Dadurch wird die Blockchain nicht aufgebläht, ähnlich wie bei Sidechains.
Wie funktioniert es?
Roman und Angela könnten Zahlungskanäle nutzen, um Transaktionen abzuwickeln, ohne sie auf der Blockchain zu veröffentlichen — ähnlich dem populären Lightning-Netzwerk-Modell. Dafür würden sie Coins in eine gemeinsam kontrollierte Multisignatur-Adresse einzahlen, die für die Ausgabe der Mittel beide Signaturen benötigt. Sie können ihr Kontostandsverzeichnis bei jeder Transaktion aktualisieren, ohne on-chain zu gehen, bis sie sich entscheiden, die Salden neu zu verteilen. Dann erstellen sie eine Transaktion, die die Salden an ihre Adressen sendet, signieren sie und senden sie an die Blockchain. Alle anderen Transaktionen sind gratis und nahezu instant, weil sie Off-Chain stattfinden. Obwohl diese Methode Kooperation erfordert, können spezielle Mechanismen Betrugsversuche bestrafen, sodass auch Fremde sicher interagieren können.
Zahlungsrouting
Zahlungskanäle sind vor allem für Parteien sinnvoll, die eine große Anzahl an Transaktionen erwarten, und werden noch nützlicher, wenn ein Netzwerk von Kanälen entsteht. Das bedeutet, dass Angela Zahlungen an Parteien senden kann, mit denen sie nicht direkt verbunden ist. Wenn Roman beispielsweise einen Kanal zu Sarah hat, kann Angela Sarah zahlen, solange genug Kapazität vorhanden ist. Sie würde Gelder auf Romans Seite des Kanals transferieren, und er würde sie an Sarahs Seite weiterleiten. Ist Sarah mit einem anderen Nutzer, John, verbunden, funktioniert der Prozess genauso.
Ein solches Netzwerk schafft eine verteilte Topologie, in der jeder mit mehreren Peers verbunden ist. Es kann mehrere Routen zu einem Ziel geben, und Nutzer können die effizienteste wählen.
Fazit
Um die zugrundeliegende Blockchain nicht zu überlasten, gibt es zwei Ansätze zur Skalierung – Sidechains und Zahlungskanäle. Beide entwickeln sich noch, werden aber zunehmend genutzt, um die Einschränkungen von Basis-Layer-Transaktionen zu umgehen. Dezentralisierung ist für das Netzwachstum entscheidend, und das Wachstum der Blockchain muss begrenzt bleiben, damit neue Nodes leicht beitreten können. Verfechter von Off-Chain-Skalierung gehen davon aus, dass die Hauptkette künftig vor allem für hochvolumige Transaktionen, für das Ein- und Ausparken in Sidechains sowie für das Öffnen und Schließen von Kanälen genutzt wird.