Zum Inhalt springen
buybitcoinsmart

Glossar / Lightning und Layer 2

Zahlungskanal

Auch bekannt als Payment channel, Micropayment channel, Lightning channel, Lightning-Kanal.

Was ist ein Zahlungskanal?
Ein Zahlungskanal ist ein Bitcoin-Vertrag zwischen zwei Parteien, der durch eine einzige On-Chain-Transaktion finanziert wird und in dem beide Seiten die Aufteilung dieses Geldes tausende Male neu festlegen können, ohne die Blockchain zu berühren.

Betrachten Sie ihn als eine offene Rechnung an einer Bar, die beide Zecher nach jeder Runde unterschreiben. Der Finanzierungs-Output ist eine 2-von-2-Adresse, sodass kein Peer das Geld allein bewegen kann, und jede Aktualisierung ist eine vollständig gültige Bitcoin-Transaktion, die beide Seiten veröffentlichen könnten. Wenn Sie Bitcoin in einem Kanal halten, verlassen Sie sich darauf, dass Software schlechtes Verhalten bemerkt, und nicht darauf, dass sich ein Unternehmen korrekt verhält.

Wie er funktioniert

Ein Zahlungskanal ersetzt Vertrauen durch zwei Stücke Bitcoin-Script: einen gemeinsamen Output und eine Bestrafung.

Das Öffnen des Kanals erfordert eine On-Chain-Transaktion, die an eine Adresse zahlt, die beide Signaturen verlangt. Bevor diese Transaktion übertragen wird, tauschen die Peers signierte Commitment-Transaktionen aus, die den Betrag in den vereinbarten Anteilen an sie zurück ausgeben. Innerhalb des Kanals zu zahlen bedeutet nur, ein neues Paar Commitments mit einer neuen Aufteilung zu signieren und dann das Geheimnis herauszugeben, das das alte widerruft.

Der Widerruf macht ihn sicher. Jede Seite hält eine leicht abweichende Commitment-Transaktion, und die Version, die Sie halten, zahlt Ihr eigenes Guthaben an ein Script, das Sie erst nach einer Verzögerung beanspruchen können, üblicherweise 144 Blöcke, etwa einen Tag. Die Kopie Ihres Peers hat dieselbe Verzögerung auf dessen Seite. Wenn einer von Ihnen einen alten, günstigeren Zustand überträgt, hat der andere diese Verzögerung, um es zu bemerken und mit dem Widerrufsgeheimnis das gesamte Kanalguthaben als Strafe zu übernehmen. Betrug wird nicht blockiert; er wird unrentabel gemacht.

Nichts davon war möglich, bevor relative Timelocks existierten. CHECKSEQUENCEVERIFY und die sequenzbasierten Sperren aus BIP68, BIP112 und BIP113 sind seit Block 419.328 im Jahr 2016 aktiv, und sie ermöglichen es einem Script zu sagen: „ausgebbar, aber erst 144 Blöcke, nachdem diese Transaktion bestätigt wurde“.

Mehrere kleine Zahlen in der Spezifikation existieren allein, um die Bestrafung durchsetzbar zu halten. Jeder Peer hält normalerweise eine Reserve, die er nie ausgeben kann, vorgeschlagen mit 1 Prozent des Kanalgesamtwerts, damit ein Betrüger immer etwas zu verlieren hat. Outputs unterhalb der Dust-Schwelle, 330 Satoshis bei den Pay-to-Witness-Script-Hash-Outputs, die Kanäle verwenden, werden verworfen und stattdessen an Gebühren gezahlt, statt in das Commitment geschrieben zu werden. Moderne Kanäle tragen außerdem zwei Anchor-Outputs von 330 Satoshis, die es beiden Seiten ermöglichen, eine gebührenerhöhende Kind-Transaktion anzuhängen, wenn die Chain bei einem nötigen Abschluss ausgelastet ist. Und die Commitment-Nummer selbst ist verborgen: 48 ihrer Bits sind verschleiert und über die Felder Locktime und Sequenz verteilt, sodass ein Beobachter, der einen einseitigen Abschluss sieht, nicht zählen kann, wie viele Zahlungen der Kanal getragen hat.

Warum das beim Bitcoin-Kauf wichtig ist

Kanäle sind der Grund, warum ein Lightning-Guthaben und ein Cold-Storage-Guthaben nicht austauschbar sind, obwohl beide Bitcoin sind.

Geld in einem Kanal braucht einen Schlüssel, der online ist, und einen Node, der aufpasst. Das ist für eine Wallet zum Ausgeben in Ordnung. Es ist der falsche Ort für einen Bestand, den Sie jahrelang halten wollen, weil das Sicherheitsmodell Ihnen fortlaufend etwas abverlangt und nicht einmalig. Unsere Hardware-Wallet-Bewertungen behandeln den umgekehrten Kompromiss: Schlüssel, die nie ein Netzwerk berühren und nie auf etwas reagieren müssen.

Daraus folgen zwei praktische Konsequenzen für jeden Käufer. Erstens sind das Öffnen und Schließen von Kanälen On-Chain-Transaktionen, eine Wallet, die einen Kanal für Sie öffnet, gibt also echte Gebühren in Ihrem Namen aus, manchmal stillschweigend. Prüfen Sie, was eine mobile Lightning-Wallet für ihren ersten Kanal verlangt, bevor Sie sie mit 30 Dollar aufladen und feststellen, dass ein Drittel davon in die Einrichtung geflossen ist. Zweitens: Wenn eine Lightning-App Kanäle, Schlüssel oder Backups nie erwähnt, hält sie den Kanal mit ziemlicher Sicherheit selbst. Das ist ein verwahrendes Konto mit Lightning-Fassade und gehört in dieselbe Risikokategorie wie das Belassen von Bitcoin auf einer Börse.

Der letzte Punkt ist langweilig, aber teuer: Der Kanalzustand lässt sich nicht aus einer Seed-Phrase wiederherstellen. Ein Backup aus zwölf Wörtern stellt eine On-Chain-Wallet perfekt wieder her und stellt nichts darüber wieder her, welches Commitment aktuell war. Nicht verwahrende Lightning-Wallets sichern den Kanalzustand separat, und der Verlust dieses Backups kann Sie das Kanalguthaben kosten, obwohl Sie die Seed-Phrase noch haben.

Anatomie eines Kanalabschlusses

Sehen Sie sich das Ende eines einzelnen Kanals an, und die Teile sind nicht mehr abstrakt.

Zwei Peers öffnen einen Kanal mit 1.000.000 Satoshis, vollständig von einem von ihnen finanziert. Nach einem Monat mit Zahlungen lautet die Aufteilung 400.000 und 600.000. Ein kooperativer Abschluss ist der Idealfall: Beide signieren eine Abschluss-Transaktion, die jede Seite direkt bezahlt, sie wird wie jede normale Ausgabe bestätigt, und auf keinem der beiden Outputs liegt eine Verzögerung.

Ein einseitiger Abschluss ist der Rückfall. Ein Peer verschwindet, also überträgt der andere sein neuestes Commitment. Sein eigenes Guthaben landet in einem Script, das er für die vereinbarte Verzögerung nicht berühren kann, das Guthaben des verschwundenen Peers kann dieser sofort ausgeben, und die Anchor-Outputs stehen bereit, falls die Gebühr erhöht werden muss. Wenn der verschwundene Peer später ein veraltetes Commitment überträgt, in dem er mit 900.000 Satoshis erscheint, hat die ehrliche Seite das Verzögerungsfenster, um den Widerruf zu veröffentlichen und alle 1.000.000 zu nehmen.

Zahlungskanal vs. Statechain

Ein Zahlungskanal hält einen lebenden Vertrag zwischen zwei Parteien on-chain; eine Statechain reicht das Recht weiter, einen festen Output auszugeben. In einem Kanal kann das Guthaben jede Zahl sein und ändert sich mit jeder Zahlung, und die Durchsetzung ist einseitig. In einer Statechain wird ein ganzer UTXO fester Größe von einem Eigentümer zum nächsten übertragen, mit Hilfe eines Servers, der aufgefordert wird, seinen alten Schlüsselanteil zu löschen, sodass das Modell darauf angewiesen ist, dass dieser Server ihn tatsächlich löscht. Kanäle kosten Sie eine On-Chain-Transaktion zum Öffnen und geben Ihnen ein ausgebbares Guthaben; Statechains kosten Sie eine Vertrauensannahme und geben Ihnen eine ganze Coin.

Nicht zu verwechseln mit

Häufig gestellte Fragen

Sichert meine Seed-Phrase meine Lightning-Kanäle?

Nein. Eine Seed-Phrase stellt die On-Chain-Schlüssel wieder her, aber sie kann Ihrer Wallet nicht sagen, welcher Kanalzustand der aktuellste war. Nicht verwahrende Lightning-Wallets führen ein separates Kanal-Backup, und dessen Verlust kann Sie das Guthaben des Kanals kosten.

Was passiert, wenn mein Kanalpartner dauerhaft offline geht?

Sie übertragen Ihre letzte Commitment-Transaktion, um den Kanal einseitig zu schließen. Ihr eigenes Guthaben wird nach der vereinbarten Verzögerung ausgebbar, üblicherweise etwa 144 Blöcke, und der Anteil Ihres Peers wird sofort ausgezahlt.

Kann mein Kanalpartner mein Geld stehlen?

Nur indem er einen alten Kanalzustand veröffentlicht, und nur wenn niemand es bemerkt. Das Widerrufsgeheimnis, das Sie bereits halten, erlaubt Ihnen, während des Verzögerungsfensters das gesamte Kanalguthaben als Strafe zu beanspruchen, weshalb Betrug selten ist.

Weiterlesen

Verwandte Begriffe

Mehr zum Thema Lightning und Layer 2

Diese Seite auf Englisch lesen