Jameson Lopp is a software engineer at BitGo, creator of Statoshi.info and founder of Bitcoinsig.com. He enjoys building web services and is intrigued by problems of scale.
In this feature, Lopp examines the Lightning Network, a proposed solution for scaling the bitcoin network and enabling low-cost microtransactions, analyzing the potentially daunting challenges the initiative has ahead.
The bitcoin community has been discussing the concept of the Lightning Network for a year now. It is often cited in scalability debates as a solution to bitcoin’s limited transaction throughput capabilities.
However, it’s a complicated concept and several parts of the implementation are still theoretical or in development.
This article will attempt to provide more insight into how the Lightning Network will operate and the challenges it will face. The following assumes you have a basic understanding of Lightning Network. If you’re new to this concept then you can check out this explanation in layman’s terms or read the technical details here.
Since the Lightning protocol is in flux, some of my conclusions may already be invalid or may be invalidated in the near future. A variety of models and simulations will be presented throughout this article, but there is no guarantee that any of them will hold true – no amount of theorizing can substitute for real-world data once the network is operational. There are currently four different projects (Lightning, Blockstream, Eclair and Thunder Network) working on code for compatible implementations, but we don’t expect a minimum viable protocol until summer at the earliest.
Some people like to call Lightning Network a caching layer, but it may be more accurate to think of it as a settlement deferral system. If you realize that a healthy economy has value constantly flowing back and forth amongst the participants (nodes) in the economy, you can see that many of the value transfers will actually cancel out and the net change in value distribution around the economic network will be much smaller than the total value transacted.
In order for Lightning Network to succeed, it will need to leverage this economic property – but it won’t be simple.
As a software engineer for a bitcoin wallet, I’m fascinated by theories and proposals to improve the system. Once it’s clear that a proposal is on the path to becoming reality, implementation details become much more important.
After spending countless hours soaking up all the information available about Lightning Network, I’m happy to report that its theoretical capabilities are quite convincing.
However, scalability without usability will prevent us from transforming the theoretical into the concrete.
While the Lightning Network white paper is quite clear about how Lightning payment channels will operate, there are still many questions regarding how the network itself will operate as a whole.
One of the biggest unknown questions is what the graph of the Lightning Network will end up looking like.
To be more specific: What will the proportion of highly connected nodes to sparsely connected nodes be? A network with mostly well-connected nodes will be more dense and allow traversal of the graph with fewer hops, which will be more efficient.
A network with only a handful of “hub” nodes will be more spread apart, requiring users to either choose longer, less efficient routes through the network or to choose to go through the few well connected nodes. If users are incentivized to use a few well-connected nodes for payment routing, this poses privacy issues and creates more substantial targets for attackers to disrupt the network.
Here is a simplistic example of potential graphs that the Lightning Network nodes may end up forming, courtesy of Paige at MaidSafe.
I suspect that the network shape will be most like the second graph, with some noticeably well-connected nodes.
This is based upon the analysis of monetary flow within the bitcoin network in 2012 that you can read about in the paper “A Fistful of Bitcoins: Characterizing Payments Among Men with No Names.”
While bitcoin’s economic network is clearly much larger and more complex today than it was in 2012, the relationships between participants are probably still similar.
Will the incentives of the network result in centralization around a relatively small number of highly connected nodes?
We may be able to predict some of the Lightning Network’s dynamics by examining Bose-Einstein Condensation in Complex Networks.
The gist is this: In networks where the nodes are competing for being the most well connected because it gives them an advantage over other nodes, phenomena such as “first-mover-advantage,” “fit-get-rich,” and “winner-takes-all” result in network centralization as a minority of nodes eventually capture a significant portion of the network’s links.
In the second simulation, routing nodes are sufficiently funded, A/B/C/D have no income received via Lightning, and E/F/G/H have no expenses they can pay for via Lightning.
As a result, network activity grinds to a halt when A/B/C/D go broke and E/F/G/H’s wallets are full.
In the third simulation, routing nodes are sufficiently funded, A/B/C/D have no income received via Lightning, and E/F/G/H have no expenses they can pay for via Lightning.
However, an exchange (node X) is added, and A/B/C/D sell fiat for more lightning funds when they come close to being broke, while E/F/G/H sell lightning funds for fiat when their channels become unbalanced in their direction.
Having a fiat exchange seems the most sustainable way to enable channel rebalancing by allowing income to enter and exit the Lightning Network.
Theoretically, a complicated closed system (the baristas buy coffee beans from someone, who buys farming equipment from someone else, who buys hardware supplies from one of the people who drink coffee) could also work, but it won’t be feasible while the network is being bootstrapped.
It’s clear to me that an efficiently operating Lightning Network has huge potential, but there are many challenges that need to be surmounted in order to ensure that it is also robust and easy to use.
This is no different from bitcoin or even the Internet in their infancy.
Just as with those other network technologies, we’re more likely to see adoption if the complexities are hidden from users under layers of software. As Lightning matures, I expect to see it enable new classes of economic interaction and usher in the dawn of yet another economic revolution.
Disclosure: In an effort to improve the technical analysis, Lightning Network developers provided feedback on this article.
Electrocution image via Shutterstock
Thank you for visiting our site. You can get the latest Information and Editorials on our site regarding bitcoins.