The Limitations of Lightning Network Routing: A Potential Solution
The Lightning Network, a layer-2 scaling solution for Bitcoin, has revolutionized the speed and cost efficiency of transactions. However, one of its fundamental limitations lies in how payment routing is handled. Currently, the sender of a payment is responsible for constructing the entire payment route from themselves to the receiver. This poses a problem as the balances of channels change over time, making it difficult for senders to find a reliable route without trial and error.
To address this issue, developers have explored two options: a cumbersome user experience or the use of payment probing. The former option is not ideal for a scalable payment solution, while the latter adds unnecessary strain on the network. Payment probing involves intentionally crafting failed payments to test the viability of a route before attempting the actual payment.
The root cause of these problems is the inability to change a payment route mid-transaction without the involvement of the sender. Each hop along the route is only aware of the hop before and after it, making it impossible to construct an alternate route from the intermediary nodes to the receiver.
Despite this limitation, there is a potential solution. Although intermediaries can’t fully reconstruct a new route to the destination, they can reroute the payment to the next hop defined by the sender. For example, if Bob receives a payment meant for Carol but doesn’t have enough capacity in the channel to forward it, he can route part of the payment through that channel and find alternative routes to route the remaining amount to Carol.
Recently, Gijs van Dam developed a proof of concept plugin for the Compact Lightning Network (CLN) that leverages multi-path payments. This plugin allows Bob and Carol to communicate with each other about partially rerouted payments, ensuring that the payment can succeed without having to fail, go back to the sender, and be rerouted by them. This standardized behavior, if widely adopted, can significantly improve the success rate of payments on the Lightning Network and enhance the user experience.
Notably, Gijs van Dam’s motivation to address this issue was also driven by privacy concerns. Lightning Network is known to be vulnerable to channel probing, a technique that can deduce fund distribution across channels. By repeatedly probing channels with carefully chosen amounts, an attacker can gain insights into the balance distribution and potentially deanonymize payments. However, the introduction of payment splitting and switching undermines probing attacks as it disrupts the assumption that a payment attempt will fail when a specific channel lacks liquidity. This proposal not only improves payment success rates but also addresses a major privacy shortcoming of the Lightning Network.
In conclusion, the Lightning Network is not without its limitations, but solutions like payment splitting and switching offer promising ways to overcome these challenges. With the recent vulnerability in the network, it is evident that solutions to one problem can also address others. While progress may be gradual, it is clear that preserving Bitcoin‘s core properties in a scalable and sustainable manner is possible with the right innovations.
❗Follow us on Twitter to get all the latest crypto news as soon as they're out! 🚀