Die Kosten für den Neustart eines Blitzkanals

Ich habe einige Fragen zu den Kosten für die Aufrechterhaltung eines Blitzkanals zwischen zwei Personen. Nehmen wir für diese Frage an, dass die Blockchain-Mining-Gebühr 1 $ pro Transaktion beträgt.

Frage 1 : Angenommen, Alice möchte Bob 1 mBTC pro Tag für 100 Tage schicken. Ohne Blitz hätte das 100 Dollar gekostet. Mit Lightning muss sie einen Kanal zu Bob öffnen und nach 100 Tagen den Kanal schließen. Stimmt es, dass das Öffnen und Schließen des Kanals jeweils 1 $ kostet, sodass die Gesamtkosten 2 $ betragen?

Frage 2 : Angenommen, Alice möchte Bob 1 mBTC pro Tag für 200 Tage schicken, aber sie hat jetzt nicht alle 200 mBTC – sie hat nur 100 mBTC (sie erhält die zusätzlichen 100 mBTC nach 100 Tagen). Sie muss also einen Kanal zu Bob öffnen, nach 100 Tagen den Kanal schließen, einen neuen Kanal öffnen und nach weiteren 100 Tagen den zweiten Kanal schließen. Stimmt es, dass die Gesamtkosten jetzt 4 $ betragen?

Frage 3 : Angenommen, Alice aus Frage 2 möchte die Kosten für den Neustart des Kanals senken, also sagt sie zu Bob: „Anstatt den Kanal zu schließen und wieder zu öffnen, schicke ich Ihnen 100 mBTC durch die Blockchain, und Sie senden mir 100 mBTC über den Lightning-Kanal. Der Neustart kostet uns also nur 1 $ und die Gesamtkosten betragen nur 3 $". Kann dieser Trick sicher ausgeführt werden, sodass weder Alice noch Bob schummeln können?

Antworten (2)

Frage 1

Stimmt es, dass das Öffnen und Schließen des Kanals jeweils 1 $ kostet, sodass die Gesamtkosten 2 $ betragen?

Ja. Sie benötigen weiterhin Eröffnungs- und Schließungstransaktionen für den Kanal und müssen die Netzwerkgebühr für jede Transaktion bezahlen.

Frage 2

Sie muss also einen Kanal zu Bob öffnen, nach 100 Tagen den Kanal schließen, einen neuen Kanal öffnen und nach weiteren 100 Tagen den zweiten Kanal schließen. Stimmt es, dass die Gesamtkosten jetzt 4 $ betragen?

Vielleicht. Wenn Sie über einen Zahlungskanal in einer Richtung sprechen, wäre die Antwort ja, aber Blitzkanäle sind bidirektional. Ein Kanal hat anfangs nur so viel Geld. In Ihren Situationen gehen wir davon aus, dass Alice alle Vorauszahlungen für den Kanal bereitstellt, aber das muss nicht sein. Es könnten genauso gut sowohl Alice als auch Bob sein, die die Gelder aufteilen, die in ihrem Kanal gebunden sind. Nehmen wir an, sie haben beide 100 mBTC in die Öffnung des Kanals gesteckt. Jetzt können höchstens 100 mBTC in beide Richtungen übertragen werden. Wenn also Geld immer nur von Alice zu Bob fließt, muss ein neuer Kanal geöffnet werden, wenn Alices Vorauszahlung vollständig ist.

Was Sie vergessen haben, ist, dass Alice und Bob im Lightning-Netzwerk nicht nur Endknoten sind ... sie sind auch Hubs. Andere Transaktionen von anderen Parteien können über deren Kanal geleitet werden. Nehmen wir also an, dass Dave Charlie während dieser Zeit bezahlen möchte. Dave hat einen Kanal mit Bob und Charlie hat einen Kanal mit Alice. Jetzt sieht unser Netzwerk so aus:

Charlie <----> Alice <----> Bob <----> Dave

Da die Zahlungen von Dave an Charlie Alices Seite des Kanals Geld zurückgaben , konnte Alice Bob sehr gut die vollen 200 mBTC zahlen, ohne den Kanal schließen und wieder öffnen zu müssen. Auf diese Weise verrechnet das traditionelle Bankensystem effektiv Transaktionen mit aufgeschobener Nettoabwicklung .

Es ist auch wichtig zu beachten, dass Alice und Bob Anreize für das Routing in eine Richtung schaffen können, wenn der Kanal schief wird, indem sie die Gebühr senken, die sie für die Nutzung ihres Kanals erheben. Wie Sie sehen können, ist es oft sogar in ihrem besten Interesse, eine negative Gebühr zu erheben, anstatt die Kosten für die Wiedereröffnung eines Kanals zu tragen.

Frage 3:

„Anstatt den Kanal zu schließen und wieder zu öffnen, schicke ich Ihnen 100 mBTC durch die Blockchain und Sie senden mir 100 mBTC durch den Blitzkanal. Der Neustart kostet uns also nur 1 $ und die Gesamtkosten betragen nur 3 $ ". Kann dieser Trick sicher ausgeführt werden, sodass weder Alice noch Bob schummeln können?

Hoffentlich können Sie diese Situation wie oben dargestellt vermeiden. Wenn nicht, müssen Alice und Bob entweder 1) einander vertrauen oder 2) eine andere Art von Smart Contract haben (was wahrscheinlich zu noch mehr Transaktionsgebühren führen würde, nicht weniger). Ich sehe das nicht als praktikable oder kostengünstige Lösung. Es wäre am besten, andere dazu anzuregen, den Kanal zu nutzen, um Gelder auf Alices Seite des Kanals wiederherzustellen.

Können Sie die "Negativgebühr" näher erläutern?
@Richard, es klingt verrückt, aber es bedeutet, dass der Kanal jemanden für seinen Traffic bezahlt. Nehmen wir an, Dave möchte Charlie 50 mBTC zahlen. Der aktuelle Zustand des Alice-Bob-Kanals (wenn sie ihn jetzt schließen würden) hat 10 mBtc im Besitz von Alice und 90 mBtc im Besitz von Bob. Wenn Alice immer noch 30 mBTC hat, die sie an Bob zahlen möchte, können sie zustimmen, einen Teil von Daves Zahlung zu übernehmen, nur damit er ihren Kanal nutzt. Dave zahlt jetzt 49 mBTC, Charlie erhält 50 mBTC und der Kanal wird jetzt aufgeteilt Alice-60, Bob-40. Der Unterschied kam wahrscheinlich von Alices Kanal mit Charlie, und Alice kann Bob jetzt bezahlen.

Jestins Antwort deckt Frage 1 und 2 hervorragend ab, aber ich möchte hinzufügen, dass Sie einen U-Boot-Swap verwenden können , um eine Zahlung im Lightning Network (LN) an eine On-Chain-Zahlung zu binden. U-Boot-Swaps nutzen einen Smart Contract in der On-Chain-Zahlung, der in Verbindung mit dem Geheimnis einer LN-Rechnung gültig wird. Dieser Smart Contract ähnelt den HTLCs, die bei Multi-Hop-LN-Zahlungen verwendet werden.