Current location - Education and Training Encyclopedia - Graduation thesis - Why can Bitcoin be called the mainstream currency?
Why can Bitcoin be called the mainstream currency?
The problem of Byzantine generals

Before discussing why bitcoin is called the mainstream currency, let's look at an interesting problem, which is called the Byzantine general problem.

This problem is the basic problem of point-to-point communication proposed by Leslie Lambert.

Why is it called the Byzantine general problem? There are two historical origins.

1. Byzantium is located in Istanbul, Turkey, and is the capital of the Eastern Roman Empire. Due to the vast territory of the Roman Empire at that time, the armies of all walks of life were far apart, and the information transmission depended entirely on messengers. During the war, all Byzantine generals should know whether to attack or not, so as to win the war. But because there are traitors and spies, it will disturb the order and it is difficult to form a correct understanding. The problem of Byzantine generals was thus formed.

Secondly, Leslie Lamport (Turing 20 13) is used to abstract a famous example in the paper to describe the distributed consistency problem.

Leslie lamport gave a concrete example in a 20-page article to describe the problem of Byzantine generals. Byzantium sent 10 troops to besiege a city. 10 troops were led by 10 generals, distributed around the city, and sent messages by signalmen. Because the enemy is very strong, it takes six or more troops to attack at the same time to win the war. How to ensure that at least six troops attack at the same time?

Literally, this does not seem to be a difficult problem, but it is not so easy to solve in practice. This problem has not been well solved until Satoshi Nakamoto put forward the concept of Bitcoin network.

Why is it so difficult to solve?

Because information transmission is scattered, and there may be spies and traitors in it.

Regardless of the situation of traitors and spies, it is difficult for the generals of 10 to unify an attack time. For example, every general has his own offensive thinking. If he wants to unify an attack time, he must ask the signalman to convey his thoughts to the remaining nine generals and ask him if he agrees to attack at this time. Because the distance is different, the time of receiving the proposal is different, which is easy to form a chaotic situation.

If you add traitors and spies, it will be even more terrible. Traitors and spies can make different proposals to different generals, or agree to the offensive proposals of multiple generals.

So it depends on whether this problem is extremely complicated.

The problem of Byzantine generals is actually to solve the problem of how dispersed people can realize * * * knowledge without a centralized command.

So how did Satoshi Nakamoto successfully solve the problem of Byzantine generals?

Power workload certificate

Satoshi Nakamoto proposed the method of workload proof to solve this problem.

POW workload proves that by increasing the cost of sending information and reducing the speed of sending information by nodes, only a few nodes can transmit information at a time, and the method of attaching signatures to information transmission solves the general Byzantine problems well.

What is a workload certificate? It is actually a hash function. When you enter any value X in this function for operation, you will get the corresponding result of H(X). But when you change x slightly, H(X) will change greatly, that is, theoretically, you can't deduce the result of X without knowing H(X). The only way to solve x is exhaustive operation, which is what we often say. Because of the large amount of operation, the process of operation is the process of work.

hash function

The hash function mentioned above is actually a hash function, but the translation of different hashes is the transliteration of hashes.

In fact, in the overall architecture of Bitcoin network, hash functions are everywhere, and the whole network runs around the middle hash function.

Bitcoin uses hash function to hash the recorded data when bookkeeping. Data hashing can bring some benefits. One is to shorten the information and hide the original information. Secondly, there are methods to identify and verify information.

Let's use a general process to show it.

Blockchain first hashes ordinary information when bookkeeping, and it will get a hash value.

1.Hash (serial number 0, accounting time, transaction record) = 123456ABC.

The combination of account page information and hash value constitutes a complete block.

When writing the next account, hash the hash value of the previous block together with the information of the current account page.

2.Hash (the last hash value, serial number 1, accounting time, transaction record) = 65432 1CBA.

In this way, the second block not only contains the information of its own block, but also indirectly contains the information of the previous block.

When miners are mining, they are actually calculating hash functions. After that, I will write an article to explain the mining process.

When determining the ownership of digital currency, we actually get the address from the private key through two Hash, that is, the address we usually use to make money. Whoever owns the private key can trade. The private key is your only asset certificate, so be sure to take good care of your private key.

Why can Bitcoin be called the mainstream currency? It is not because of its amazing increase and high market value, but because its appearance has solved many problems and provided people with a brand-new peer-to-peer electronic distributed network architecture.