This brillant question of Bitcointalk user versprichnix points out the whole tragedy of Lightning ...
https://bitcointalk.org/index.php?topic=1682183.msg20523305#msg20523305That is even better for decentralized off-chain, because the Nash-Equilibrium for a 2way payment channel is trivial.
2 parties
cheat/try to gain an advantage = loose everything
Could my grandma cheat accidentally?
Did someone ever discuss this whole class of attacks on LN, or was it wishy-washed away because of "we have the best devs"?
Can some bug in a root service, like a 2yk or a big number bug, make someone accidently send an old channel tx? I guess it is possible.
Can someone write a malware tricking a LN client into releasing an old tx? I guess it is possible. With LN you store signed transactions, ready to go, which could later empty your whole channel.
Quelle:
https://bitco.in/forum/threads/gold-collapsing-bitcoin-up.16/page-1021@CB, @versprichnix
Guckt euch im LN Paper mal Seite 24 oder so an.
Dann werdet ihr sehen, dass der Angriff nicht funktioniert, weil die eigene Signatur in der Transaktion fehlt.
Für einen Angreifer ist das auch uninteressant, weil er das Geld ja mit dem Angriff nicht bekommen kann.
Die alten Commitments werden auch nicht beim Ersteller gespeichert, sondern nur beim Gegenüber und dieser kann diese nicht veröffentlichen (da wie gesagt seine eigene Signatur fehlt).
Ein Angreifer hätte das Interesse sich das per LN selbst zu schicken oder den Kanal zu schließen und dann an sich zu senden.
Man kann nicht ausversehen cheaten, vor allem nicht, wenn man also ein Hardware-Wallet oder ein ähnliches Setup verwendet.
Wenn man den Zustand des Channels nicht mehr kennt, wird es allerdings schwierig.
Dann hat man allerdings auch nichts mit dem man cheaten könnte, weil der andere Teilnehmer ja die Transaktion erstellt hat.
Dann könnte man auch nicht mehr erkennen, wenn der andere gecheatet hat.
Das ist der größte Nachteil den ich sehe, weil man da immer wieder ein Backup machen muss vom neuen Zustand (ggf. automatisch mit Hardware Wallet) oder auf die Kooperation des Partners angewiesen ist.
Die eigenen private Keys sollten deterministisch, also zustandslos zu speichern sein.
Die private Keys, welche man für die Breach-Remedy bekommt sind der springende Punkt.
Da man nicht den Mechanismus kennt, wie diese erstellt wurden, sind diese der kritische zustandsbehaftete Punkt für Backups.
Solange man die sicher gespeichert hat kann man seine Bitcoins nicht verlieren.
Naja - vielleicht kennt ihr das ja von Andreas:
Not your keys? Not your Bitcoin. Featuring Andreas Antonopoulos
https://www.youtube.com/watch?v=dnC5mFaIW3QEdit:
@CB
Sehe gerade du hast auch in diesem Forum gepostet

Habe gerade allerdings wenig Lust in Englisch zu schreiben - das sollte dir ja auch so reichen
And, something else: Does a LN client need to keep its private keys in memory to serve as a hub for other payments? If not, he must manually approve every transaction made through his channel.
Ja genau - wobei Memory ja auch ein extra abgesicherter PC sein kann der per Netzwerk angebunden ist und überprüft, das man mehr empfängt (inkl. Fee), als man sendet, damit das automatisch geht.
Memory kann genauso ein Hardware Wallet sein.
Da im LN normale Bitcoin Transaktionen genutzt werden, gelten die gleichen Voraussetzungen wie bei normalen Bitcoin Transaktionen.
Man kann natürlich auch Multisig nehmen.
Setup ist praktisch so, wie Exchanges das aktuell für ihre Hot-Wallets benutzen.
Wenn man die private Keys klauen kann, dann hat man das gleiche Problem, egal ob LN oder On-Chain.
Ein Hacker kann mit den geklauten private Keys die Bitcoins klauen.
Ja, stimmt, man speichert nur die vom Partner signierten Transaktionen und umgekehrt. Bin dennoch nicht überzeugt, dass es da nicht Angriffe geben kann. Du tust immer so, als wüssten wir schon alles über LN, während wir an sich noch gar nichts wissen.
Bei der Memory-Sache nimmst du an, dass normale User sich wie Exchanges verhalten. Oder gehst du davon aus, dass nur Exchanges Transaktionen weiterleiten?
Ich will hier auch gar nicht ins Detail gehen. Mir fiel nur auf, dass Versprichnix eine sehr relevante Frage gestellt hat, die aber vollständig ignoriert wurde. Denn man tut ja so, als sei LN längst felsenfeste, jahrelang im Feld getestete Realität. LN ist noch nicht mal im Stadium des Experimentes ...