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

Funds of intermediate hops can be forcefully locked up for a long time. #2049

Closed
joostjager opened this issue Oct 14, 2018 · 0 comments
Closed

Comments

@joostjager
Copy link
Contributor

Background

It seems a route can be crafted that forces intermediate hops to lock up their funds for a long time by intentionally black-holing the payment. It does require the attacker to lock up funds too, but the cost for this may be lower for the attacker than for the target.

Your environment

Steps to reproduce

  • Modify lnd of Charlie to represent finalCLTVDelta as uint32 in newRoute (instead of the current uint16) and force it to 1000000 blocks.
  • Set exit settle hodl flag on Alice
  • Send payment from Charlie via Bob to Alice. Bob is the unaware intermediary.

Expected behaviour

Bob doesn't like such a long time lock and refuses the htlc.

Actual behaviour

Bob commits to the HTLC and needs to wait 1000000 blocks to get his money back.

  "pending_htlcs": [
                {
                    "incoming": true,
                    "amount": "6001",
                    "hash_lock": "DUNVXFiMBW58rh8sEEL/HI1vg6YdndMrfxjarudlATY=",
                    "expiration_height": 1007324
                }
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

1 participant