What is the debate between soft expansion and hard expansion all about?

What is the debate between soft expansion and hard expansion all about?

Preface

This article was written after reading "What is the debate about the concept of small blocks vs. large blocks?" The original /r/btc post raised 13 points, and the author quickly added 8 points. The article said "Please continue to add". I think it is necessary to add some points and sort them out so that everyone can know more clearly what the "soft" and "hard" are arguing about?

Part I: The battle of concepts

First of all, the basic concept is controversial. I changed the two sides in the title. The soft expansion side only believes that we should not rush to hard fork, not to keep small blocks. When the time is ripe for consensus in the future, we can expand to larger blocks. In addition, the soft expansion side does not oppose expansion, but advocates indirect expansion in the form of safe soft forks. Therefore, it is better to replace "small blocks" with "soft expansion" and "large blocks" with "hard expansion".

1.1 The Concept of Consensus

[/r/btc user 1] Bitcoin transaction fees do not require consensus to determine. VS All economic activities are achieved by consensus.

[/r/btc user 5] Because soft forks do not require consensus, soft forks are better. VS hard forks require consensus, so hard forks are better.

[/r/btc user 6] Do not allow controversial consensus changes. VS The free market leads to consensus changes.

[Comment] Soft expansion supporters have never believed that soft forks do not require consensus, but have given a high consensus activation threshold of up to 95%. On the contrary, hard expansionists only talk about the need for consensus, but actually support XT and Classic, which are hastily activated at 75%, and Unlimited, which has no threshold and can theoretically be activated at only 50%. With such a low activation threshold, how can we talk about supporting consensus? The change of consensus requires a collective judgment made by more and more people after understanding the essence of currency technology under civilized debate in a large number of communities. The consensus of the community is reflected in block voting through computing power. No one opposes and cannot oppose the change of consensus, but only opposes those versions that are hastily activated before the consensus has fully changed and bring the risk of currency circle splitting.

1.2 The debate between soft fork and hard fork

[/r/btc user 11] Soft forks only require consensus among developers. VS Soft forks have a greater impact on the economy, so consensus is needed.

【cndx Maya 1】Soft fork is compatible with old nodes and will not produce forked blockchains. VS Hard fork can make any changes in code concisely, and some old nodes should be abandoned if they are not upgraded.

[Comment] The proposal of a soft fork only requires consensus from developers, but the activation of a soft fork requires consensus from the community and computing power, and SW requires 95% support from blocks to activate. In addition, it is said that it has an "economic impact", but I don't know how it will have an economic impact. Before and after the soft fork, because of compatibility, the coin production speed has not changed at all. In addition, a BF fusion synthetic fork solution that combines soft forks and hard forks has been proposed recently. Synthetic forks are neither soft forks nor hard forks, but a fusion of the two, divided into two stages. See the figure below for details.

Part II: Conflict of Interests

“All the people in the world are seeking profit.” Behind the debate between soft and hard expansion is more about the competition for power and interests.

2.1 Dispute over Transaction Fees

[/r/btc user 1] Bitcoin transaction fees do not require consensus to determine. VS All economic activities are achieved by consensus.

[/r/btc user 4] Only stingy people ask for lower transaction fees. VS As many people as possible should be allowed to use Bitcoin, so the transaction fees need to be lower.

【tan90d Lightning 4】Bitcoin is a value-preserving product similar to gold. The transaction cost of gold is high, so the transaction fee of Bitcoin can also be high. VS Bitcoin is still a niche user product. Only when more users use it can it have the opportunity to become a value-preserving product like gold.

【tan90d Lightning 7】Large blocks will lead to zero transaction fees, which will result in no income for miners in the future and a decrease in computing power. VS The free market will not lead to zero transaction fees. The market will find a reasonable transaction fee so that users and miners can achieve mutual benefit and win-win results.

【cndx Maya 2】The soft-expanded Lightning Network allows full nodes to become Lightning nodes at the same time, and can have Lightning fee income, and motivate more people to run full nodes through benefits. VS All fees must belong to miners, full nodes cannot have income, and only rely on free dedication to run full nodes. With the Lightning Network, it is possible to use Lightning instead of the main chain.

[Comment] In fact, the netizens of /r/btc don’t quite understand that the main chain transaction fee of soft expansion is truly determined by consensus of economic activities. Everyone pays the fee together, and whoever pays the highest will be given priority in packaging and confirmation. When everyone pays a higher fee, the fee will naturally increase. With the increase in transaction fees, the demand for the main chain of some unimportant transactions is reduced to achieve dynamic balance. The current practice has proved that it is possible. There is no increasingly large mempool, and it has successfully defended against several large-scale dust transaction attacks. The blockchain main chain has always been full but not blocked. As long as the fee is high enough, it can be confirmed quickly. See "Bitcoin Fees, How to Make Bitcoin Quickly Confirmed to the Account?"

On the contrary, it is the hard expansion that truly ignores the supply and demand regulation of the economy, and artificially reduces the transaction fee through hard expansion. As the transaction volume increases, the block size increases. Anyway, whether the transaction fee is high or low, it will be confirmed in time, so users will tend to pay lower and lower transaction fees. Therefore, if the 2MB is full, the transaction fee will double compared to when the 1MB is full. Obviously, the latter will get more transaction fee income, which is more conducive to the early realization of the future planned in Satoshi Nakamoto's creation paper, where miners rely mainly on transaction fees.

There is a serious misunderstanding among supporters of hard expansion: they believe that high fees will hinder more newcomers from using Bitcoin. In fact, supporters of soft expansion do not only increase fees, but also assist with lightning network technology, side chain technology, and the soft payment technology I mentioned. If newcomers use the main chain to store large amounts of coins and make large transactions, they will not care too much about the higher fees because of their small proportion. For example, if you store or send and receive 100 BTC, you will not care about the 0.001 BTC fee. For small payments, users can use lightning networks, side chains or soft payments. There is no need to pile all trivial transactions on the Bitcoin main chain. It is necessary to stratify users' transactions through fees, and only important transactions are on the main chain to avoid the bloat of the Bitcoin main chain and maintain its decentralization.

In addition, some supporters of hard expansion are worried that the lightning network is too successful and everyone will use lightning instead of the Bitcoin main chain. In fact, this is a bit too worrying. The lightning network is just a payment channel. It cannot be used to store wealth, and it will not have its own tokens. More importantly, it needs to settle and close the lightning channel on the main chain regularly. If the main chain transaction is really less than 1MB, then the settlement cycle of the lightning network can be shortened. If it is not settled for a certain period of time, the settlement transaction fee will be increased, and even the main chain will no longer settle it. The control of the lightning network is in the hands of the main chain miners. Don't worry, if the lightning network prospers, a large number of lightning transactions with high fees will be opened and settled, which will be conducive to the rapid increase of the main chain fee.

2.2 Dispute over Miners’ Rights

[/r/btc netizen 7] Minority developers and miners have veto power. VS majority decision.

[/r/btc netizen 10] Miners have no right to control consensus changes. VS Miners are representatives of economic interests and they can vote.

[Comment] These two comments from this netizen seem a bit contradictory. In fact, the consensus is to give a small number of miners the right to maintain the status quo and veto changes. For example, under the soft fork of the BIP9 rule, as long as the miners have more than 5% of the computing power, disagree with the new plan, and are willing to maintain the status quo, then a consensus should be formed to continue to maintain the status quo. The biggest consensus is to maintain the status quo. Any change that wants to change the status quo requires sufficient consensus and recognition. It is not that the supporters of soft expansion do not allow miners to vote, but to give miners a greater right to veto new changes, thereby limiting the right to make new changes by controlling most miners, which is conducive to the stability of the currency circle. It should be known that the interests of the entire currency circle are not necessarily completely consistent with the interests of miners, and miners cannot have too much power to make new changes.

Some supporters of hard expansion believe that the majority can make the decision. The majority they are talking about is not 95%, but 75% or even 50%. This means that they will ignore the opposition of 1/4 or even half of the people and force a hard fork, which gives miners too much power. They think that as long as they have a majority, it is enough, but the majority is not consensus. Bitcoin should be based on consensus decision-making rather than majority. The consensus needs to be at least 90%, preferably more than 95%, otherwise there is a greater risk of splitting.

Part 3: The battle for security

There is a lot of controversy on the security issues of both soft expansion and hard expansion, and both claim that they can be more secure. See the figure below for specific compatibility.

3.1 Node Security Contest

[/r/btc user 2] The blocks are already too big, and the cost of running a full node is too high. VS costs are not constant, and the transaction fees are already too high.

[/r/btc user 3] Everyone should be able to run a full node. VS Only a cheapskate would require that only cheap hardware be used to run a full node.

【cndx Maya 2】The soft-expanded Lightning Network allows full nodes to become Lightning nodes at the same time, and can have Lightning fee income, and motivate more people to run full nodes through benefits. VS All fees must belong to miners, full nodes cannot have income, and only rely on free dedication to run full nodes. With the Lightning Network, it is possible to use Lightning instead of the main chain.

【cndx Maya 3】Soft fork compatibility does not require mandatory node upgrades, while hard forks will lose a large number of nodes. VS Only a small number of high-performance nodes provided by large companies are sufficient.

【Comment】At the time of writing, the total number of Bitcoin full nodes is 5365, and there are 1453 nodes with the isolated verification version /Satoshi:0.13.1/, accounting for as high as 27%. Because it is a soft fork, it is compatible with the remaining 73% of nodes and can be upgraded without upgrading. The hard fork BU version node ratio is less than 6%. The hard fork will abandon all old nodes, which means that if BU is forcibly activated, more than 90% of the nodes may need to be forcibly upgraded. Those that continue to run without upgrading may enter the forked chain and split.

Faced with the possibility of super-large blocks, the hard expansion faction believes that the speed of hardware improvement will be faster than the speed of transaction volume increase, and there will be no problem in processing super-large blocks with future hardware. On the other hand, they believe that there is no need for so many nodes, as long as there are large currency companies to run full nodes, ordinary individuals do not need to run full nodes.

However, the number of Bitcoin users may explode and increase rapidly after reaching a point where the network effect is activated. This will lead to a rapid increase in transaction processing capacity, which will far exceed the speed of hardware improvement. With hardware expansion, it will be possible to generate super-large blocks. With the Lightning Network or side chains, the main chain blocks can continue to be small, and the threshold for running full nodes will not be increased. The importance of ordinary individuals running full nodes lies in the decentralization of nodes. To exaggerate, if the high operating threshold of full nodes is raised, only 100 currency companies in the world can use their high-performance servers to run 100 full nodes, and others can only use light wallets, cropping mode wallets, or mobile wallets, and no longer store all TB-level data. Then it is possible that these 100 nodes are broken one by one by hacker organizations and all are controlled. Or these companies secretly set up a secret industry association. Then hackers or associations can control all nodes and become the center of Bitcoin. This kind of node centralization is many times more terrible than computing power centralization. In fact, a 51-computing-power attack can do very little bad things, and it cannot be done secretly. However, if all nodes are controlled, almost any bad thing can be done secretly, thus seriously threatening the decentralized nature of Bitcoin.

3.2 The dispute over the risk of division

[/r/btc user 8] Split is dangerous. VS Split is the result of market voting.

[/r/btc user 9] A controversial hard fork will lead to a split. VS The risk of a hard fork is controllable/designable.

【tan90d Lightning 8】Hard forks damage the principle of blockchain immutability. VS Hard forks are just a way to upgrade the protocol and are neutral. Soft forks can also change the blockchain and are no better than hard forks in this regard.

[Comment] Hard fork is neutral, but split is indeed derogatory. Some hard expanders even support split. It is recommended to read "8.5 Bite Sauce - Maintaining the unity of the currency circle and rejecting the invasion of split speech". To understand the concept, those small blockchain forks that disappear quickly and small fork coins that can only become copycat coins are not splits in the currency circle, and there is nothing to be afraid of. We call on everyone in the currency circle to unite and resist those split coins that have high internal support in the currency circle and can survive for a long time, and each claims to be the authentic Bitcoin. For example, ETC and ETH both claim to be splits of Ethereum.

We do not support hard forks, only hard forks that may cause a split in the cryptocurrency community. If there is a system bug that needs to be fixed by a hard fork, and there is almost 100% consensus, then there is no need to worry too much about a split, so of course we support this kind of hard fork. However, the current expansion problem is not a bug, it is not very urgent, and hard forks are not the only way to improve processing capacity, so why do we have to take the risk of a split and rush to implement a hard fork? We should try to avoid splits as much as possible. If we have to have a hard fork, we must have at least 90% consensus, but the activation threshold of the existing hard fork versions is too low, and the risk of splits is too high.

The immutability of blockchain lies mainly in the immutability of normal historical data. If a bug occurs and some abnormal data is generated, it can of course be repaired by soft fork or hard fork. The immutability of blockchain does not refer to the immutability of block structure or packaging rules, and transaction mode. As long as the data content does not change. Soft fork can achieve compatibility and will not change the data. If a hard fork causes a chain fork, it is equivalent to having an additional parallel data chain, which will cause replay attacks, etc., and the data will become less reliable.

3.3 Code Development Controversy

【tan90d Lightning 1】The soft fork code is too complicated and has too many potential vulnerabilities. VS the hard fork code is concise.

【tan90d Lightning 5】The Core development team is awesome, we should trust them. VS The Core development team is hurting Bitcoin, it is the Core development team that is causing the community to split, we need to develop decentralization.
【tan90d Lightning 2】The soft fork code is too complicated, which will make it more difficult for subsequent developers to understand and will lead to developer centralization. VS The hard fork code is concise, the technical documentation is clearer, and it is easier for subsequent developers to get started.

【Comment】Since the birth of Bitcoin, the development of the core code has always been relatively centralized, but it is becoming more and more decentralized. At the beginning, it was almost just Satoshi Nakamoto. Later, after Satoshi Nakamoto disappeared, it was Core led by Gavin. Then after the Shihuait incident, Gavin also retired. Now Core is relatively decentralized, and there is no core figure to lead Core. As for BS company, it only hired some Core developers. There are more Core developers who are not in BS company. BS only has a certain influence on Core, but it is definitely not like the hard expanders say that it can control Core. No one or company can control Core. Core is a Bitcoin development community. Core development is very powerful because those who really understand the underlying Bitcoin and are very good at development belong to this open development community.

As for the soft fork code being too complicated, you should know that it is not easy to implement a soft fork and achieve compatibility with previous nodes. It is normal for the code to be complicated. There is no need to worry about the potential vulnerabilities. Once the vulnerabilities are found, they can be repaired in time. It has been running on the test network for a long time and has been tested a lot. In addition, even after activating the isolated verification soft fork, transactions can continue to use the original transaction signature mode, and the transition can be gradual, so the losses in the event of problems will be limited. With enough time for learning, more and more people will gradually understand the code and join the development and maintenance.

The hard fork solution is concise because it only modifies the core parameters and does not do enough compatibility testing, because all previous versions of nodes will be eliminated after activation. In addition, the potential risk of increasing the block limit is also very large, because this is a direct modification of the core parameters designed by Satoshi Nakamoto, and the program is a related whole. Modifying only this parameter without changing other places may cause problems in other places.

Part 4: The struggle for development

4.1 Transaction Processing Capabilities

[/r/btc user 12] Bitcoin does not need to be expanded, and can be achieved using off-chain solutions, such as the Lightning Network. VS Bitcoin can be expanded on-chain, at least the potential of software and hardware technology should be utilized as much as possible.
[/r/btc user 13] Using a hard fork to increase the block limit means that the value of 21 million bitcoins may also be changed. VS Without a hard fork, the development and economy of Bitcoin will stagnate.
【tan90d Lightning 3】The future of Bitcoin is a settlement network, which does not require many on-chain transactions. VS The future of Bitcoin is a peer-to-peer electronic cash system. Currency is a consensus. Only when enough people use on-chain transactions can Bitcoin become a widely used currency.

[Comment] This netizen mentioned the "potential of software and hardware". Now the potential of hardware may have reached its limit. If the block size is further increased, it is likely to cause a reduction in the number of full nodes. The potential of software is SW isolation verification. Under the current 1MB, without hard expansion, it can achieve a soft expansion of approximately 1.7MB by adjusting and optimizing the structure. So this netizen supports the SW isolation verification soft fork, right?

Don't discredit soft expanders. The increase in the block limit and the change in 21 million bitcoins are two completely different things. Only those who don't understand the currency think that the former means the latter. It's just that hard forks can theoretically modify the 21 million limit, while soft forks cannot modify it because they need to be compatible. If hard forks are used easily and frequently in the future, it is difficult to predict the various consequences.

Whether or not there is a hard fork has nothing to do with "whether the development of Bitcoin and the economy will stagnate". Even if there is no hard fork, there will still be ordinary fully compatible upgrades and partially compatible soft fork upgrades. It does not mean that Bitcoin development cannot be carried out without a hard fork. In addition, the increase in fan loyalty and applications has little to do with whether there is a hard fork. On the contrary, if a hard fork causes a split, it will be harmful to the economic ecology of Bitcoin.

Bitcoin is a peer-to-peer electronic cash system, a system that is divided into the Bitcoin main chain + side chain + lightning. Users' daily scattered transactions can be placed on the side chain or traded through the lightning network. Only transactions that store wealth, large transactions, and side chain settlements and lightning settlements will be conducted on the Bitcoin main chain. Only with this hierarchical structure of the system can the key "peer-to-peer" limitation mentioned above be realized. Otherwise, if all transactions are piled up on the main chain, it will cause the main chain to be bloated, the operating threshold is high, and the nodes are centralized, making it impossible to achieve "peer-to-peer".

4.2 The battle for technological progress and development

【tan90d Lightning 2】The soft fork code is too complicated, which will make it more difficult for subsequent developers to understand and will lead to developer centralization. VS The hard fork code is concise, the technical documentation is clearer, and it is easier for subsequent developers to get started.

【tan90d Lightning 6】Bitcoin should be anonymous in the future. VS Bitcoin should keep the main chain as a public ledger in the future.

【cndx Maya 4】Some of Bitcoin's future side chains can be anonymous side chains, can be smart contract side chains, and can absorb Dogecoin as a side chain for charity rewards. Each side chain has its own application scenario. The main chain only needs to make a good side chain interface. VS All new functions must be added to the main chain, and multiple hard forks can even be risked for splitting in order to increase improvements.

[Comment] There is no absolute long-term technological leadership. There must be subsequent development and introduction of future technologies. In fact, it is not enough to rely on clear documents alone. There must be enough benefits to motivate developers to contribute to the core code. In fact, there is no shortage of programmers in the IT industry. But can they directly gain benefits by researching, developing and maintaining the Bitcoin code? It is difficult under the existing framework. Miners could have been asked to give more rewards to developers, but the donations were too little to support themselves, so some developers had to jointly start a business and set up a coin company to obtain venture capital. However, venture capital is not charity. Coin companies need to have a profit model and a return. So a win-win structure of "main chain + lightning + side chain" was formulated. If lightning can become a larger lightning node, there will be some lightning fee income. The side chain is the focus of the future, and it has begun to lay out patents, which means that it can conceive and develop some side chains for specific fields in the future. This route is beneficial to the currency circle. The lightning network can speed up the confirmation of Bitcoin transactions in seconds, while the side chain can expand the specific application areas of Bitcoin and easily introduce new technologies. If their roadmap is to develop some competing non-sidechain coins, or to create some pure blockchain applications, that would be a loss for our cryptocurrency community.

As for Lightning's statement: "Bitcoin should be anonymous in the future." That is only a suggestion for the future development of the currency by some people, and not supported by all soft expanders. The future of the entire development is to let a hundred flowers bloom, with various sidechain coins, just like various websites and apps on the Internet, and the Bitcoin main chain as the underlying Internet. Ordinary developers do not need to fully understand all the knowledge of Bitcoin, they only need to use the Bitcoin sidechain interface to develop sidechain coins. In addition, various existing excellent competing coins can also become Bitcoin's sidechain coins through the sidechain interface. If you do not actively join Bitcoin, it is open source anyway, so you can force a fork. Then the sidechain technology can almost unify the entire cryptocurrency circle.

As for the future technology development route of hard expansion, we can only watch more and more competing coins and more and more niche areas being occupied. It is not easy to absorb new technologies, but we have to take great risks of splitting to upgrade hard forks every time. It is difficult to ensure that there will be no split in the long term while keeping the technology advanced. However, side chain technology can make any new technology a part of Bitcoin technology quickly and almost risk-free in the form of side chains.

Part 5: Summary

We should look at the problem comprehensively and avoid blindly touching the elephant. The hard expansion problem is not just a superficial problem of whether the upper limit of miners is increased when packaging. There are many deep problems involved, including but not limited to: whether it will cause the split of the currency circle, whether it will increase the node threshold and centralization, whether it is convenient for future code development and technical expansion, and whether the distribution of benefits of handling fees is reasonable. Please continue to add. If you have any questions, please leave a message or follow my WeChat public account "Bite Sauce" for more exchanges, thank you.

<<:  UNICEF invests $100,000 in blockchain startup for the first time, and does not rule out integrating blockchain technology into its own operations in the future

>>:  Prospects for the application of blockchain technology in the field of electronic invoices

Recommend

What kind of face makes a man have a good fate

In life, we can infer a person's fortune from...

What does a mole on a woman’s chest mean?

Moles sometimes seem to grow randomly but actuall...

What are the characteristics of a man's nose that makes him lucky?

A man's nose is also very important. Of cours...

Chinese hackers and Bitcoin ransomware

Comment: Although the attacks on US companies hav...

A wealthy face does not mean a wealthy life

A wealthy face does not mean a wealthy life We of...

Analysis of the face of men with droopy eyes and bad luck with children

What does a man with droopy eyes look like? In li...

Analysis of the three characteristics of women who are prone to short life

It is common to tell whether a person will live a ...

A quick one-minute look at the Aptos token economics

The mainnet of the star public chain Aptos was of...

Wu said weekly mining information: 0214-0220

1. The Zhejiang Provincial Development and Reform...

Judging a person's personality from the fruits they like to eat

1. I like to eat peaches The character of such a ...

Character of a bow-legged woman

Character of a bow-legged woman Do women with bow...

Analysis of facial features from 1986 to 1990

Today, the editor has selected five friends born ...

Is there a beauty mark on the lower right side of the mouth?

Everyone has a mole on their body to a greater or...

What does it mean when a woman has a big mouth?

What does it mean when a woman has a big mouth? T...