Many have claimed that Bitcoin (BTC-USD)(COIN)(OTCQX:GBTC) and or blockchain cannot scale. There is some truth to this, but as we will see; scale is a moving target. There are many aspects to scaling and many approaches to “solve” the scaling problem. The Lightning Network is one such approach, which is also multifaceted. If the Lightning Network can deliver on the capabilities that its originators claim, then the argument that Bitcoin/blockchain cannot scale will have been dispelled (the theoretical speed is billions of transactions per day); at least for a while.
Why are blockchains slow?
In software development, we start off by thinking about what problem we are trying to solve before we ever write a line of code. Each piece of software (ideally) should be written to solve a certain problem the most effective way possible. I’ll give you one example.
Let’s suppose your problem is that you need to store and retrieve data. Usually, this problem is solved using a database. However, databases have certain limitations. One of those limitations is that even the largest databases do have storage limits. Also, if your data (or the query you need to run on that data) is complex, the time it takes to get your data out of that database could be longer than your customers want to wait.
Imagine you’re Google (GOOGL). Someone searches for the term “bicycle.” It turns out there are at least 744,000,000 results for this search term, and your users are expecting a response in a fraction of a second. I’ll spare you the technical details, but there are certain strategies that Google will use to make this happen. Some of their strategies might be to denormalize the data, make use of caching, and serve the data to you from the closest possible CDN.
What in the heck does this have to do with blockchain?
Well, recall that blockchain is a slow, distributed data structure, in which it’s difficult to add data (powerful computers must compete 24/7 for the chance to add a single entry every 10 minutes) and history cannot be re-written without recalculating the whole data structure (it’s immutable).
The purpose of a blockchain was not to be fast. The purpose of a blockchain was to be difficult to change (Proof of Work, write only) and tamper-evident. This means if you make a fake entry into the blockchain (sending yourself fake coins for example), I can prove that your entry is false and the network will reject your dubious entry because the majority of the network will also find this transaction to be invalid.
Anyone can actually download the blockchain and make a change to it, but the problem is that everyone else can see the change when you try to sync with the network. If your change isn’t valid, then the rest of the community “vote you off the island” so to speak. It’s actually the fact that the blockchain is a distributed ledger that makes is immutable in practice. The longest proof of work wins, this is called Nakamoto Consensus.
The Byzantine General’s Problem
To understand why this level of robustness is necessary, consider the problem of the Byzantine General.
Nakamoto Consensus is the first known solution to the problem of the Byzantine General; creating Byzantine fault tolerance. Essentially the problem is, how do you send or receive a message in a hostile environment?
Source: Ivan on Tech via YouTube
The speed of the Bitcoin blockchain is a design decision.
The blockchain is slow because it’s not designed to be fast, it’s slow because it’s designed to be durable and tamper-evident. It’s slow because it needs to be able to resist constant assault and remain as a source of truth.
What is the Lightning Network?
The Lightning Network is a collection of synergistic protocols. In a white paper submitted in 2016, Joseph Poon and Thaddeus Dryja suggest that it’s possible to have instant payments, scalability and practical micropayments by using a layer two scaling solution. The existing Bitcoin blockchain would form the base layer, being the ultimate source of truth for value transactions. Meanwhile, the Lightning Network would form a second layer, where transactions could occur quickly and securely, occasionally syncing with the base layer.
This approach takes on scaling in two ways.
Activity is moved from the base layer onto layer two (the Lightning Network), reducing the need to process every transaction on the blockchain. On the second layer, transactions move much faster and cheaper, creating an attractive outcome for vendors and users, which reinforces the power of the base layer while allowing scaling rooted in Bitcoin but orders of magnitude cheaper and faster.
Where can I learn more about the Lightning Network?
I cannot possibly provide a complete guide to the Lightning Network in this article. However, I can give you a summary of the key points and a list of places where you can go to learn more and expand your understanding. Below is a short list that should get you going.
Lightning Labs – A…