0

Dear Lightning experts,

someone mentioned in context with lightning channels the following things, and I would like to ask you if this statements are true, and if yes, is this a problem in a future world where lightning becomes mainstream, how would we prevent such scenario of not returning funds`?

"The mnemonic seed will not allow you to recover funds that are off-chain in lightning channels...EVEN if the peer force-closes the Channel! And Static channel backups will not fix this..."

So question is: Why not designing it in this way: "IF there is a force-closure by the other party, THEN your funds are DIRECTLY automatically returned back to your wallet."?

Why in the world was the abovementioned automatic solution not in place now (or is it??)? Because of watchtowers or other stuff?

If above statement about not being able to recover... is not true, then pls elaborate kindly what the actual "return mechanism" is in such force-closure scenarios?

Thank you all

2

Sorry René, it seems you fell into a Bcasher trap here ;) OP phrased his question very vaguely and then proceeded to cry CENSORSHIP when you admitted there might be some truth contained in what he alluded to.

In reality, the case OP is alluding to is a very rare edge case that could ONLY occur, if the following things are ALL true: 1. You don't back up your channel state. 2. You don't give your channel to a watchtower. 3. You lose your channel state. 4. Your channel partner knows this. 5. Your channel partner has an old channel state that is more advantageous to him. 6. Your channel partner is evil.

This particular combination is easy to avoid and doesn't really occur in practice.

In a normal force-close, OF COURSE your funds are automatically returned to you.

  • great thx! this is awesome news, so just to reiterate : there is an AUTOMATIC REFUND mechanism in case of force closure. - and can you pls provide a link to a correct source which explains in clear terms your abovementioned points 1 & 2 1-how to "back up your channel state", or how to back up your seed in lightning? AND 2-how to "give your channel to a watchtower" ? -thank u (and i am not a bcasher, just uninformed-- but the guy whom I quoted may be one:-)) – johnsmiththelird Mar 22 at 14:01
  • ...i guess everyone needs to do his best to spread CORRECT info. if even rene fell (as you imply) for it, there is still much to do – johnsmiththelird Mar 22 at 14:06
  • Since last year, there is an optional feature in the BOLTs called "data loss protection", which should be live in all the major implementations now. This allows a fallen behind node to ask its channel partner to close the channel cleanly. This is nicely explained here by eclair: medium.com/@ACINQ/… – stefanwouldgo Mar 25 at 8:54
  • The central point with regards to this question is put beautifully in this quote from the above ACINQ medium post: "in order to lose money, you would have to lose your data and have a dishonest counterparty and they are willing to bet all their money that you are telling the truth when you say you lost your data." – stefanwouldgo Mar 25 at 8:57
  • As for updating your channel state, this is implementation dependent. For example, both eclair (medium.com/@ACINQ/…) and lightning-wallet.com (lightning-wallet.com/…) back up your data automatically all the time to google drive (and an Olympus server in lightning-wallet's case). IIUC, LND's plan is to devise a mechanism that allows for static channel backups. The nice thing here is that innovation is permissionless. – stefanwouldgo Mar 25 at 9:00
0

As far as I understand the situation the statement is true and the reason is for you to increase your privacy.

You mnemonic seed is equivalent to some secrete from which you will derive all the keys that are being used in lightning. While the key derivation in principle is deterministic it also uses information about the channel state. c.f. https://github.com/lightningnetwork/lightning-rfc/blob/master/03-transactions.md#key-derivation

This results in situations like this where previously in c-lightning there was a force close situation where c-lightning forgot about the channel state but also forgot to write down the redeem script and I alost my btc (check out: https://github.com/ElementsProject/lightning/issues/1738 )

So why changing addresses and keys for ever new channel state. The reason is that we don't want to share too much information with watching services (once they are there) Thus channel states are tried to be decorrelated. Also assume the address for spending your on chain btc would always be the same then you would send btc (when closing a channel for a second time to an address which previously received funds and from which you might have already spend in the past)

I think it is an implementation details (quite an important one) to be able to backup your channels / coins / UTXOs properly which will come. So if you look at the bug from above. The protocol actually worked I got my keys back but the implementation I used forgot my private keys for that address. This particular bug is fixed yet but there are still technical difficulties wich backing up channel state in an easy way.

  • thx. So it is TRUE?! but I dont get it: everyone can lose their funds if the other party force-closes the channel??? This is the ANTI-definition of a free financial world, this is precisely a CENSORSHIP mechanism, right?! Or am I misunderstanding here sth?? How can one "force-close" a channel? How can I on the other side make sure I receive back my funds?? What is this for a joke, is this a high-prio on the list for Devs`? @rene-pickhardt – johnsmiththelird Mar 20 at 22:41
  • I dont get entirely the "Privacy" piece of reason. What has privacy to do with returning funds from force-closed channels??? where is the privacy leak? And also this is highly non-sensical. It is 1000times more important for a person to have his MONEY back instead of any kind of privacy. What does he need privacy for when he doesnt have his funds. Why not just return the funds automatically ? @rene-pickhardt – johnsmiththelird Mar 20 at 22:45
  • generally if you have your lightning node with your seed and your data base that encodes your channel state you don't loose your fund if someone force closes a channel. The only thing is that people warn users that the seed in lightning works differently than in bitcoin. – Rene Pickhardt Mar 20 at 23:26
  • great, and can you link to a good explained source which explains in clear terms how the seed(backup) works in lightning differently to bitcoin? thx – johnsmiththelird Mar 22 at 13:58

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.