Lightning Netzwerk

Die Lösung für das Skalierungs-problem der Blockchain?

Was ist mit Skalierungsproblem und dem Blockchain Trilemma gemeint? Wie funktioniert das Lightning Netzwerk?

Was ist mit Skalierungsproblem gemeint?

Die Blockchain im besonderen die des Bitcoin soll schlank und geschmeidig bleiben, eine dezentrale Zeitlich abgesicherte Datenbank für Transaktionen. Dabei ist das Problem, dass die Speichergröße eines Blocks für mehr Transaktionen nicht wesentlich erhöht werden kann, um gleichzeitig die Dezentralität des Netzwerks zu gewährleisten. 

Wenn eine Blockchain zu viel Speicherplatz benötigt, dauert die Synchronisierung mit dem Netzwerk länger, die Speicherung des gesamten Ledgers - der Blockchain - wird zum Kostenfaktor. Dieser Faktoren muss daher mit Blick auf die Dezentralisierung und Skalierung berücksichtigt werden!


Onchain und Offchain Skalierung

Es gibt Grundsätzlich zwei Möglichkeiten, wie die Blockchain skalieren kann. Onchain auf der ersten Ebene, indem die Transaktionen schlanker zusammengefasst werden, wie zum Beispiel durch SegWit, UTreeXO (Transaktionen die in einem Hashbaum zusammengefasst werden) und Schnorr Signaturen.

Offchain bedeutet zum Beispiel die Auslagerung von Transaktionen und smart contracts auf sogenannte second Layer, durch Nutzung einer zweiten Ebene die mit der ersten, der Blockchain selbst verbunden ist. Ein second Layer kann zum Beispiel eine andere Blockchain sein, die mit Hilfe von Timelocks (HTLC) den Token der zu skalierenden Blockchain einfriert, um diesen auf einem anderen Netzwerk als Klon benutzen zu können.

Ein ähnliches Konzept ist das der Sidechains. Zwar führen diese Second Layer zu einer Skalierung, allerdings bei weitem nicht in der Größenordnung, um ein Globales Zahlungssystem mit mehreren zehntausend Transaktionen pro Sekunde abzubilden.

Es braucht also eine weitere Technologie, mit einem anderen Ansatz, die die Blockchain ergänzt!

"The first layer on bitcoin is for security and second layer technologies like lightning network are for scaling!" Andreas M. Antonopoulos (aus einem Youtube Q&A)

Die erste Ebene auf Bitcoin (Onchain), sei für die Sicherheit und auf der zweiten Ebene, wie zum Beispiel das Lightning Netzwerk müsse die Skalierung stattfinden.


Was ist das Lightning Network?

Das Lightning Netzwerk LN beschreibt ein design für ein geroutetes Zahlungskanal Netzwerk, das es ermöglicht augenblickliche Zahlungen mit Bitcoin oder Blockchain Token im allgemeinen durchzuführen, ohne das auf der Blockchain Transaktionen verifiziert werden müssen. Es basiert auf einem Vorschlag von Joseph Poon und Thaddeus Dryja von Februar 2015.

Die Grundlegende Idee von Zahlungskanälen hat bereits Satoshi Nakamoto zur Lösung der Skalierung in betracht gezogen. Notwendig für die Implementierung von Lightning war die Aktivierung von Segregated Witness im Jahr 2017. 

Es gibt mehrere unabhängige Implementierungen, die durch eine Reihe von Interoperabilitätsstandards koordiniert werden, die im BOLT Basics of Lightning Technology - Paper beschrieben sind.


Was sind die Vorteile von Lightning?

Echtzeit Transaktionen:

Da im Lightning Netzwerk nur wenige Teilnehmer über den Buchungsstand informiert werden müssen und keine Blockzeit gewartet werden muss, sind die Zahlungen augenblicklich. Die Übertragungszeit ist abhängig von der Leistung der teilnehmenden Geräte bzw. lightning Nodes und Smartphone Wallets.

Geringe Gebühren:

Da für die Abwicklung der Transaktionen keine Miner benötigt werden, sondern nur eine On-Chain Transaktion zum öffnen eines Kanals notwendig ist und beliebig viele Transaktionen ausgeführt werden können, sinken die Gebühren je länger ein Zahlungskanal geöffnet bleibt und umso mehr LN Transaktionen getätigt werden. Gebühren innerhalb des Lightning Netzwerks entstehen, wenn Zahlungen über mehrere Zahlungskanäle abgewickelt werden, jede Teilnehmende LN Node kann dabei eine kleine Gebühr bekommen.

Flexibilität

Die Bitcoin Einheiten auf der Blockchain sind auf 10^-8 Bitcoin, den Satoshi als kleinste Einheit begrenzt, mit Lightning ist es möglich beispielsweise milli-Satoshis zu versenden. 

Privatsphäre: 

Lightning Zahlungen werden nur zwischen den Teilnehmern eines Zahlungskanals verbucht, sie sind nicht öffentlich einsehbar, es sei denn einer der beiden Teilnehmer des Zahlungskanals zeichnet die transaktionen auf und macht diese öffentlich, wobei niemand nachvollziehen kann wer im Netzwerk wem wie viel geschickt hat. 


Payment Channel / Zahlungskanal

Bidirektionaler Zahlungskanal

Ein Zahlungskanal beschreibt eine Verbindung zwischen zwei Parteien bzw. Nodes, Alice und Lina helfen uns dabei, diesen besser zu verstehen.

Durch die Benutzung eines 2 von 2 Multisignatur Scripts und eines Timelocks, die als Abrechnungstransaktion eines Zahlungskanals verwendet wird, können Alice und Lina einen Kanal öffnen und Gebührenfrei Beträge untereinander hin und herschicken. Das öffnen eines Kanals wird durch die initial Funding Transaction ermöglicht, die jeweils Alice und Lina tätigen müssen.

Alice als auch Lina führen ein eigenständiges Grundbuch unabhängig von dem Base Layer - der Blockchain. Die Summe der Beträge von Lina und Alice ist der Maximale Betrag, der im Kanal verschickt werden kann und von einer der beiden Teilnehmerinnen später nach dem schließen des Kanals Onchain versendet werden kann.

Alice und Lina können nun in ihrem Zahlungskanal Commitment Transaktionen tätigen. Alice als auch Lina müssen diese Transaktion durch das 2 von 2 Multisignatur Script Signieren, der Locktime (Dauer des HTLC) des Timelocks (HTLC) garantiert, das die Guthaben für eine bestimmte Dauer innerhalb der Multisig, On-Chain nicht transferierbar sind.

Diese Commitment Transaktionen sind die eigentlichen Lightning Transaktionen, nach jeder Zahlung halten Alice und Lina den aktuellen Saldo in einer Commitment Transaction fest. Da Alice und Lina keine Daten in die Blockchain schreiben müssen und damit keine Miner bezahlen müssen, sind diese Transaktionen kostenlos. Ein weiterer Vorteil liegt darin, dass nur eine direkte Verbindung zwischen Alice und Lina nötig ist, was in einer hohen Übertragungsgeschwindigkeit resultiert.

Bidirektionale Zahlungskanäle mit Commitment Transaktionen gehen in beide Richtungen zwischen Alice und Lina.

Unidirektionale Zahlungskanäle

Unidirektionale Zahlungskanäle  werden verwendet, wenn Alice an Bob Satoshis senden möchte, wobei Alice nur über Lina mit Bob verbunden ist. Die Zahlung wird also von Alice über Linas Node zu Bob geroutet. Es handelt sich hierbei um eine Verkettung von Hashlocks und Multisignatur Skripten, wobei nur Bob den Betrag seinem Balance Gut schreiben kann, weil er Alice zuvor eine geheime Zahl mitgeteilt hat. Lina kann für das weiterleiten der Zahlung eine Gebühr verlangen und somit durch das offen halten ihres Kanals Satoshis verdienen.


Kanal Schließen: 

1. Settlement Transaktion - Kollaborativ

Bei der Settlement Transaktion, wird wieder eine Multisignatur Transaktion ausgeführt, die von Alice und Lina signiert wird. Die aktuellen Guthaben der beiden werden in die Blockchain geschrieben und der Kanal ist damit geschlossen.

2. Einseitig

Alice oder Lina können Einseitig einen Kanal schließen, müssen aber die Zeitsperre, die Locktime abwarten, bis die Guthaben wieder On-chain verfügbar sind. Innerhalb der Locktime kann die andere Person dagegen Einspruch erheben.

3. Breach-Remedy Transaktion - Bei betrügerischen Absichten

Angenommen Alice möchte ihre Freundin Lina betrügen und den Zahlungskanal mit einem alten Status schließen, in dem nicht die Transaktion für Lina enthalten ist. In diesem Fall hat Lina die Möglichkeit eine Breach Remedy Transaktion, eine "Gerechtigkeitstransaktion" auszuführen, bei der Ihr das gesamte Guthaben gesendet wird und Alice zur Bestrafung alles verliert.


Watchtower

Watchtower sind Drittparteien-Software die betrügerische Handlungen aufdecken und die Gegenpartei informieren, sodass diese rechtzeitig eine Breach-Remedy Transaktion ausführen kann.


Ist Lightning Second Layer Proof of Stake?

Das verblüffende ist, das laut Andreas M. Antonopoulos, dieser "layer" eine Art Proof of Stake ist! Denn um einen LN Channel zu betreiben müssen Guthaben dem L. Node gesammelt werden, je mehr Guthaben vorhanden sind, desto hoher ist die Transaktionsrate, umso mehr Gebühren können generiert werden, oder die Gebühren für die einzelne LN tx ist geringer. Somit werden durch ein größeres Guthaben weniger Gebühren bezahlt, wenn es sich um einen äußerst fairen L. Channel handelt. Damit benutze Bitcoin schon jetzt eine Hybrid-Blockchain mit Proof of Stake und Proof of Work!


Welches Potential hat Lightning?

Jeder einzelne Lightning node kann je nach Implementierung und Hardware bis zu 1 Millionen Transaktionen pro Sekunde verarbeiten. Es ist die vielversprechendste Technologie zur Übertragung von digitalen Werten.

Im Bereich DeFi wird lightning bei DEX dezentralen exchanges eine große Rolle spielen, mithilfe von Lightning swaps werden cross-chain unterschiedliche Coins und Token in Sekunden-schnelle umgetauscht. 

Es können auch andere dezentrale Anwendungen Lightning benutzen, wie zum Beispiel die Messager Apps Jagganaut, Sphinx und Whatsat


Welche potentiellen Risiken gibt es bei Lightning?

Es handelt sich noch um eine sehr neue Technologie, es müssen einige dinge beachtet werden. Das Betreiben einer Lightning Node erfordert technisches Verständnis und Erfahrung.

Es reicht nicht aus einfach ein Schlüsselpaare zu erstellen, um Guthaben zu sichern, es müssen immer Backups vom Channel gemacht werden.


Kritik

Die Nutzer*innen Erfahrung lässt durchaus zu wünschen übrig, da technisches Verständnis erforderlich ist. Es gibt aber auch schon einige Software Lösungen die vieles vereinfachen. So gibt es Beispielsweise Pug & Play Lösungen wie der Raspiblitz, Umbrel, Fulmo oder für Onlineshops BTCPayServer. Ein Einsteiger non costodial Lightning Wallet ist zum beispiel das Phoenix Wallet.

- Ligtning Nodes müssen immer Online sein 

- Liquidität: Der Betrag der durch das Netzwerk gesendet werden kann ist begrenzt auf das Volumen der Initial Funding Transaktion bzw. das Guthaben eines Zahlungskanals.

- Routing Probleme: Fehlende Liquidität. Nodes sind nicht lange genug online. Guthaben ist an konkurrierende Ziel-Nodes gebunden. Guthaben ist an Ziel-Nodes gebunden an die niemand senden möchte. Gebühren sind zu hoch eingestellt. Die eingehende Liquidität hat selbst nicht genügend eingehende Liquidität.

- Zentralisierung: Es ist viel Technisches Know how nötig und da eines Tages eine On-Chain Transaktion für die initial funding transaktion zu teuer werden könnte, könnten nur wenige vermögende eine Lightning Node betreiben. Je größer das Netzwerk sei desto mehr Rechenleistung sei erforderlich, um eine geeignete Route zu finden wodurch schwächere Hardware im Nachteil sei.


Gängige Lightning Implementierungen:

LND - Lightning Labs

C-Lightning - Blockstream

Eclair - ACINQ


Plug & Play Lösungen:

Citadel

BTCPayServer - Für Onlineshops

Raspiblitz

Fulmo


Hinterlasse gerne eine Spende damit dieser Beitrag verbessert und erweitert wird.

3BitunigscbkbD6pRpRN32S79UZqJhTxge

Quellen:

https://github.com/lnbook/lnbook

Blocktrainer - Das Lightning Netzwerk einfach erklärt

Video Präsentation von Andreas Antonopoulos auf Englisch: 

A Technical Introduction to The Lightning Network - We Are Developers 2020