How can Bitcoin scale?

The discussion about Bitcoin’s adoption and use for everyday transactions is an important one. Although some people today claim that Bitcoin is nothing more than digital gold, and therefore not necessarily intended for day to day transactions, I find this answer unsatisfactory. Indeed, Bitcoin is and always has been a medium of exchange in its own right. Its usability matters, and that’s why I wanted to look at what can enable Bitcoin to scale up from the few thousand users of its early days to the millions of today, and the hundreds of millions of tomorrow.

So how can Bitcoin scale? The consensus within the Bitcoin community for Bitcoin to scale is to develop a set of layered protocols. Bitcoin then forms the first layer, the one on which all transactions are finalized, set in stone, and above which other protocols are deployed that refer back to the Bitcoin layer.

This is the case, for example, with the Lightning Network (see below, Section 3. “What is the Lightning Network?“), which allows thousands of transactions to take place outside the Bitcoin blockchain (sometimes referred to as “off-chain” transactions), and only a final accounting of these transactions (i.e., a net settlement of the transactions made outside the Bitcoin blockchain) are recorded on the Bitcoin blockchain.

But the path to this conclusion has been tumultuous. A long debate has indeed taken place within the Bitcoin community on the subject of scalability, and while off-chain scalability now seems to have a bright future, on-chain scaling (e.g. the recent Bitcoin protocol update SegWit) also remains a relevant and laudable goal. In this regard however, the path to on-chain scaling by increasing the size of Bitcoin blocks seems to have been discarded by the majority of the Bitcoin community because it brings with it its own set of complications (see Section 2 “Why are Bitcoin blocks so small?” below).

1. How can we enable Bitcoin to process thousands of transactions per second?

Before answering this question, it is worth looking at the technical limitations of Bitcoin first. Indeed, the question arises from a rather simple technical consideration: Bitcoin blocks, which contain transactions, have a finite size and are mined at an average rate of one block every 10 minutes. This limited size per block, historically 1 megabyte (MB), means by extension that a limited number of transactions can be included per block, since each transaction takes up space (usually a few hundred bytes). Thus, there is a maximum number of transactions that can be added to a new block every 10 minutes, and thus there is a maximum number of transactions per second (in the aggregate).

Of course, depending on the space (i.e. bytes) occupied by the different transactions in a block (not all transactions are equal in this respect) more or fewer transactions can be included in a particular block. If we take an average of 2400 transactions per block (which is about what we observe for full blocks today), then we find a throughput of 4 transactions per second (in the aggregate). How then can Bitcoin compete, in terms of transaction throughput, with traditional centralized payment networks like Visa or Mastercard, which are capable of processing thousands of transactions per second?

The solution to this apparent problem lies in the fact that we haven’t taken the proper time first to ask ourselves whether or not, in these two very different contexts (Bitcoin vs. Visa), the term “transaction” has the same meaning. So let us ask ourselves the question first; What is a Visa transaction? The answer is simple: a payment from a buyer to a seller. A Visa transaction is equivalent to a transactional, commercial exchange.

What then is a Bitcoin transaction? A Bitcoin transaction can represent multiple things. It can be, like a Visa transaction, a simple transfer of value from one person to another. But it can be many other things as well. A single Bitcoin transaction can also be:

  • a payment from one entity to dozens of others. Dozens of “classic” transactions are then carried out in a single Bitcoin transaction (this is known as transaction batching, which is widely used by exchange platforms in particular);
  • conversely, several entities coordinating to send funds in a single transaction, each entity sending its own funds (this is the case in particular with CoinJoin transactions);
  • a “footprint” that settles (much like a clearing house) thousands of so called off-chain transactions, i.e. transactions that took place on another transaction protocol built on top of the Bitcoin blockchain. A good example of this is a transaction that closes a payment channel on the Lightning Network.
  • and many other things, more or less exotic.

In light of the above its is obvious that the two networks (Visa vs. Bitcoin) are not really comparable: some Bitcoin transactions can “equal” in reality thousands of transactions.

Therefore, comparing Visa transactions and Bitcoin transactions makes little sense without keeping this distinction in mind. Especially if you also consider another major difference between a Visa transaction and a Bitcoin transaction: a Bitcoin transaction is (more or less) irreversible from the moment it is mined (in other words the trade is the settlement), while a Visa transaction can be reversed for many days after it is made (i.e. the trade and its final settlement are 2 distinct occurrences and the trade does not guarantee final settlement).

Because a Bitcoin transaction has the potential to represent a manyfold of off-chain transactions, one of the most obvious ways to scale Bitcoin’s transaction throughput is by developing new transaction protocols that are built on top of the Bitcoin blockchain (sometimes referred to as “layer 2” solutions, whereby the Bitcoin network constitutes layer 1). This means in effect that we should be considering the Bitcoin blockchain as a final settlement layer, rather than a day-to-day payment layer.

2. Why are Bitcoin blocks small?

Bitcoin’s block size has long been, and still is, the subject of heated debate. Indeed, given the relatively low number of transactions that Bitcoin is able to process due to its limited block size, why not simply increase the Bitcoin block size? We could for instance increase it gradually to accommodate the growing use of Bitcoin, and then the problem would be solved (?).

As the reader may suspect, it’s not that simple. Indeed, a fundamental characteristic of the Bitcoin network is that it is decentralized. Tens of thousands of computers, full nodes, spread around the globe, constantly check the validity of transactions added to new blocks, help propagate transactions through the network, and maintain their own version of Bitcoin’s history (in other words, their own copy of the Bitcoin blockchain). In order for the average person to be able to run and maintain a full node (which is essential for keeping the Bitcoin network decentralized), full nodes must be able to run on almost any type of device, even an old computer or a basic Raspberry Pi. With larger block sizes however, hardware and bandwidth requirements (and associated costs) for full nodes increase accordingly, which make it more difficult for the average person to run a full node. Large blocks therefore inevitably lead to a centralization of the Bitcoin network around an ever smaller number of full nodes run by a limited number of entities capable of sourcing and maintaining the required hardware and bandwith. This is what we see today with, for example, Bitcoin SV (Satoshi’s Vision) whose huge blocks are detrimental to decentralization.

Moreover, to increase the size of the blocks in the strict sense (i.e. to modify the value of the blocksize parameter in the code), it is necessary to resort to a hardfork to carry out the update. Such a hard fork would likely cause major disruptions, including the risk of a split in the Bitcoin blockchain between nodes that are up to date and nodes still operating under the older version of the Bitcoin protocol. This is one of the reasons why the Bitcoin community opted to choose for a soft fork update called SegWit in 2017, as this update enabled the block size to be increased (in a sense) up to 2 MB without having to modify the actual blocksize parameter in the code, hence without having to resort to a hardfork.

Finally, another problem that may arise when deciding to increase the block size indefinitely to keep up with the growth of Bitcoin’s usage is that it may endanger the funding of the security of the Bitcoin network over the long term. Indeed, since the monetary issuance of new bitcoins decreases over time, it is necessary that transaction fees increase gradually over time in order to adequately compensate the miners for the decrease in block subsidies (also called the coinbase reward or the mining premium). However, if we persist in increasing the size of the blocks, the transaction fees would remain more or less constant (i.e. the result of supply and demand) and, as a result, would not be adequate to compensate the miners for the decrease in block subsidies.

3. What is the Lightning Network?

The Lightning Network is a protocol and network built on top of the Bitcoin network. The idea is to perform certain transactions off-chain, meaning on the Lightning Network, so as not to clog up the main Bitcoin blockchain.

Transactions on the Lightning Network are not subject to the same limitations as transactions on the Bitcoin blockchain, enabling for instance instant micro payments at virtually no cost, which are not possible on the Bitcoin blockchain.

The Lightning Network works on the principle of two-way payment channels. Two people first agree to open a payment channel on the Lightning Network. In order to do so, they make a transaction on the Bitcoin blockchain that opens the payment channel and each person dedicates a certain amount of Bitcoin funds to the payment channel. Once the payment channel is open, the funds deposited in it can be moved from one side of the channel to the other side, as many times as desired, as long as there are sufficient funds on the side from which funds are sent. By way of analogy, you can think of an abacus where you move the beads back and forth from one end to the other.

In this regard, it is important to stress that you don’t have to be directly connected to someone via a payment channel to be able to send them bitcoins through the Lightning Network. In fact, you can use the channels of other network members to reach your destination. Thus, as long as there is a route via one or more linked payment channels connecting the two nodes, and there is adequate liquidity alongside said route, it is possible for these two nodes to exchange bitcoins via the Lightning Network.

Schematic example of Lightning Network payment channels. If the liquidity of the relevant channels is sufficient, node A is able to transact with node Q notwithstanding the fact that there is no payment channel between node A and node Q. Diagram created by Kjerish.

Finally, when one (or both) of the parties wish to close their payment channel, they are free to do so through a so-called “closing” transaction, which will take place on the Bitcoin blockchain. The closing transaction sends each party the amount of bitcoin he/she is entitled to, taking into account all the transactions that have taken place in the payment channel, i.e. for each party this is the amount that was on his/her side of the channel at the time of the closing transaction. In other words, the final net settlement of all the transactions that have taken place on the Lightning Network between the two parties happens on the Bitcoin blockchain itself. Once the closing transaction is confirmed on the Bitcoin blockchain, all the transactions that happened on the Lightning Newortk through the closed payment channel enjoy the same level of security as the security of the Bitcoin blockchain.

In light of the above, it is clear that the Lightning Network has the potential to act as a major contributor to Bitcoin’s scalability by allowing thousands of off-chain transactions to take place at the cost of only two on-channel transactions for (1) opening and (2) closing a payment channel.

Of course, it would be optimistic to think that the Lightning Network by itself would be sufficient to scale the Bitcoin network as a payment’s mechanism to hundreds of millions of people to around the world. Further efforts are needed to scale the Bitcoin network, on the one hand by improving on-chain scalability (e.g., through additional improvements that reduce the space taken up by transactions in a Bitcoin block), but also by improving off-chain scalability; for example, by keep improving the Lightning Network or by developing other complementary layer 2 protocols or side chains (such as, for example, the so-called Liquid network, which is a side-chain to the Bitcoin blockchain designed by the company Blockstream).

Written by author Fanis Michalakis


Attention! Do you store your cryptocurrencies on an online platform? Please note, in that case you are not the actual owner of your cryptocurrencies!

In particular, you run the risk of losing all your cryptocurrencies, without any recourse, in the event that the online platform or your personal account falls victim to hacking or in the event of an unexpected closure (e.g. insolvency) of the online platform.

Protect yourself against hacking and take real ownership of your cryptocurrencies by storing your cryptocurrencies offline on your very own Trezor hardware wallet. Don’t wait before it’s too late and take immediate action now!

Click on the ‘Buy Now’ button below to buy a Trezor wallet from the official Trezor website.

Trezor Model T – hardware wallet