Scalable Payment Verification Network - What will happen to general user nodes when Bitcoin transaction data becomes very large in the future?

Scalable Payment Verification Network - What will happen to general user nodes when Bitcoin transaction data becomes very large in the future?

Chapter 0 Introduction

Now if you want to install a Bitcoin full node wallet and synchronize it to the latest block, a total of 85.6G of hard disk space is required. For ordinary personal computers, if you are not a Bitcoin enthusiast, it is difficult to be willing to waste hard disk space like this. But this data will continue to grow, and it will accelerate.

Just because it takes up too much hard disk space, if no changes are made, the complete nodes of the Bitcoin network will face the crisis of decreasing number, but what we hope to see is more and more, that is, we hope to see the Bitcoin network nodes expand rather than shrink.

Bitcoin developer Tom Harding gave a speech at the Satoshi Nakamoto Roundtable, in which he proposed a technical solution for the expansion of the Bitcoin network. I translated his speech PPT into Chinese and wrote a popular science interpretation of the speech.

Chapter 1 What is Tom Harding's speech "Scalable Payment Verification Network" about?

This speech talks about how to expand the capacity of the Bitcoin network, which can be understood as adding more network nodes, not how to achieve block expansion.

Because the amount of full node data in the future will be too large and the total TXID will grow too fast, in order to achieve node decentralization, a large number of light nodes must be used. Light nodes refer to wallets that only store highly pruned blockchains as mentioned in the white paper written by Satoshi Nakamoto. It can be roughly understood that light node wallets only store blocks related to the owner's own transactions, and all irrelevant blocks are cut off. However, this type of light node will face security challenges.

This speech mainly talks about how to deploy light nodes and solve the security and scalability of light nodes.

Fraud Proofs can be used as a security strategy for Simple Payment Verification (SPV).

Simple Payment Verification (SPV) mainly solves a problem that lightweight clients cannot verify a complete block. Therefore, if the Bitcoin network is ultimately composed of a small number of complete nodes and mining nodes, plus a large number of SPV nodes, how to prevent these small number of complete nodes from initiating hard forks and double spending becomes the key to whether the SPV nodes are safe. This is one of the key points of this speech.

SPV wallets have three ways to confirm whether a transaction is trustworthy. First, if the transaction input is found to lack an input greater than 0, it will be directly judged as a transaction fraud; second, establish a spending warning. If the transaction does not contain a warning, the probability of trust can be increased; third, improve the local transaction verification rules. (Note: Of the three methods here, I can only understand the first one, and I don’t understand the latter two. I hope community experts will continue to do popular science)

Another way to improve the security of SPV wallets is to optimize the structure of the entire network. One of the methods is to establish "split filters", node loops, Bloom filters, etc. between nodes. (Note: But I don't understand what the specific meaning is. I hope community experts will continue to do popular science)

Another way to improve the security of SPV nodes is to enhance the functions of SPV nodes. This includes adding functions such as "prover" and "prover finder". (Note: But I don't understand what these provers specifically mean. I hope community experts will continue to do popular science)

The Bitcoin network will eventually become a network consisting of a small number of complete nodes and mining nodes, a large number of SPV nodes, some transaction relay stations, and various other wallets. This network structure is very conducive to expansion.

Chapter 2 Why the content of this speech deserves everyone's attention - Let me tell you a story first

A few years ago, I worked as a network administrator at Shougang, managing a metropolitan area network consisting of three LANs and a total of more than 300 computers. Once, there was a large-scale network abnormality. One of the LANs could connect to the Internet, but it was impossible to open the web page or log in to QQ. I searched for that accident for almost a week. In the end, I divided the entire LAN into sections through switches, cut off a batch of computers at a time, and checked the networking of other computers. Finally, I found that the two L ports of a switch were connected by the same network cable. Because the network cable was very long and rolled up many times, the person who connected the network cable made a mistake and the two ends of the same network cable were treated as two wires. After I connected the cable, the entire network returned to normal. Later, I went to check the information and found that if the switch was connected to two L ports by a network cable, it would cause a broadcast storm and directly launch a DDOS attack on the entire LAN.

In the following years, as I accumulated more knowledge about the Internet, I became increasingly aware that the accumulation of information would cause qualitative changes in the Internet.

Chapter 3 Why this speech deserves your attention: Problems with the current Bitcoin system

I think the current Bitcoin system has several major problems: limited transaction volume (limited by 1M blocks); very slow protocol evolution and inefficient development; and no large-scale broadcast storms. I believe everyone understands the first two problems, but the last one is actually very vague and easily overlooked.

Why do I feel that large-scale broadcast storms are a challenge to Bitcoin?

Because Bitcoin has experienced a large-scale stress test assisted by a scalability attack, which occurred at the end of 2015. In that attack, because of the assistance of the scalability vulnerability, I sent and received several bitcoins, but it took more than ten days to complete. During that period, almost all Bitcoin wallets crashed. The Bitcoin network was not usable at all. The crash here means that the Bitcoin network was completely unable to process transactions normally at that time. No matter how much handling fee you paid, there was a high probability that it would not be confirmed. Also, the crash does not mean that it actually exploded and died.

Later, I carefully analyzed the scalability vulnerability and found that the reason for the wallet crash was the broadcast storm caused by the stress test. The scalability vulnerability only magnified the magnitude of the broadcast storm. To put it simply, the Bitcoin network can currently process up to 7 transactions per second, and an average of only 3 transactions. If 300 transactions per second are suddenly initiated on the network, the wallet nodes on the network may be on the verge of collapse, and no matter how much handling fees you pay, it will be useless.

During the stress test under the scalability attack, I searched for knowledge about large-scale network design, and I am convinced that the current Bitcoin network is indeed difficult to avoid collapse under a super-large-scale broadcast storm, although my knowledge system cannot strictly prove this.

This is why, after learning about the design of large networks, I firmly stood on the side of large blocks, because the Bitcoin network with small blocks would be vulnerable to broadcast storms.

Dealing with broadcast storms does not mean that we just need to increase the transaction capacity of the block, but that the current Bitcoin peer-to-peer network is a relatively "simple" network. I say "simple" because I can't find the right word to describe it. What I mean is that the current Bitcoin network nodes are all composed of home computers and server computers at the highest. Server computers are nodes built on cloud service providers such as Alibaba Cloud and Amazon Cloud. I believe that nodes with such performance cannot handle super-large-scale broadcast storms.

For example, the current Internet can handle super-large information broadcasts. The nodes of the Internet include a large number of home computers, various servers, super data centers, and a large number of switches and routers. Switches and routers, which are professional information transfer and transmission machines, are the key equipment for handling information broadcast storms. (Note: The picture in the front of this article is Google's super data center)

The current Bitcoin network has no equipment similar to today's switches and routers. Sending transactions, receiving transactions, broadcasting blocks, and receiving blocks are all completely dependent on home computers and server computers. This network structure cannot grow into a large-scale network structure.

When the Bitcoin network faces a super-large transaction broadcast, I am afraid that the current Bitcoin network structure cannot cope with it. The ideal pure decentralization, where everyone is an equal node, is a dead end. Unless our future is 3 transactions per second.

Pure peer-to-peer networks cannot be expanded on a large scale. For example, we currently have about 6,000 nodes, serving about a million users worldwide. If the number increases to one million nodes, or even ten million nodes, I think this peer-to-peer network will fail.

The Bitcoin network structure must have super nodes in the future that can process massive amounts of data. It can store all the data. This is not just about storing blockchain data, it also needs to be able to handle a large amount of data access queries for blockchain browsers and SPV wallets.

The Bitcoin network structure must introduce devices like switches and routers on the Internet in the future. Simply using home computers and servers to complete broadcast transactions cannot cope with broadcast storms. Similar Bitcoin switches and routers are specifically used to send and transfer transactions, and they do not need to store block data. Just like mining machines are responsible for hash calculations, Bitcoin switches and routers only need to send and transfer transactions. But I'm sorry, based on my current knowledge structure, I can't clearly describe the specific work of such routers and switches.

Chapter 4 Why the content of this speech is worth everyone's attention - This speech provides a direction for the development of the Bitcoin network

Chapter 3 tells me that the current network structure of Bitcoin is very fragile. The first reason for this fragility is that it cannot withstand large-scale broadcast storms. The second reason is that the structure itself cannot be expanded, that is, the number of nodes cannot be increased on a large scale, otherwise the network will have problems.

This time, Tom's speech is directly about how to strengthen the robustness of the Bitcoin network and how to expand the scale of Bitcoin network nodes. This is closely related to every Bitcoin enthusiast.

The price of Bitcoin is also closely related to its network structure. The fact that the current network structure cannot expand network nodes on a large scale essentially means that we cannot have enough users to run nodes, even if there are already many users. This network node does not only refer to complete nodes, even the number of light wallet nodes cannot be expanded on a large scale. For example, we now have more than 6,000 complete nodes, there may be millions of mobile phones and other terminals equipped with light wallet nodes, and there may be only tens of thousands of light wallets online at the same time. If the number of online light wallets increases to tens of millions, the Bitcoin network may not work properly.

If Bitcoin wants to achieve a price increase of hundreds or even a thousand times, the current Bitcoin network structure must be improved, otherwise it is just a dream.

Chapter 5 Let's focus on this speech, shall we?

I have translated the PPT of this speech into Chinese and posted it here for everyone to take a look.

The English version of the PPT pdf and the pptx translated by me can be downloaded from the link below.

Link: https://pan.baidu.com/s/1geKstiV Password: 998e

(Thanks to @币看-老刘 and @vatten for checking the translation)


<<:  Huobi Zhu Jiawei: The combination of blockchain and big data will bring four changes

>>:  Polish government and community debate Bitcoin regulations

Recommend

Hot mining machine market news: the 4th week of April

“If you want Bitcoin, you have to learn how to mi...

The PoS gold rush era has begun. Who will be the next Bitmain?

background Bitcoin, the first generation cryptocu...

What kind of woman is unlucky?

What kind of woman is unlucky for her husband? In...

Judging from a man's appearance, when will he be successful?

Judging from a man's appearance, when will he...

What does an apple-shaped chin mean?

In physiognomy, there are many kinds of chin shap...

How to read palmistry and marriage

A person’s marital status can be seen from palmis...

Marriage line shows whether you will marry early or late

Generally, if a woman gets married at the age of ...

Where can a man have a mole on his face to be successful?

Whether a man is ambitious or not can be seen fro...

Recognize talents by appearance

Physiognomy can be used in social situations to m...

Fortune telling by face reading: What kind of man is worth marrying?

Click here to enter more marriage predictions A m...

What kind of man is loyal?

How can you tell a man’s true nature and goodness...

The face of a man who always likes to give others nicknames

There is almost no one who doesn't want to ha...

Moles on the inner left thigh of a woman

Illustration of moles on the inner left thigh of ...