# The speed of Bitcoin (aka the scaling issue)

Bitcoin is the best-known blockchain implementation, and has been highly successful. Due to its success, its adoption rate has increased, but not its speed (transaction rate). The scaling issue deals with several techniques that could improve Bitcoin’s speed. This could make Bitcoin more usable as a means of payment, instead of just a store of value.

### The issue

- Each
**block**contains, on average, around 2.000**transactions**and is 1 MB in size. - A new
**block**comes available roughly every ten minutes, this is a pre-set interval, regulated by**mining difficulty**. - So, theoretically, the network will be able to handle roughly
`(2.000/10)/60 =`

**3,2**possible transactions per second (TPS). - Note: VISA does around
**2.000/second**. 1

To summarize; seeing as the 10 minute block-interval is fundamental to Bitcoin, the network will not get faster by growing: Bitcoin’s blockchain is throttled by a Proof-of-Work that continuously scales to meet that ten minute timeframe and the size of each block will remain 1MB. This results in a steady TPS rate of around 3,2.

### Possible solutions

#### 1: Doubling the block size (“2x”)

##### Gain: 2x speed

**block**size to 2 MB (the ‘2x’ part of

*SegWit2x*) would – in turn – double the

**transaction**capacity. This is a quick fix though: at around 6,4 TPS, Bitcoin would still be very, very slow when compared to other monetary systems. Furthermore, doubling the size of blocks would make the blockchain grow exponentially larger, making it too large to handle in a few years time.

#### 2: Segregated witness (“SegWit”)

##### Gain: 2.6x speed

- Each
**block**on a blockchain contains transactions and their**signatures**(hashes). - These signatures are only needed for verification, but account for roughly
**60%**of a**block**‘s size. This means the full blockchain copy carries around 60% ‘dead weight’.

- By
**separating**(’segregating’) the**signatures**(’witnesses’) and putting them behind the**block**, in an optional ‘extended block’, more room is freed inside the**block**,**increasing its capacity by ~250%**. The extended block will then be requested by a node only when needed (on validation), but is otherwise ignored. - As there is more room for transactions inside the block, TPS increases to around 8,3.
- SegWit also offers a solution for the ‘Transaction Malleability’ bug, which is considered a prerequisite for the Lightning Network (see below). Read Bitcoin developer Jimmy Song’s take on it here.

#### 2a: Schnorr signatures

##### Gain: 2x speed, 5.2x when combined with SegWit

Schnorr, named after its inventor Claus-Peter Schnorr, is a signature algorithm: the series of mathematical rules that link the private key, public key and signature together. Many cryptographers consider Schnorr signatures the best in the field. Bitcoin now (feb 2018) uses the ECDSA signature algorithm, which **does not support multisig** (having one signature represent several signatures).

- Many Bitcoin
**transactions**include multiple**inputs**, referring to the addresses bitcoins are sent from. In this case, a 1 BTC**transaction**consists of 3 ‘parts’. - Each of these
**inputs**require the**signature**of the sender, and all these**signatures**are included in the**transaction**.

- With Schnorr signatures, all
**inputs**combined require**only one****signature**to represent all the different**signatures**. - This means
**transactions**are smaller, freeing up**up to 40% more room**in the block.

#### 3: Segregated witness + double block size: “SegWit2x”

##### Gain: 5.2x speed

**block**size (1) and Segregated Witness (2) creates a hybrid, also known as

*SegWit2x*. This way, a

**block**can both take

**~250% more**

**transactions**and is

**twice the size**, boiling down to a

**~500% transaction increase**per block.

So, theoretically, the network will then be able to handle roughly `((2.000 x 5)/10)/60 = `

**16,6 TPS**; a 5.2x speed increase. Inherently, SegWit2x suffers from the same growth-related problem as doubling the block size (1).

#### 4: The Lightning Network (LN)

##### Gain: ∞ (extreme)

Perhaps the best, and no doubt the fastest, solution to the Bitcoin scaling problem is The Lightning Network, which theoretically delivers **millions to billions of transactions per second**. To see how it works, check out our separate explanation of The Lightning Network.

### Overview

### Notes

- VISA can even burst to a maximum of around 56.000 tps (transactions/second), though they rarely use more than one third of that capacity. The SWIFT system, used by banks, claims it can do 200 tps. Though it should be noted that just around 10% of these ’messages’ are actual monetary transactions, so this comes down to a more plausible 20 tps.

### Sources / Further reading

The power of Schnorr: The Signature Algorithm to Increase Bitcoin’s Scale and Privacy