Babbitt Column | Stupid Protocol and Smart Terminal, Why Bitcoin's Simple Design Is Right

The mobile phone number we buy on Mobile or Unicom generally includes a package:

1. How many minutes of talk time will be charged extra.

2. How many text messages exceed the extra charge.

3. Color ring back tone.

4, family number.

The telephone network is a very feature-rich network. The functions in the mobile package we ordered are all functions provided by this network. This network controls almost all user experiences. This network knows the numbers, names, addresses, etc. of all users who access it. This is an authorized network. This network knows who is talking to whom and can even eavesdrop on everyone's calls.

Feature phones and telephone terminals are very clumsy devices and have no functions in themselves. These gadgets are quite a speaker and a microphone. Any innovation requires this telephone network to complete, and users need any new function, and they need this telephone network to authorize. If the telephone network itself does not have this function, then no one can get it.

Note that the mobile phone I am referring to here refers to a feature phone. The smart phone we use today is actually not a phone connected to the telephone network, but a computer connected to the mobile Internet.

Nowadays, we rarely make phone calls in the traditional sense, and more often use Internet phones, such as WeChat voice chat.

The network that provides Internet calls is our Internet. The Internet itself is actually very stupid. All it can do is send data packets from one terminal to another. The Internet itself does not know what data it is transmitting, let alone. Know what a terminal device is. The Internet only knows the IP address and does not know who is using this network.

We use the Internet to complete any function of communication, including voice, video (the phone network does not provide this service), sending pictures (called MMS in the phone network), sending text messages, positioning services, etc., all are functions provided by terminal devices, and The Internet itself doesn't care about these functions at all.

The Internet and the telephone network are completely different designs. The Internet design is very "stupid" with extremely single functions and can be counted with your finger; the telephone network is very "smart" and controls a lot Functions. Correspondingly, the terminal equipment of the Internet has infinite functions; the terminal equipment of the telephone network is very monotonous.

In the telephone network, if you want to add any new features, all the network itself needs are protocol updates and technical changes, that is, its innovation is the innovation of the network itself.

But in the Internet, innovation comes from terminal devices. As long as your mobile phone is smart enough, everything will be played for you. Even your terminal device can be various intelligent hardware, such as air conditioners, rice cookers, sweeping robots, smart switches, air conditioners … … all provide messy features and innovations. All these features and innovations simply do not require the Internet itself to perform protocol updates and technical improvements.

We call the telephone network "smart protocol + smart terminal"; the Internet is called "smart protocol + smart terminal". Bitcoin (including BTC, BCH, and BSV, the three major branches of Bitcoin) is actually a stupid protocol. Its functions can be summarized into one sentence. Using simple scripts and remarks, Bitcoin (UTXO) is transferred from an address. To another address. The Bitcoin network does not care about the people behind the transaction, nor does it care what the transaction is used for, or even the amount of money.

The Bitcoin script is very simple. Now almost all transactions are standard transactions. The script can construct a few financial instruments such as multi-signature, and others are gone.

More functions of Bitcoin require "terminal" innovation. The "terminal" here mainly refers to software and hardware used by users such as wallets and applications. For example, you can use Bitcoin's timestamp to build an existence proof business; for example, create a stable currency USDT; for example, memo.cash is a decentralized Weibo based on the BCH network; for example, in theory, it can be used on the basis of Bitcoin The Layer 2 network does a lot of innovation.

A blockchain system mainly contains three types of resources: computing resources (CPU), storage resources (memory), and bandwidth (Net). These three resources mainly correspond to the verification of transactions and blocks, the preservation of transaction data, and the propagation of transactions.

Whether a set of protocols is stupid or intelligent can be observed by the ability of the protocol to these three resources.

In the stupid Bitcoin protocol, in order to become stupid, Satoshi Nakamoto limited the computing power and only gave the Bitcoin system a simple scripting engine. Compared with Ethereum's virtual machine, the computing power and programmability of the script engine is really weak.

The limitation of storage resources is the core difference between BTC, BCH and BSV. BTC is extremely limited in storage, and a 1M limit is imposed on the block (strictly speaking, 1M basic transaction block plus 3M witness block); BCH is to relax the block to 32M. Continue to relax when needed; BSV is to maximize the block as much as possible, and the goal is to achieve no upper limit. As for the bandwidth, all three are not limited.

It can be said that BTC is the dumbest brother of the three, BCH is second, and BSV is the smartest.

Compared to the Internet protocol, TCP / IP is a more stupid existence. TCP / IP is just a set of data transmission protocols. It doesn't know what it is transmitting. The Bitcoin protocol also has a similar stupidity. The Bitcoin protocol only recognizes some of the transactions it spreads, such as P2PKH, P2SH, these transactions. The Bitcoin protocol validates these transactions.

But there is still a large amount of data that the Bitcoin protocol is "unknown". This was deliberately left behind when the protocol was designed. There are two parts in particular, one is the data pushed into the Bitcoin blockchain using the OP_Return opcode. Regarding the data in OP_Return, the protocol is irrelevant. When this opcode is encountered, the subsequent data is only calculated in size. As long as it does not exceed the set value, it is verified to pass.

There is another big type of data, and the Bitcoin protocol still seems stupid, that is, the data corresponding to the script hash value in P2SH. P2SH transaction verification rules are as long as the hash value pairs are correct, regardless of what is in the hash.

As for bandwidth, all blockchain systems will not impose restrictions, and they want to squeeze the last bit of resources as much as possible.

This stupidity of the Bitcoin protocol is conducive to protocol expansion and terminal innovation. Corresponding to the stupidity of the Bitcoin protocol, other chains of the current blockchain are committed to innovating more intelligent protocols. The most successful is ETH.

Many blockchains represented by ETH are extremely clever about the three major system resources: computing, storage, and bandwidth. Ethereum has a built-in virtual machine, which is a complete computer that can execute any program.

This is why Ethereum can create endless applications. At present, the best and hottest applications in the blockchain industry are on Ethereum. The best ones include, decentralized exchange Dex, decentralized lending MarkerDao, decentralized gambling, etc.

For the use of storage resources, Ethereum has made a lot of restrictions, mainly to prevent the system from being overstressed and causing decentralization to fail.

The smartest blockchain for the three resources is EOS. EOS precisely defines these three major resources and gives them different economic systems.

For example, smart protocols such as Ethereum and EOS, and Bitcoin's stupid protocol, there is a major difference between the two: smart protocols need a centralized design, and the update of the ETH main chain requires the Ethereum Foundation to complete EOS is Block.one. The stupid protocol, in fact, many people can take over the system update. Although BTC is currently led by the Core development team, BCH is led by the ABC development team, and BSV is led by nChain. But at the competitive level of the protocol update, all three development groups have potential competitors.

The Bitcoin stupid protocol can be completed with smart terminals as smart as Ethereum. But the smart terminal of the stupid protocol + smart terminal needs to be broken and decentralized. For smart applications, consensus on the main chain can be found on Ethereum, while on the Bitcoin protocol, consensus on the main chain cannot be obtained.

The consensus of the main chain needs to consume the resources of the main chain, which is why the scalability of Ethereum has not been solved. EOS achieves transaction scalability by limiting the scalability of nodes by limiting the number of super nodes to 21.

However, the smart terminal is easier to expand the main chain; the smart main chain is more difficult to expand. If the pursuit of decentralization and scalability is right, then a stupid protocol is right.