Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Gossip message to indicate that peer delays a payment #437

Closed
akumaigorodski opened this issue Jun 5, 2018 · 1 comment
Closed

Gossip message to indicate that peer delays a payment #437

akumaigorodski opened this issue Jun 5, 2018 · 1 comment

Comments

@akumaigorodski
Copy link

There's a possible type of attack which was discussed previously here: #182 (comment)

Suppose there's Bob -> Alice channel where Bob is sending an HTLC and Alice is a malicious node. The most insidious and at once most realistic Alice behavior would be to accept a payment, then just do nothing for as long as possible, then fail it to not let a peer close a channel uncooperatively because of expired HTLC.

Bob may use some kind of analysis to detect this malicious behavior over time and, say, start failing -> Alice payments right away but that would be a local knowldge while also letting everyone else know might be useful. Obviously Bob would have to prove that what he claims is true so he can include an unsigned commitTx along with (HtlcTimeoutTx, bobSig, aliceSig) in a gossip message.

Having this data all the other nodes can get channel funding tx and related peerNodeIds by examining commitTx input and can verify that HTLC exists, spends from commitTx, is signed by both peers and is close to expiration point by examining (HtlcTimeoutTx, bobSig, aliceSig). It would be up to other nodes on how to react to this.

This can be further extended by combining two events: gossip "complain" message and following uncooperative closing on-chain tx which contains a related payment as one of it's outputs. This would further indicate that Alice is malicious or buggy and appropriate measures could be taken.

@tyzbit
Copy link

tyzbit commented Jun 8, 2018

Perhaps this could be remedied by using the penalty system outlined in my Atlas idea I discussed on the mailing list.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants