Popular Science | What is the motivation for the proposal of Bitcoin? What problems can it solve?

Popular Science | What is the motivation for the proposal of Bitcoin? What problems can it solve?

The article is a bit long, but after reading it you will definitely understand the life story of Bitcoin, including the motivation for proposing Bitcoin , what problems it can solve , and the key components and design solutions are all presented vividly in this article.

There is a village called "Bit Village", where they trade by barter. Why is it barter ? Instead of buying directly with money like we do?

1. Initially, the days of bartering were satisfying

Bit Village is isolated from the world and leads a self-sufficient life. The villagers have never engaged in large-scale trading activities. They only directly exchange commodities such as chickens, ducks, geese and rabbits without any intermediate circulation medium, which means that there is no currency circulation.

2. Physical currency emerges

Lao Zhang didn't want to carry the heavy flour to exchange for Lao Li's sheep. He wanted to use an intermediate circulation medium instead of flour and go directly to Lao Li's house to buy sheep. Otherwise, how can we say that the development of society is driven by "lazy people"? After everyone's discussion, they decided to divide some rare metals or shells to serve as the circulation medium of equal value to the goods . This process requires subdivision. For example, 1g of gold is equal to 1 bag of flour . Bit Village has entered the era of physical currency .

3. Further development into symbolic currency

The good times did not last long. Due to severe wear and tear, loss or deliberate hoarding , the total amount of gold was seriously depleted. Initially, 10g of gold could buy 10 bags of flour, but after 100 transactions, it can only buy 9 bags. However, no one knows who will bear the loss in between.

At this time, the village chief proposed "paper gold". Several respected people in the village collectively wrote 10g of gold on a piece of paper. Then this piece of paper could represent 10g of gold. Moreover, it would be very difficult to forge it, and there would be no inflation. Everyone reached a consensus again.

If the banknote is seriously worn out, everyone can find the village chief and his people to write a new one, and the previous one will be invalid. At this time, Bit Village has entered the era of symbolic currency (paper money) . The old village chief has assumed the role of government and bank .

4. Central system virtual currency

A few years later, the old village chief died of overwork, and his son Er Gouzi became the new village chief. Young people always have many new ideas. He collected all the villagers' banknotes , and if anyone wanted to make a transaction, they had to go through his account , and everyone reached a consensus again.

Ergouzi acts as the middle accountant . For example, if Lao Zhang wants to exchange 1 gram of gold for a sheep from Lao Li, they both need to call Ergouzi together and explain that they want to transfer Lao Zhang's 1 gram of gold to Lao Li . Ergouzi takes out the account book to see whether Lao Zhang has 1 gram of gold . If so, he will subtract 1 gram from Lao Zhang's name and add 1 gram to Lao Li's name. At this time, Lao Li hears Ergouzi confirming that the transfer is complete on the phone and can let Lao Zhang take the sheep away without worry.

At this time, Bit Village has entered the era of central system virtual currency . Every villager does not need to pay in kind , and the payment process becomes a change of numbers in the account book maintained by Er Gouzi .

5. Distributed virtual currency

Er Gouzi began to have ambitions. He began to covet the gold in the villagers' account books. Er Gouzi privately transferred 10g of gold from Lao Zhang's account to himself . This account book can be checked by the villagers. Lao Zhang found that 10g of gold was missing from his account. Er Gouzi did not expect that Lao Zhang also had the habit of keeping accounts . Lao Zhang compared his account book with Er Gouzi's account book and found the transfer that was not reviewed by Lao Zhang.

The truth was revealed! The Bitcoin Village was in an uproar. Er Gouzi was impeached and removed from office. However, everyone also discovered the disadvantages of having the account book concentrated in one person's hands:

This system is completely dependent on the personal credit of the account holder. If this person does not follow the rules and tamper with the account at will, the entire monetary system will collapse.

If this person’s house catches fire or the account book is stolen, it will also bring a devastating blow to the entire system

6. Bitcoin’s virtual currency system

Because the problem arose so suddenly, the village was already in chaos. Everyone was guarding their wallets and no longer trusted anyone.

At this time, a nerdy scientist named Satoshi Nakamoto came to the stage and told everyone that he had designed a virtual currency system called Bitcoin that does not rely on any central processor , which can solve the above problems. Then he slowly described his solution. Let's first take a look at what his solution is.

1. Infrastructure Construction

1. Account book disclosure mechanism

Satoshi Nakamoto first explained that the existing ledgers need to be transformed as follows:

1. The account book no longer records the balance of each household, but only records each transaction. That is, the payer, payee and payment amount of each transaction are recorded. As long as the initial state of the account book is determined, each transaction record is reliable and has a time basis, it is possible to calculate how much money each person currently holds.

2. The account book is changed from private to public . Any villager who needs it can obtain the current complete account book, which records all transaction records from the creation of the account book to the current one.

The villagers could not accept the public account book. Why should they let others know the amount of their assets? Wouldn’t this expose their privacy? In view of the villagers’ various concerns and doubts, Nakamoto proposed a method, which is the identity and signature mechanism (public key encryption system).

2. Identity and signature mechanism (public key encryption system)

Under this mechanism, no one uses their real identity for transactions , but instead uses a unique code .

He showed the magical things in his hand, saying that the two things were called a confidentiality seal and a seal scanner . Later, he would give each household in the village a confidentiality seal and a seal scanner. The functions of the two are as follows:

· Secret seals can be stamped on paper. Each stamp contains a unique string of characters in the village, but it cannot be seen by the naked eye. It is also impossible to make a corresponding seal by observation.

The stamp scanner can scan a stamp that has been stamped, read the implicit information , and display a string of characters on the LCD screen.

With these two magical things, everyone can conduct transactions without revealing their true identity, and the string of characters hidden in the seal is the code name of this family.

4. Establish a virtual miner organization (mining group)

Satoshi Nakamoto is recruiting virtual miners from the entire village. The recruitment requirements are as follows:

Miners are grouped together . A group can be a single household or a group of several households.

Becoming a miner does not affect the normal use of currency

Miners have to spend a certain amount of time every day to engage in Bitcoin "mining" activities , but unlike gold mining, virtual miners do not need to take tools to work in the field, and can complete the work at home

· Miners have a certain probability of getting paid . The more they pay in mining activities, the greater the probability of getting paid.

Miners can quit at any time , and new miners can join at any time

Soon, about 1/5 of the villagers joined the Bitcoin miners organization and were divided into 7 groups .

2. Establish the initial ledger (genesis block)

Satoshi Nakamoto said that he would use the account book in Ergouzi's hand as a basis to return all the pledged gold to each villager according to the balance recorded in the account book, and then completely destroy the account book.

Using a new account book, he recorded some transaction records on the first page . The difference from the previous ones was that the payee column of these records was all "system" , and the payee was the hidden character corresponding to each seal.

At the initial moment, the system allocated a certain number of bitcoins to each household by default, but the number was very small, only a few, and some unfortunate households did not even receive any bitcoins.

Then Satoshi Nakamoto said that since there are very few bitcoins on the market now, everyone can go back to the era of using gold as currency. Since I am not the village chief, I have no right to force everyone to recognize Bitcoin . Everyone can decide whether to accept Bitcoin or not.

However, with the flow of Bitcoin and the activities of miners, the amount of Bitcoin will gradually increase.

3. Payment and Transaction

Next, let’s take the example of Mr. Zhang paying Mr. Li 10 bitcoins to look at the specific process of this transaction.

1. Payer signs the transaction form

In order to pay 10 bitcoins, Zhang first needs to ask Li for his identification string , such as "ABCDEFG". Zhang also has an identification string, such as "HIJKLMN". Then the transfer order comes out, with the content "HILKLMN pays 10 bitcoins to ABCDEFG" . Zhang stamps it with his confidentiality seal (to protect his privacy) and then hands the order to Li .

In order to facilitate tracing the source of the money, it is also necessary to indicate on which page the source of the money is recorded in the list.

For example, Mr. Zhang's 10 bitcoins came from the system gift when the account book was established and were recorded on page 10 of the account book.

2. The beneficiary confirms the document signatory

When Mr. Li receives the order, he needs to confirm whether it is signed by the person “HIJKLMN” (that is, Mr. Zhang ). This is not difficult.

Because there must be a confidentiality stamp on the bill, Lao Li can take out the stamp scanner to verify it. If the characters displayed on the LCD screen are consistent with the payee's characters (here is "HIJKLMN"), it can be confirmed that the bill is indeed signed by the payee.

3. The payee confirms the payer's balance

In the previous central virtual currency system , Ergouzi was responsible for checking the payer 's balance and notifying the payee whether the transaction was valid. Now that Ergouzi has been opened up, who will be responsible for accounting and confirming the validity of each transaction ?

This system is a distributed currency system that does not rely on any central figure , so there will not be one or a few people in charge of this matter. Ultimately, it is the miner organization that undertakes this job.

4. Miners’ Work

The work of miners is the core of the entire system and also the most complex part. Let's take a look at the work content and purpose of miners.

1. Miners’ tools

Bitcoin miners don't use tools like pickaxes, shovels, and searchlights , but they do have some essential items.

Initial account book. Each group first copies an initial account book. The initial account book has only one page, which records the first gift of the system.

Blank ledger paper. Each group has several ledger papers, each page of which only has the ledger structure but no content, as follows:

Code generator (hash function). Satoshi Nakamoto distributed several code generators to each group of the miners. This thing can put a page of account paper filled with content into this machine, and the machine will automatically print a string of numbers consisting of "0" and "1" in the "this bill number" column of the account paper, a total of 256. The most amazing thing is that the number generator has the following functions:

The generated number is only related to the content filled in on the account paper , and has nothing to do with factors such as the person filling it out , the font, and the time of filling it out.

The numbers generated by the same ledger paper are always the same , but if the content is changed by even one character, the number will be completely different

When the code generator prints the code, all the transaction slips filled in the account book paper need to be put in. The machine will scan the consistency of the transaction slip and the filled transaction slip, especially the confidentiality seal . If the confidentiality seal is found to be inconsistent with the payee , it will refuse to print the code.

· Put a printed account book paper in, the machine will determine whether the number is a valid machine print, and whether the number and content are consistent. This number cannot be forged

Transaction order inbox. Each miner group needs to hang a box at the door to collect transaction orders.

Bulletin board. Each miner group also needs a bulletin board to publicize some information.

With the above tools, the miner organization can start working !

2. Collect transaction orders

Satoshi Nakamoto stipulated that the initiator of each transaction must not only give the transaction order to the payee , but also make several identical copies of the transaction order and deliver them to the inbox of each miner group.

Members of the miner group regularly go to their inboxes and take out the collected transaction lists.

3. Fill in the account book

At this time, the team members take out a blank piece of account book paper, fill in these transactions in the "Transaction List" column, and find the last page of the current account book , and copy the number of the last page into the "Previous Bill Number Column" .

Note that there is also a "lucky number" , you can fill in any number, such as 12345. Then, put the account book paper into the number generator, print the number, and a book is completed.

If you think the miner's job is that simple, you are wrong. Satoshi Nakamoto has a perverted rule : only when the first 10 numbers are 0, the page of ledger paper is valid.

According to the previous description of the number generator, to modify the number , you can only modify the content of the ledger paper , and the "transaction list" and "previous ledger paper number" cannot be changed at will, so you can only change the lucky number .

If every digit in the numbering is random , then on average more than 1,000 pieces of paper with different lucky numbers are needed to get a valid number .

In order to generate valid ledger paper, the miners in the group kept copying the ledger paper, but the lucky number of each piece of paper was different, and then they kept putting the paper into the encoder. If the generated number did not meet the requirements, the paper would be scrapped. This process was repeated until a string of valid numbers was generated.

Remember before I said that miners are paid ? This is the motivation for miners .

Satoshi Nakamoto stipulated that the first transaction in the transaction list of each ledger paper is "the system pays 50 bitcoins to this group." In other words, if you generate a meaningful ledger paper and it is accepted by all mining groups , it means that this transaction is also accepted and your mining group gets 50 bitcoins .

This is why these miners are working so hard on this seemingly meaningless task.

For example, the following is a mining process . The public Bitcoin account of this group is "UVWXYZ" .

When the lucky number "533" was tried , the system generated a page of valid ledger.

4. Confirm the account book

When a mining group is lucky enough to generate a meaningful ledger, in order to get rewards , it must immediately ask other groups to confirm its work.

As mentioned before, there are currently 7 mining groups in the village, so this group must quickly copy 6 copies of the valid account book paper and send them to the other 6 groups for confirmation.

Satoshi Nakamoto stipulated that when a group receives ledger paper from other groups, they must immediately stop their mining work and confirm the ledger.

There are three pieces of information that need to be confirmed:

1. The account book number is valid

Just put the delivered account book paper into the code generator for verification. If the verification passes, the number is valid.

2. The previous page of the account book is valid

It is necessary to compare the "previous page number" on the ledger page with the last page number of the valid ledger currently kept by this group .

If they are the same, confirm; if they are different , you need to compare them forward along the existing account books until you find the page with this number .

If the page corresponding to the specified "previous page number" is not found, the team will discard the page. Not confirmed.

3. The transaction list is valid

It is to confirm that the payer of each current transaction has sufficient balance to pay the money.

The transaction information includes how the money came from and the bill number that records the source transaction.

For example, HIJKLMN wants to give ABCDEFG 10 bitcoins, and indicates that these 10 bitcoins come from a previous transaction in which OPQRST paid HIJKLMN. When confirming, you must first confirm whether the previous transaction exists , and also check that HIJKLMN has not paid these 10 bitcoins to others before .

Once all this is confirmed, the validity of the transaction is confirmed.

If all the above verifications are completed and passed , the group will recognize the validity of the above ledger paper, and then merge this ledger paper into the group's main ledger, abandoning the current work in progress, and the subsequent mining work will be based on this updated main ledger .

5. Account book confirmation feedback

For the mining team, after sending out the ledger paper , if they receive the ledger paper sent by other teams later, and the "previous page number" is the ledger paper they sent out before, then it means that their work has been successfully recognized by other teams, because there are teams that continue to work based on their ledger paper. At this point, it can be considered that they have obtained 50 bitcoins.

The above is the entire Bitcoin payment system.

Let's analyze why this system can work and the risks it may face .

5. Answering core questions

First question: What if two legitimate ledger pages are received at the same time?

The mining groups work in parallel , so it is entirely possible that a group receives two different ledger pages, both of which are based on the last page of the current group's main ledger, and the contents are completely legal. What should be done?

Regarding this issue, Satoshi Nakamoto said that the group should not organize the ledger in a linear way , but in a tree-like manner. At any time, the longest branch is used as the main ledger , but other branches are retained . For example, a group receives two ledger pages A and B at the same time, and both are legal after verification. At this time, the group should organize the two pages in a forked form, as shown in the following figure:

Black indicates the current account book trunk. At this point, you can select any page as the current main branch, for example, select A:

At this time, if there is a new ledger page based on A, then this trunk will continue:

If this trunk continues like this, it means that everyone basically takes A as the main trunk, and B will be forgotten. But it is also possible that B suddenly becomes longer:

Then we need to take branch B as the current trunk and carry out subsequent work based on this branch.

From a local perspective, although there may be inconsistencies in the main trunks of the ledgers of various groups at a certain moment, the general direction is consistent, and those small branches that occasionally arise due to asynchrony will quickly be submerged in history.

The second question: What if someone in the mining group falsifies the ledger?

As long as the majority of people in the mining organization are honest, the system is reliable, specifically in several aspects:

First of all, based on the confidentiality seal mechanism , no one can forge another person's identity to make payments , because the code generator will check the confidentiality seals of all transaction orders when printing the code, and will refuse to print if the seal and the payee are inconsistent.

Moreover, honest miners will not recognize illegal transactions (such as insufficient balance on the payer side of a transaction).

Therefore, there is only one possible attack behavior, which is to create another transaction order from another branch after the payee confirms the payment, cancel the previous payment, and pay the same amount of money to another person again (the so-called double-spending problem). The following example also illustrates this problem.

First assume that there is an attacker who has 10 bitcoins. He plans to pay the money to two victims A and B at the same time, and both are recognized.

In the first step , the attacker prepares to buy 10 bitcoins of gold from victim A. He signs the transaction order to victim A and transfers 10 bitcoins to victim A.

In the second step, the transaction is confirmed in the latest ledger page and announced by various mining groups. Victim A sees the announcement, confirms that the bitcoins have arrived, and gives the attacker 10 bitcoins worth of gold.

In the third step, the attacker finds the ledger and makes a branch from the previous page of the ledger containing the transaction, generating more bill pages that exceed the previous branch. Since the branch created by the attacker becomes the main branch, and the branch containing the money received by victim A becomes a side branch, the mining organization no longer recognizes the previous transfer, and the 10 bitcoins received by victim A are cancelled.

In the fourth step, the attacker can sign the transaction again and pay the same amount of money to victim B. After victim B confirms that the money has arrived, he pays the attacker an equivalent amount of gold.

At this point, the attacker has spent 10 bitcoins twice, buying gold of equal value from each of the two victims. The attacker can also do the same thing, cancel the transfer with victim B, and pay the same amount of money to other people.

Satoshi Nakamoto explained that the abnormal numbering rules were set up to defend against this.

If a ledger page contains a confirmation that you received the money, and it continues for 6 more pages, it would be very difficult for an attacker to catch up with the current main branch from another branch when they are 6 pages behind, unless the attacker has a lot of manpower, more than the sum of the manpower of all other honest miners.

Moreover, if the attacker has so much manpower, it is better to be a good citizen mining instead of spending so much effort on such an attack, which will bring more benefits. This eliminates the motivation for the attack.

The third question: If the amount of Bitcoin continues to increase, won’t this lead to serious inflation?

Satoshi Nakamoto said that the operating manual I gave to the miners would explain that at the beginning, our protocol would reward the group with 50 bitcoins for each page of the ledger generated. Later, every time the ledger increased by 21,000 pages, the reward would be halved. For example, when it reached 210,000 pages, 25 bitcoins would be rewarded for each page of the ledger generated. After 420,000 pages, 12.5 bitcoins would be rewarded for each page generated. And so on. When the ledger reached 6,930,000 pages, there would be no reward for newly generated ledger pages. At this time, the total amount of bitcoins is about 21,000,000, which is the total amount of bitcoins, so it will not increase indefinitely.

The fourth question: If there is no reward, no one will be a miner. Does that mean no one will help confirm transactions?

The miners' income will be converted from mining income to handling fees . For example, when transferring money, you can specify 1% of it as a handling fee to be paid to the group that generates the ledger page. Each group will select the transaction orders with high handling fees and confirm them first.

The fifth question: If there are more and more miners, will the speed of Bitcoin generation increase?

No. Satoshi Nakamoto explained that although miners can join and leave the organization at will, resulting in changes in the number of miners, and each miner will also get a code generator, I have added a control mechanism to the code generator. The more code generators are currently working, the lower the efficiency of each machine, ensuring that the rate of generating new ledger pages remains unchanged.

This is the principle and operating mechanism of Bitcoin. Bit Village is becoming richer and richer. The emergence of Satoshi Nakamoto is undoubtedly a blessing for Bit Village.


<<:  A newbie in the mining circle, telling the mining experience of the past six months with examples

>>:  The design philosophy of Ethereum 2.0

Recommend

Does a mole on the upper lip affect your destiny? What are the impacts?

Traditional physiognomy covers a wide range, among...

Palmistry methods to resolve money leakage

In palmistry , there are palms that indicate good...

After fueling the SPAC boom, the super-rich are now turning to cryptocurrencies

In a recent survey by the bank, 15% of respondent...

What are the main effects of a mole on the forehead?

It is actually quite common to have moles on the ...

Women who are likely to marry inferior men

Women who are likely to marry inferior men Every ...

What does a woman with bulging eyes mean?

For many people, in fact, many kinds of relations...

What kind of nose does a woman have to have to bring good luck to her husband?

What kind of nose does a woman have to have to br...

Interpretation of women's false phoenix eye pattern palm

In the palmistry illustration, there is a type of ...

What does it mean if you don't go home for New Year's Eve dinner?

Generally speaking, New Year's Eve is the nig...

How to read women's faces and love secrets

In fact, facial features can not only reveal our ...

Women will have no worries about food and clothing because of these moles

Moles in different parts of our body represent di...

Are men with puffy eye bags unsuitable for early marriage?

Men with swollen bags under their eyes are suitab...