Ich habe mich darüber informiert, wie das Lightning Network-Protokoll funktioniert, und ich habe einige Fragen.
Nehmen wir an, ein Benutzer sendet jemandem eine kleine Zahlung, die mehrere Sprünge durch das Netzwerk macht, bevor sie den Empfänger erreicht. Die Zahlung breitet sich dann rückwärts durch die Kette aus, bis sie den Zahler erreicht, und alles wird abgerechnet.
Es ist möglich, dass ein Knoten in der Mitte entweder absichtlich oder unabsichtlich den nächsten Knoten in der Reihe nicht bezahlt. Der Rückgriff ist für den Knoten, der nicht dafür bezahlt wurde, die Transaktion an die Blockchain zu senden (und den Kanal zu schließen?).
Wer zahlt die Gebühren für diese Transaktion? Was passiert, wenn die Gebühr deutlich höher ist als der Geldbetrag, den der Knoten durch die Übertragung der Transaktionen erhalten würde?
Dies scheint möglicherweise ein großer Angriffsvektor zu sein. Gibt es etwas, das ich falsch verstehe?
Es ist möglich, dass ein Knoten in der Mitte entweder absichtlich oder unabsichtlich den nächsten Knoten in der Reihe nicht bezahlt. Der Rückgriff ist für den Knoten, der nicht dafür bezahlt wurde, die Transaktion an die Blockchain zu senden (und den Kanal zu schließen?).
Nein, das ist nicht korrekt. Wenn ein Knoten mitten in einer Multi-Hop-Zahlung eine Zahlungsanforderung ablehnt, unternimmt der Absender einfach einen weiteren Versuch auf einer anderen Route, wobei dieser Knoten ausgelassen wird. Steht der Zahlungsvertrag dagegen bereits fest, ist der Knoten bereits kryptografisch zur Zahlung verpflichtet. Es ist unmöglich, dass sie zu diesem Zeitpunkt nicht zahlen. Ein Weiterleitungsknoten kann lediglich die Erstattung für das, was er bereits weitergeleitet hat, nicht einziehen.
Wenn eine Node dauerhaft keine Zahlungen weiterleitet, steht es ihrem Channel-Partner natürlich immer noch frei, den Kanal zu schließen, aber das hat verschiedene Gründe.
Wer zahlt die Gebühren für diese Transaktion? Was passiert, wenn die Gebühr deutlich höher ist als der Geldbetrag, den der Knoten durch die Übertragung der Transaktionen erhalten würde?
Die Gebühr für Lightning-Zahlungen trägt der Absender. Sie müssen über ausreichende Mittel verfügen, um Gebühren an alle Knoten entlang der Route zu zahlen. Wenn die Gebühr für das Schließen eines Kanals höher ist als die Kapazität des Kanals, ist es wahrscheinlich sinnvoller, ihn offen zu lassen, bis die Gebühren niedriger werden.
Eine Netzwerkgebühr in Bitcoin ist einfach das Überbleibsel zwischen der Summe der Inputs und der Summe der Outputs. Das Blitznetzwerk kann als Protokoll zum Aktualisieren des zwischen den Ausgängen aufgeteilten Werts angesehen werden. Daher ist für jede übertragene Abschlusstransaktion die Gebühr bereits festgelegt.
Wenn Alice einen Kanal mit Bob geöffnet hat und aus irgendeinem Grund ihre Transaktion übertragen möchte, um den Kanal zu schließen, stimmt sie absichtlich zu, nur die Gelder zu erhalten, die ihr durch die Transaktion ausdrücklich zugewiesen werden . Die Gebühr ist bereits eingebaut und kann wie der Rest der Transaktion nicht geändert werden.
Es gibt einen Abschnitt über Gebühren in der Protokollspezifikation, wenn Sie mehr lesen möchten.
Antonius
Murch
Müllhausen