Paper 2022/1454

Unjamming Lightning: A Systematic Approach

Clara Shikhelman, Chaincode Labs
Sergei Tikhomirov, Chaincode Labs

Users of decentralized financial networks suffer from inventive security exploits. Identity-based fraud prevention methods are inapplicable in these networks, as they contradict their privacy-minded design philosophy. Novel mitigation strategies are therefore needed. Their rollout, however, may damage other desirable network properties. In this work, we introduce an evaluation framework for mitigation strategies in decentralized financial networks. This framework allows researchers and developers to examine and compare proposed protocol modifications along multiple axes, such as privacy, security, and user experience. As an example, we focus on the jamming attack in the Lightning Network. Lightning is a peer-to-peer payment channel network on top of Bitcoin. Jamming is a cheap denial-of-service attack that allows an adversary to temporarily disable Lightning channels by flooding them with failing payments. We propose a practical solution to jamming that combines unconditional fees and peer reputation. Guided by the framework, we show that, while discouraging jamming, our solution keeps the protocol incentive compatible. It also preserves security, privacy, and user experience, and is straightforward to implement. We support our claims analytically and with simulations. Moreover, our anti-jamming solution may help alleviate other Lightning issues, such as malicious channel balance probing.

Available format(s)
Publication info
Bitcoin Lightning Network payment channels payment channel networks jamming
Contact author(s)
clara shikhelman @ gmail com
sergey s tikhomirov @ gmail com
2022-10-25: approved
2022-10-24: received
See all versions
Short URL
Creative Commons Attribution


      author = {Clara Shikhelman and Sergei Tikhomirov},
      title = {Unjamming Lightning: A Systematic Approach},
      howpublished = {Cryptology ePrint Archive, Paper 2022/1454},
      year = {2022},
      note = {\url{}},
      url = {}
Note: In order to protect the privacy of readers, does not use cookies or embedded third party content.