If I understands correctly, A and B will exchange their revocation key once they are ready to move to the next state. What happens if B received the revocation key and decided to close the channel unilaterally without broadcasting the transaction. This way B can never get his funds, but A can never get his funds as well. Because A can not broadcast his transaction since B has his revocation key. Isn't it a huge risk for A?
1 Answer
What happens if B received the revocation key and decided to close the channel unilaterally without broadcasting the transaction
By definition, channels are only closed once a commitment transaction or the closing transaction is broadcast. So B cannot close the channel; he simply withholds data from A.
Your scenario is not possible because A will only give B the revocation key once both B has given A his new commitment transaction. So if B refuses to give A the revocation key to his commitment transaction, then A can close the channel by broadcast the previous commitment transaction which has not yet been revoked.
-
Thanks! Wouldn't it be unfair for B if A gets the new commitment, so he can broadcast both the old commitment and the new commitment? (especially in the case when the old commitment favors A). Commented Mar 22, 2018 at 5:09
-
1The protocol is actually a bit more nuanced. A first sends B B's new commitment. When B accepts it, he has to send both the revocation key and A's new commitment before A sends B his revocation key. So if B refuses to send A the revocation key, A can close the channel unilaterally using the previous commitment which has not yet been revoked. I revised my answer slightly.– Ava Chow ♦Commented Mar 22, 2018 at 5:19
-
I suggest that you read this section of the lightning rfs: github.com/lightningnetwork/lightning-rfc/blob/master/…– Ava Chow ♦Commented Mar 22, 2018 at 5:20