-
Notifications
You must be signed in to change notification settings - Fork 34
Precise threat model, mitigation, add sources #4
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
Conversation
1c58c12
to
c7310cc
Compare
Updated with corrections at c7310cc. |
070fde1
to
72e9dc5
Compare
Updated following offline discussion. About the bidirectional proposal :
How do you learn about the HTLC being settled quickly upstream ? Alice -> Bob -> Caroll -> Dave, for Bob to not apply a backward payment on Caroll, he needs to know the state of the link Caroll-Dave ? More fundamentally, I think that if the backward payment is function of its CLTV locktime you have a routing fee asymmetry profitable to an attacker.. If Bob routes a HTLC for Alice to Caroll, CLTV on the link Alice-Bob must be higher than on the link Bob-Caroll, thus backward fees paid by Bob to Alice will be higher than received from Caroll. |
spam-prevention.md
Outdated
|
||
`htlc_minimum_msat * max_accepted_htlcs` | ||
|
||
As this equation is function of channel policy parameters, properly configuring them can help | ||
partially mitigate them: |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I would remove these lines, and instead update the sentence below.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Updated with sentence below.
spam-prevention.md
Outdated
* use a reasonable value for `htlc_minimum_msat` (1 sat is **not** a reasonable value for channels | ||
with a big capacity; it may be ok for small channels though) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
* use a reasonable value for `htlc_minimum_msat` (1 sat is **not** a reasonable value for channels | |
with a big capacity; it may be ok for small channels though) | |
* the attacker needs to lock at least `htlc_minimum_msat * max_accepted_htlcs` of his own funds to completely fill a channel, so you should use a reasonable value for `htlc_minimum_msat` (1 sat is **not** a reasonable value for channels with a big capacity; it may be ok for small channels though) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Adopted this sentence.
No, that's why I think the proposal works nicely, you don't need to care about anything else than your local link. |
72e9dc5
to
5477b72
Compare
Okay this part works if you have a
Still this concern holds, if cost structure of routing fees account for lengths of CLTV across links, you should remember that CLTV are decreasing along a payment path. In a situation where |
Simply because I'm not scaling backwards payments with time held :) |
Note, I removed the "decentralisation" as property. It's too loosely defined and I would say it's more a "general" property of Lightning which improve the system on multiple dimensions : privacy, fault-tolerance, payment costs.
That said, I would be glad if we have a better map of centralization vectors.