Source: Lianwen , original title "Understanding Bitcoin White Paper: The Longest Way, Perhaps the Fastest Way"
Written by: Li Hua, Acknowledgements: Wu Weilong
- Blockchain concept share differentiation new landing company into a new favorite
- PricewaterhouseCoopers analyst: The traceability of the blockchain is just "illusion"
- The finale of the American drama "Silicon Valley": a crisis caused by a blockchain expansion
- Below the Reg A+ and Reg S prices, Blockstack may face further selling pressure
- The digital currency of Chinese listed companies (I)
- Getting started with blockchain | What is the difference between cryptocurrency investment and speculation? How to make both fish and bear's paw
Satoshi Nakamoto believes that the Bitcoin system should have such characteristics: once the 0.1 version of the system starts to run, the core design of the entire system will always remain unchanged . He used this goal as a guide to the realization of the Bitcoin project. One of the most typical manifestations is the use of a scripting engine to enable the system to support every possible transaction type in the future.
Ten years later, the Bitcoin system seems to have changed the core design, as Satoshi Nakamoto had hoped. This also means that ten years later, the Bitcoin white paper is still the most important document when we understand Bitcoin and even the blockchain.
The questions that everyone asked about Bitcoin on the mailing list and the bitcointalk forum may still haunt us now. Then, Satoshi's answer at that time may serve as a starting point for our discussion of these issues today. Just like Satoshi Nakamoto's preferred system design idea is "do not make wheels repeatedly." When discussing issues, we can also avoid making wheels repeatedly.
For the above two reasons, I have written this article, hoping to start with a rereading of the Bitcoin white paper and understand Bitcoin from the source.
This article contains two parts: the first part is an interpretation of the Bitcoin white paper, but it needs to be pointed out that my interpretation is only an angle to understand the white paper, and this interpretation is more about technical understanding of Bitcoin; It is some questions about bitcoin in the mailing list and bitcointalk forum, and Satoshi Nakamoto's answers to these questions. I think these questions are still important for understanding bitcoin today.
First, read the Bitcoin white paper carefully, start from these points
The title of the Bitcoin white paper is "Bitcoin: A Peer-to-Peer Electronic Cash System" , which refers to Bitcoin as an electronic cash system implemented entirely through peer-to-peer technology. The keyword "electronic cash" may be an important clue for us to understand Bitcoin.
Is it possible to invent a new transaction medium in electronic payment or Internet payment, which allows any two parties to directly trade without trusting a third party, just like cash transactions?
This is exactly what the Bitcoin system wants to achieve: electronic cash.
When Satoshi Nakamoto once discussed the value of Bitcoin, let everyone imagine a rare metal: it has no practical use and is not suitable for decoration, but it can be transmitted magically in the communication channel. So, when this metal gains some value for whatever reason, do people want to own this metal as a trading medium. This metaphor of Satoshi Nakamoto helps us better understand the meaning of "electronic cash".
2. Ownership of electronic cash
To realize electronic cash, the first thing is to be able to determine the ownership of "cash". This kind of identification is easy offline. Whoever holds that money is whose money it is; but there is no physical currency online. This method obviously does not work. Therefore, Bitcoin uses "digital signature" to identify ownership. There are some similarities in the way in which currency ownership is confirmed on Urashima.
Stone coins on Yap Island
There is no metal resource on the island of Yap in the Pacific Ocean. The inhabitants of the island mine limestone from Palau, 400 miles away, and then transport the stones back to the island for currency. The buyer and seller decide in the transaction how big the stone coin is for the buyer to pay. If the stone is too large, the payee only needs to make a mark on the stone of the payer, and then they can transfer the ownership of the stone to themselves Although the stone may remain in the payer's home.
The existence of Bitcoin in the network is a digital signature chain. During the transaction, the original owner adds the new owner's public key (actually a hash of the public key) to the end of the digital signature chain, and the transfer of Bitcoin ownership is completed, just like the Yapu Islander on the stone coin Making a mark / signature completes the transfer of ownership of the stone.
In other words, who belongs to the latest public key on the Bitcoin digital signature chain (the private key corresponding to the public key) , and who this "electronic cash" belongs to.
3. The double payment problem of electronic cash
After the ownership of electronic cash is realized, the next problem that needs to be resolved is the problem of double payment (or "double spending") . This is perhaps the core and most difficult problem to solve when designing electronic cash.
Let's go back to cash and find out why e-cash is facing a double payment problem and how it can be solved by comparison.
When using cash to pay, who we give a piece of money to is the one who belongs to it, so we ca n’t spend the same piece of money twice. The abstract understanding is that we use time to determine the order in which payment events occur, and Only the payment that occurs first is recognized.
As with cash payments, in a distributed network, we also recognize only the earliest transaction that occurs. Unlike cash payments, in a distributed network, we cannot determine the order in which transactions occur by time, because network participants have not reached a consensus on time. In the simplest case, one computer thinks that the time is 9:01 am, and another computer can think that the time is 9:02 am, and physical time does not work.
The method chosen by Satoshi Nakamoto is to realize the time consensus of the participants through the time stamp, so that the system can use this time consensus to determine the sequence of events.
The time stamp function is the core of Bitcoin, so that Satoshi Nakamoto called the Bitcoin system a "distributed and secure time stamp server."
We may understand time stamping in this way: in the real world, one second is one second, and each second is exactly the same as the other, and one second after another constitutes the sequence of time; in the Bitcoin system, "One second" is a time stamp. If measured in physical time, the length of each second is determined by the time that a new block is mined. It is approximately equal to 10 minutes. Each second is different from the other. . However, if measured in bitcoin time, each second is considered to be indistinguishable from another. One second after another (each new timestamp is added after the previous timestamp) forms a coherent sequence of time.
Transactions are packaged into blocks, and blocks are time stamped, which is equivalent to each transaction having a uniquely determined "time". When a node processes a new transaction, it will check the "electronic" corresponding to this transaction. "Cash" has not been spent before the current time. If not, accept the transaction and time stamp it (determine the time of occurrence) ; if it has been spent, reject the transaction. In this way, the double payment problem of "electronic cash" has been resolved.
In a distributed system, who will timestamp, or who will decide when the time of the last second is over and the next second? With Proof-of- Work (PoW) , whoever can first calculate the hash value that falls within a certain range, whoever can stamp the timestamp.
How does this timestamp get consensus? The longest chain principle, the longest chain represents most (most computing power) decisions. Proof-of-work plus the longest chain principle is also known as Satoshi Nakamoto consensus. Consensus is the core part of all blockchain systems, and its essence is to achieve distributed time stamping services.
When both the ownership and double payment issues are resolved, we have an electronic cash that can be used in the network, which enables online payments to be sent directly from one party to another without going through a financial institution. Satoshi Nakamoto called the system he implemented as Bitcoin.
Two or eight Satoshi Nakamoto still emitting wisdom
Satoshi Nakamoto replied to many questions about Bitcoin in the mailing list and bitcointalk forum. He is very confident in his answers. He believes that these issues were almost all he had considered before designing the system. Years later, these answers still radiated wisdom.
We have selected those Q & As that still make sense today, and summarize them as follows.
1. Is mining a waste of energy?
Satoshi Nakamoto replied: This is similar to gold mining. The cost of gold mining is consistent with the price level of gold. Mining is a waste, but this waste is far less than the utility of gold as a medium of exchange. The same is true of Bitcoin. The utility of using Bitcoin as an exchange medium is much higher than the electricity required to mine Bitcoin.
2. Is Bitcoin's price model sustainable?
Satoshi Nakamoto replied: Before Bitcoin has established a price in the market, a valuation model based on production costs is meaningful, and the price of any commodity tends to production costs. But after a few years, when the newly mined bitcoins account for only a small part of the supply, it will be the price of bitcoins that determines the cost of production, not the other way around. NLS (a community member) 's energy consumption-based valuation model is a good starting point. But in the future, market power will be the main factor determining the price of Bitcoin.
3. What if the "bad guy" has more computing power than the "good guy"?
Satoshi Nakamoto replied: This first requires that the computing power of a single "bad guy" is greater than the sum of the computing power of all "good guys"; secondly, even if the computing power of a single "bad guy" is greater, all he can do is double spend his own Money, he needs to spend this money by buying things (now it can be traded on the exchange) , and then after receiving the "goods", re-spend the money by attacking the network. This attack may not be cost-effective for the attacker. If you have this kind of computing power, it is not as good as mining.
4. Is Bitcoin anonymous?
Satoshi Nakamoto replied that the anonymity of Bitcoin depends on whether the Bitcoin address is associated with the user's personal information. If not, then it is anonymous, because the Bitcoin address is a string of random numbers, which itself does not contain identifying information. To protect privacy, each bitcoin address is best used only once.
5. Can the Bitcoin network send "private messages"? Is message encryption a built-in feature of Bitcoin?
Satoshi Nakamoto replied: This message can be seen all over the world and it is completely public. Because ECDSA can only be used for digital signatures, it cannot be used for message encryption. RSA (Bitcoin does not use this algorithm) can be used for message encryption, but the amount of data is too large. Both the storage space and the bandwidth requirements are an order of magnitude larger than ECDSA. Using RSA is inappropriate.
It is not wise to keep a permanent record of a message that everyone can see. If a messaging system is needed, it should be an independent system parallel to the Bitcoin network, and messages should not be recorded on the blockchain. Messages can be signed with a Bitcoin key pair to prove the origin of the message.
6. What if SHA-256 is breached? (This question is similar to what to do with quantum computing)
Satoshi Nakamoto replied: SHA-256 is very difficult to crack. Even if it is cracked, we can replace it with new algorithms in an orderly manner before the trouble comes.
7. Is Bitcoin separable?
Satoshi Nakamoto replied: Bitcoin is displayed as 1.00, but it actually contains 8 decimal places, which is 1.00000000.
8. What about the lost bitcoins that cannot find the private key?
Satoshi Nakamoto replied: These bitcoins will only make other people's bitcoin more valuable, and can be regarded as a donation to everyone.
Third, return to the beginning
There are many interpretations of bitcoin, and the interpretation of the blockchain and the extended arguments about what the blockchain can do are even more. But if you want to know Bitcoin and blockchain from the source, here is a good place to start the journey.
The longest road seems to be the fastest road.
1. Bitcoin white paper :
2. All comments made by Satoshi Nakamoto on the mailing list:
3. All comments made by Satoshi Nakamoto on bitcointalk:
4. Important literature related to Bitcoin: