Scaling Bitcoin to Millions of Transactions per Second
By: Nic Niedermowwe
Tags: Lightning Network, Payments, Bitcoin, Scaling, Cryptocurreny

Please note the disclaimer at the bottom of this page.

The bitcoin blockchain has a transaction throughput of ca. 7 transactions per second (tps). This is clearly not enough to achieve adoption as a ‘world currency’, as there were nearly 500 billion non-cash transactions globally in 2018,¹ which equals roughly 16000 tps.²

The simplest way to increase transaction throughput would be to increase the number of transactions included in each block, or the frequency with which blocks are added to the blockchain. However, recording more transactions on the blockchain would increase the costs of running a full node, which would negatively affect decentralisation, and hence the security and trustless nature of the system.

With bitcoin for example, new blocks are created every 10 minutes on average and limited to 1 MB of data, causing its blockchain to grow by 50 GB annually. This is already quite a lot for an off-the-shelf laptop, but probably sustainable if one takes into account that hardware tends to improve and get less costly over time. If, however, the bitcoin network were to process 2000x more transactions, the blockchain would grow by a staggering 100 TB per year. Running a full node to participate in the consensus process would become infeasible for all but a small number of commercial operators.

As a consequence, second layer solutions have been proposed in which transactions would be conducted off-chain via peer-to-peer payment channels. Bitcoin’s implementation is called the Lightning Network,³ and other blockchains are expected to follow suit.⁴ The idea is to still create ordinary bitcoin transactions, but exchange and keep track of them on a bilateral basis. Only in case of a dispute with the counterparty would these transactions be broadcast to the network for ‘settlement’, i.e. inclusion in the blockchain. This is similar to how contracts are lived in the commercial world: parties enter into agreements bilaterally and only go to court if a disagreement cannot be resolved amicably.

A possible route for a cryptocurrency payment via a number of off-chain peer-to-peer payment channels. Source: lightning.engineering

Technologically, Lightning make use of Bitcoin’s built-in scripting language, which allows for rudimentary smart contract capabilities. Opening a payment channel requires an initial on-chain funding transaction, which commits funds to the channel and thereby sets its ‘capacity’. After this, all transactions between the two parties that do not exceed the channel’s capacity can be conducted off-chain. Only when the channel gets closed, either by mutual agreement or unilaterally, is another on-chain transaction required to settle the balances that the parties maintained offline. Importantly, two parties that have not established a direct payment channel between them can transact with each other by routing the payment through a number of other Lightning nodes that are connected with each other.

Since Lightning transactions are off-chain, they are both fast and cheap. Transactions are routed through the network almost instantaneously, allowing for a throughput of millions of transactions per second. Because there is no need for miners to create a proof-of-work, transaction costs are minimal. On the other hand, payment channels need to be pre-funded, which results in a certain cost of capital. In practice, this can be mitigated by Lightning node operators acting as payment processing hubs connected to thousands of users. It should however be noted that this is a form of centralisation, which could lead to transactions no longer being fully censorship-resistant. Moreover, it is expected that it will take some time until the network has become sufficiently dense and with sufficiently high channel capacities that it will catch on as an alternative to on-chain transactions.

User preferences for speed vs cost vs decentralisation of transactions will ultimately be reflected by transaction fees, but in principle second layer solutions have the potential to provide blockchains with transaction throughputs high enough to compete with fiat payment systems.

https://worldpaymentsreport.com/wp-content/uploads/sites/5/2018/10/World-Payments-Report-WPR18-2018.pdf Note that the often quoted 24000 tps that Visa processes is what they claim their network’s capacity is, rather than their actual transaction throughput, which stands at ca. 1700 tps. See https://usa.visa.com/run-your-business/small-business-tools/retail.html https://lightning.network/lightning-network-paper.pdf. Lightning client software is being developed by Lightning Labs (LND), ACINQ (Eclair) and Blockstream (c-lightning) amongst others. All clients are still heavily under development, although LND can already run in a beta version on Bitcoin’s mainnet. The clients rely on the Basis of Lightning Technology (BOLT) standard, which makes them interoperable: https://github.com/lightningnetwork/lightning-rfc For example, the second layer solution being built for Ethereum is the Raiden Network: https://raiden.network

Disclaimer

This article is for informational purposes only and is not, nor should it be construed as, investment advice. This article is not an offer, nor the solicitation of an offer, or a recommendation to buy or sell any assets or financial instruments. Readers should not rely on any information or opinions presented in this article and should always do their own due diligence and seek advice from their own financial advisor. The opinions expressed in this article are those of the author.