Bitcoin Optech Newsletter #427
Bitcoin Optech’s newsletter #427 reviews two newly disclosed DoS bugs in older Eclair releases and outlines a novel protocol for multi‑round contracts on Lightning. The report urges immediate upgrades and highlights a promising off‑chain contract framework.
핵심 내용
- Two DoS vulnerabilities in Eclair v0.14.0 and earlier can exhaust node memory within minutes.
- Both bugs were patched in Eclair v0.14.1; users should upgrade promptly.
- The LN‑GAP proposal enables complex two‑party contracts inside Lightning with on‑chain dispute resolution.
- LN‑GAP relies on an honest‑majority committee; collusion could lead to fund loss.
- Recent Eclair releases also fix several splice‑related enforcement and payment‑tracking issues.
- memory per unreachable channel
- ≈25 kB
- leak rate
- ≈1 MB/s
- memory per inflated pending channel
- ≈65 kB
- node RAM exhausted
- 4 GB
- time to exhaust
- ≈48 min
Vulnerabilities in legacy Eclair releases
Bitcoin Optech estimates that two denial‑of‑service flaws were found in Eclair versions prior to v0.14.1. The first, a race condition in the duplicate temporary_channel_id check, lets an attacker flood a node with identical open_channel messages, creating unreachable channel states that consume about 25 kB each. In testing, the leak reached roughly 1 MB per second, quickly exhausting memory or CPU resources. The second flaw bypasses the pending‑channel limiter by reusing a final channel_id as a temporary ID, inflating stored init‑feature copies to about 65 kB per channel. A single connection in the lab drained a node’s 4 GB RAM in roughly 48 minutes, causing crashes on restart until manual cleanup.
Immediate mitigation steps
Bitcoin Optech advises all operators running Eclair v0.14.0 or earlier to upgrade to v0.14.1, which incorporates fixes for both issues (PR #3324). Mobile wallets that rely on an ACINQ‑patched LSP, such as Phoenix, are already protected. The report also notes that the vulnerabilities affect only the channel‑opening path; once a channel is established, normal operation resumes.
New off‑chain contract proposal: LN‑GAP
Beyond bug disclosures, the newsletter highlights a proposal called LN‑GAP, designed to run complex, multi‑round contracts inside Lightning channels while limiting on‑chain dispute resolution to a constant number of transactions. The authors demonstrated the concept with an on‑chain‑settled chess game, using a committee (the "venue") that attests only to the timeliness of message publication. Attestations are made via one‑bit signatures verified with OP_CHECKSIGADD, and venue members are compensated through atomic channel fees. The design avoids holding user funds and does not depend on threshold signatures, but it assumes an honest majority; collusion among more than half the venue could enable theft.
Broader implications and caveats
Bitcoin Optech cautions that while LN‑GAP opens doors for applications like proof‑of‑storage contracts and off‑chain dispute resolution, its security hinges on the venue’s integrity. Developers must weigh the honest‑majority assumption against the risk profile of their use case. Meanwhile, the recent Eclair patches (PRs #3396‑#3400) also address splice‑related enforcement gaps and payment‑tracking bugs, reinforcing the importance of staying current with software releases.
What readers should do
Operators should verify they run Eclair v0.14.1 or later and monitor upcoming release candidates for further hardening. Developers interested in off‑chain contracts may explore the LN‑GAP repository and paper, but should conduct thorough threat modeling before deploying in production. Overall, the newsletter underscores the dual need for prompt patching of known vulnerabilities and careful design of new protocol extensions.