Lightning 101: Challenges & Limitations
This is the ninth and final installment of our Lightning 101 series. To see previous installments click any of the links below:
While Lightning and the Lightning Network offers many benefits for the future of finance, it is not without its own challenges and limitations. In this post we explore some of those challenging issues.
As with any new technology, there are shortcomings of the technology itself, as well as engineering problems that can be solved. We will try and outline which problems are inherent limitations of the Lightning Network and which problems simply need more engineering work. Keep in mind that this is not an exact science and that only time will tell how this plays out.
Solvable challenges with the Lightning Network
Peer cooperation for good UX
When sending payments to people you’re not directly connected to, you need help from intermediate nodes. In order to make this process seamless they must cooperate. If your peers fail to cooperate (either because they are malicious or by accident), there’s a slight time delay before your funds are accessible to you again. Even though your money is never at risk of being stolen this can make for a frustrating experience.
Note that even though Lightning requires cooperation for money to flow efficiently, that does not mean we cannot improve the tools and mechanisms used to facilitate said cooperation. As the network matures we can expect to see more reliable software and routers, as well as better mechanisms for punishing bad actors (and thereby disincentivizing bad behavior).
No offline capability
Many cryptocurrency enthusiasts today store their money on a hardware wallet, such as a Trezor, Ledger or Coldcard. This provides much better security compared to storing funds on a mobile phone or your normal desktop computer. This is not currently possible with the Lightning Network. Due to this, having money in a Lightning wallet is not as secure as we would like it to be. Luckily, there is nothing preventing a hardware wallet with support for Lightning from being made. It would be somewhat limited in what it could do compared to a “hot” Lightning wallet, but the core functionality of sending money could work very well.
Lack of infrastructure and easy to use software
Even though Lightning has come a long way in improving user experience already (just ask anyone that used Lightning a year ago!), there’s a long way left until we’re ready for mainstream adoption. Most Lightning software expects users to download and verify the entire Bitcoin blockchain, and poking around in the command line is pretty common. There’s a ton of interesting projects in the pipeline and judging by the improvements that’s been made over the last year, we’ll be in a very different place 12 months from now.
The Lightning Network is what’s called an interactive protocol. In layman’s terms, this means that in order to transact on the Lightning Network the parties involved need to communicate while doing so. Compare this to the Bitcoin blockchain where payments can be sent without the recipient even being aware that money is headed in their direction.
Transferring large amounts of funds
As we’ve covered in a previous blog post, routing of payments are essential for the Lightning Network. For routing to function properly, capital must be allocated to routing nodes and paths. This means that a smaller payment has a very high probability of succeeding, but a bigger payment might struggle a bit. Also, Lightning is still experimental technology with all major Lightning implementations still in the beta phase. As a consequence of this, there’s a soft limit on how big Lightning transactions (approximately 4.3 million satoshis) and channels (four times the transaction limit) can be. Note that these limits can (and will) be raised in the future.
The reasons mentioned above (plus the lack of hardware wallet support) are some of the reasons that Lightning is more suited for small transactions and that the Bitcoin blockchain is the go to place for bigger payments. You can think of Lightning as your checking account and keep your life savings on the Bitcoin blockchain.
As seen in this piece, there are certain limitations (current and inherit) within the Lightning Network. Everyone using Lightning or considering building on it should be aware of these. In short, they can be summarized as a set of tradeoffs where we accept a slightly weaker security model and resource constraints are different (available space in a block vs. available capital on the network), and in return we get vastly improved efficiency, scalability and usability.
This post concludes a nine-part series of our Lightning Network 101 guide. We recommend reading through the posts in sequence. In the first post we give an introductory overview of the Lightning Network. We go on to cover what entities make up the network, and how they request money from each other through invoices as well as their fulfillment by payments through payment channels. Next we discussed routed payments , one of the core features of Lightning, enabling linked payments between non-connected peers. Towards the end of the series we discuss some of the more advanced aspects of Lightning, namely fees, security and privacy. By reading this guide you will get a pretty good overview over the most crucial parts of Lightning technology.
You can also reach us on the Lightning Network:
In December of last year Suredbits released the first ever cryptocurrency market data API where you can stream data and pay for it all on the Lightning Network. Here’s some additional reading on that topic you may find interesting:
Today we are excited to announce the release of our cryptocurrency exchange market data api that is monetized with the…medium.com
We are making significant progress in building our Cryptocurrency Exchange API using the Lightning Network. We put…medium.com