What I learned from the inventor of Bitcoin

Publication time: August 27, 2020
Source of information: https://medium.com/theory-of-bitcoin/what-i-learned-from-the-inventor-of-bitcoin-9e3c6bb14a5b


This article was first published on Medium and republished on the CoinGeek website with the consent of the original author Ryan X. Charles.

introduction

The inventor of Bitcoin is an Australian-English learned genius. For more than ten years, he has obsessively studied every subject related to digital currency and obtained relevant degrees, which eventually led to the birth of the Bitcoin genesis block. More than ten years later, he applied for many more patent applications, and his number of patents will soon surpass any famous person in history, including Thomas Edison. He is Dr. Craig S. Wright, and I, like most people who know him, call him Craig.

I came into contact with Bitcoin on May 13, 2011. It seems to have the potential to develop into the cornerstone of an emerging industry. Just like the Internet in the 1990s, I think I have the opportunity to enter the bottom and create my own success. So I started to study Bitcoin and founded a company on this basis, which was later Money Button, a simple payment system based on Bitcoin.

I first met Craig in early 2017, when my former co-founder Clemens Ley independently discovered the Turing completeness of Bitcoin and sent an email to Craig’s company nChain with his proof of this. . At the time, Bitcoin did not have Turing completeness to be general knowledge, although this was wrong. In fact, Bitcoin does have Turing completeness. Craig was the first person to say this publicly in a roundtable discussion with Nick Szabo, even though no one believed him at the time. Two years later, nChain was very interested in Clemens' work, so we arranged a meeting with Craig in London.

After talking to Craig for more than a day, he was obviously a very knowledgeable person. His words are always overwhelming, making most people find it difficult to understand. His daily speech is like a speech at a university. But more importantly, he is giving university-level lectures on 5 or more subjects at the same time, so this is actually more dense than most university lectures. Even a well-educated person usually does not understand most of what he says.

Since then until now, there have been many dramatic events in this industry, but I will not repeat them. Importantly, in the selection process, almost the entire industry showed no interest in the original idea of ​​Bitcoin. To make matters worse, as far as I know, almost no one understands Bitcoin. Hardly anyone even realizes how interdisciplinary Bitcoin theory is, let alone trying to master these materials. Most people who think they know it, on the better side, seem to understand only about 1% of it, and on the worst, they are deliberately misinterpreting it. Therefore, we started to distinguish the "cryptocurrency industry" from the Bitcoin industry. Their industry has basically nothing to do with Bitcoin's original idea.

Obviously, for some of us, we need to greatly expand our knowledge of Bitcoin and deepen our understanding of it. I'm not even sure if anyone besides Craig really fully understands it-obviously, I don't fully understand it. Earlier this year, Craig approached me and asked if I would like to learn "the other 99% of Bitcoin." This seems to be a once-in-a-lifetime opportunity. I can learn from the most educated person in the world, so I agreed.

I asked Craig if he would turn our discussion into a public video series. This will be a way of killing two birds with one stone-I can learn directly from Craig, or help Craig reach more learners, who can also learn with the same materials. Craig agreed. Therefore, we produced the "Theory of Bitcoin interview series". During the 20-hour discussion, I asked Craig some questions. These questions covered about 16 things you must know to master Bitcoin. Different disciplines. The reason why the length of the video is 20 hours is because it is about the length of an audio book, so it should contain the same amount of information as a book, but at the same time it should not be too long, so that full-time employment in the industry The personnel saw the end from the beginning.

The series of interviews is divided into an introduction, six interviews on theoretical topics, an interview about the history of Bitcoin, an interview about the future of Bitcoin, and a summary. In this article, I summarize the content of these interviews.

The internet

Craig created Bitcoin because it needed a kind of digital cash to solve the security problems of the Internet. The security problem of the Internet is essentially that it was designed without considering security at the beginning, but added after the fact, and its implementation will lead to multiple central points of failure. This is worse than a single point of failure. It actually has multiple different nodes. If any one of them is compromised, the security of all information on the Internet will collapse. This will not only affect the security of the present, but the security of the past, present and future will be affected. This will be a huge disaster. In fact, these things have already happened. See Diginotar hacking incident. Therefore, the Internet is not safe.

The Internet is a mesh network (Mesh Network). Part of Bitcoin's solution is to create a different type of network. The logo of this series of videos shows what an 8-node small world network looks like. This is basically what a Bitcoin node looks like. They are small in number and are incentivized to connect to all other nodes, so when they find a new block, all other nodes will get the block immediately.

Bitcoin has a multi-layer network structure. Nodes ("miners") are the core part of a series of overlay networks, which are layered on top of each other like an onion. SPV (Simple Payment Verification, as defined in the original white paper) nodes are the easiest way to understand the top level. They send and receive their own transactions to each other, but they will not send and receive transactions that are not related to them.

We should distinguish between theory and reality. Theoretically, the miner node is a complete graph (each node is connected to every other node), and the SPV node is the top-level mesh network. In practice, miner nodes are not necessarily all connected to each other, but roughly so. Therefore, we say that the miner node forms a "nearly complete graph". And the SPV node hasn't even really appeared yet-that's a long story. My company is cooperating with some other companies to create a standardized SPV wallet that meets the definition of the white paper, which is necessary for the security of Bitcoin (the block header must be public and available everywhere. This is a security service provided by the SPV node ).

The most important theory behind the Bitcoin network was founded by Watts and Strogatz in 1998. The Internet was a great invention in the 1960s and 1970s, but these new developments in network theory, as well as advances in hardware (fast and ubiquitous fiber optic connections), made better networks possible. Bitcoin is the next generation network. It can be combined with the Internet to improve security, and eventually replace the TCP layer of the Internet as a more secure alternative.

Introduction to Law

In order to invent Bitcoin, Craig studied many different disciplines, including law, and obtained a law degree in 2008—just before the publication of the white paper. His motivation comes from the pursuit of knowledge itself, but also from his desire to learn all subjects related to Bitcoin to ensure that he correctly solves the problem of digital currency. He has more than 17 university degrees, and he continues to study more degrees to this day.

Digital cash has failed many times. Craig joined Mark Twain Bank in the 1990s, which tried to use DigiCash, a pioneer of digital cash created by David Chaum. David Chaum described digital cash in this paper for the first time since 1982. He was obsessed with this project for decades, and eventually ended in failure. David Chaum's method, like almost all other digital currency implementation methods, has a problem, that is, their interest is to create a completely anonymous currency. The problem with this approach is obvious, because it encourages crime and fails to operate in compliance. Therefore, the correct solution for digital currency must be legal and must allow banks or other companies that use it to operate in compliance. Craig knows that the law is the core, so he researched it specifically to make sure it will not become a Bitcoin problem.

Before delving into the details of Bitcoin, Craig helped me understand some legal basics. The most important basic legal concept is "Rule" or "Law", that is, there is such a law determined by society that applies equally to all people. No one can be above the law. Everyone is equal before the law.

The legal characteristics of Bitcoin

Bitcoin is a way to introduce law to the Internet. It allows us to use the law to enforce contracts and identify and prosecute criminals. This is a core and important point, so I will repeat it again: Bitcoin is not just a way to get rid of government regulation, it is the opposite. Bitcoin is specifically designed to allow governments to enforce civil and criminal laws on the Internet. It provides the possibility to use laws on the Internet. Without Bitcoin, it is impossible or difficult to apply laws on the Internet. Bitcoin is a legal innovation.

Let us consider the following two situations. In order to enforce the contract, all related contracts can be signed in writing and stored in the blockchain through a hash function irreversibly, so that perfect and comprehensive evidence can be submitted to the court when necessary. Buying digital content is an example. At the time of purchase, you can declare that the buyer must comply with the restrictions on digital content. If the buyer commits fraud (such as illegal secondary authorization content), the data on the blockchain can be used to prove the content of the signed contract and the signed contract in court Order to make the execution of the contract more efficient.

The same applies to criminal law. Bitcoin can be used not only for payment, but also for contracts (implemented through a hash function and therefore secured and stored on the chain), and criminal acts can also be discovered and proven. In some cases, fraud can be detected automatically, such as using Bitcoin to pay taxes, and auditing can be conducted using blockchain data, which greatly improves the audit efficiency of tax authorities. Bitcoin will help governments collect taxes and help companies pay taxes. Improving efficiency is good for everyone. When using Bitcoin, even the most serious crimes are suppressed because everything is traceable. Bitcoin encourages honesty through transparency.

Currency is the core of laws and contracts. Therefore, in the legal and regulatory system, the legality of Bitcoin and the ability of companies and individuals using Bitcoin to act legally are very important. These issues include but are not limited to:

  • Bitcoin was created legally. In Australia, there is no law prohibiting the creation of new currencies.
  • The node constitutes a settlement layer, not a fund transfer agency.
  • Bitcoin is not a security in the sense of the Howie test. Although it is a security in a broader sense, in this sense, basically any financial asset is a security.
  • In the legal sense, Bitcoin is fungible, but because every Bitcoin can be traced, it is not anonymous. Enterprises or individuals that do not comply with financial regulations may have to pay for lost or stolen funds. responsibility.
  • The blockchain will not transfer your coins, but you can.
  • Because the agreement is fixed, there is no partnership between nodes. (In contrast, in other alternative networks, if a centralized organization changes the rules, and the organization has no legal entity, then individuals (usually developers) are obliged to be responsible for these alternative networks.)
  • Bitcoin transactions can be, but not necessarily, signatures in the legal sense. If the signatory has read the complete contract and then signed it, the transaction can become a legal signature in the legal sense.

The law is complex and the situation of each country is different, so the above list can only be used as a reference for the types of laws related to Bitcoin and does not have any authority.

In short, Bitcoin is not only legal, but because everything is traceable, this allows it to apply relevant laws in civil and criminal courts. Bitcoin itself is the key to ensuring Bitcoin's security. The law can always be used as a last resort.

Scripting, calculation and Turing completeness

A bitcoin transaction has multiple inputs and multiple outputs. Each input is linked to the previous output. Both input and output have a "script", which is actually a predicate system, or a statement that determines whether it is true or false. In Bitcoin, the predicate system can also be calculated to any value. In other words, the script can return a value as long as the value is not zero (a zero return value invalidates the transaction, so they will never be found on the blockchain). Therefore, the output of Bitcoin transactions not only outputs currency (Bitcoin), but also outputs information (the return value of the script). The same is true for input: they input both currency and information.

Bitcoin's predicate language is called Script for short, and it is based on Forth. Forth is a stack-based programming language used in highly specialized situations such as embedded hardware and F18 fighter consoles. Forth is extremely fast, but it is troublesome to use, because it lacks many features of modern programming languages, such as heap structure. Nonetheless, Forth's simplicity, speed, and verifiability make it suitable as a base layer language for Bitcoin. Can compile higher-level languages ​​into Forth.

If a computer or programming language can calculate any calculable number, then it is Turing complete. Forth has Turing completeness, scripts have Turing completeness, and Bitcoin also has Turing completeness. This is not difficult to understand, but before Craig told everyone, almost all the people in the industry ignored this. All cryptocurrencies such as Ethereum are born to create a Turing complete version of Bitcoin, but all of this is based on the wrong foundation. Bitcoin is already Turing complete, so there is actually no improvement in creating a new Turing complete version.

The concept of "Turing completeness" originally came from a paper on computable numbers published by Alan Turing in 1936. Turing is a genius, and people sometimes misunderstand his meaning. He invented a model that imagined the computer as a machine with a read-write head and paper tape of any length. People often misunderstand Turing's meaning, thinking that he said that the paper tape must be infinitely long. Of course, Turing knows that anyone with practical experience knows that there is no infinite paper tape in reality, so any such model is useless for modeling real computers. Turing's original paper did not require the tape to be infinite.

Note that because Bitcoin has two stacks, the second stack allows us to map the script to a 2-PDA (2-stack push-down automaton), which is known as Turing completeness.

There are three different ways to achieve Bitcoin Turing completeness:

  1. You can use nested conditions to expand loops in scripts. This makes Bitcoin a "complete Turing machine" in some definitions. This is not strictly Turing complete, because scripts can be infinite, but according to this definition, no computer is Turing complete, so we This useless definition can be ignored.
  2. The payment channel can loop on the second layer above Bitcoin, putting the output value back into the input, and we will only be limited by the maximum serial number in the number of iterations.
  3. The second layer on Bitcoin can be used to spread data for on-chain transactions.

The halting problem means that some programs running on the Turing machine may loop infinitely, and you cannot know whether it will loop infinitely before running a program. A complete Turing machine, such as Bitcoin, is a Turing machine that stops. Therefore, there can be no infinite loop. Therefore, we know that every program must stop, and the downtime problem is elegantly avoided. At this point, the downtime has been transferred to the compiler rather than the computer.

Note that no computer in the real world can loop indefinitely. It will exhaust the memory of the iterator. As long as it calculates the value that someone cares about, the human operator will finally press "control + c" to end the execution of the program, thereby stopping the program. In reality, there can never be a program that never stops. Therefore, Bitcoin has the same type of Turing completeness as any real-world computer. If your script stops too early, increase the number of iterations of your loop and try again.

Another point to consider is that the node does not have to run everything. This is part of Bitcoin's elegant economic design. Nodes are the core, but not everything. The outer machine can perform calculations and put data on the chain. The second and third ways of Bitcoin Turing completeness rely on this mechanism.

Economy, information, religion, work and the invulnerable Goggins

Bitcoin is an economic system. One of Craig's main work can be traced back to his idea of ​​the computer security era in the 1990s: Computer security is always an economic issue. The goal of computer security is not to make a system indestructible, but to make the cost of attacking a computer higher than the benefit. Many computer criminals are extremely rational, and their behavior does not consider moral issues at all, but only cares about profits. If it is unprofitable to attack a system, they will not bother to do it. Bitcoin is a digital cash solution that can make costs and profits clear at a glance, which can be used to protect computer systems. In addition, Bitcoin itself operates based on this principle. The cost of rewriting history is high. In this sense, Bitcoin is an economic system.

There is a basic concept in economics that specialization benefits everyone. If I am good at calculating hashes and you are good at generating Merkle proofs, then our exchange service is a better choice instead of both of us calculating hashes and generating Merkle proofs. This will increase overall productivity, and we are a win-win situation. Bitcoin is not designed to let everyone do everything by themselves. Rather, it is designed to allow each entity to do what it does best, and then trade. This applies not only to the separation of large services (such as nodes and wallets), but also to the separation of services within nodes or other entities.

Computer security, game theory and personal responsibility

Bitcoin is protected by economics and laws. Digital signatures, hash functions, and Proof-of-Work are not all of Bitcoin's security mechanisms. The encryption algorithm makes the cost of the attack greater than the benefit. In addition, in the event of a crime, the traceability of Bitcoin enables the law to recover funds. Please note that these two concepts are quite different from the current popular views on how Bitcoin is safe, so they deserve to be elaborated.

The security of Bitcoin does not come from encryption technology: First, Bitcoin does not use "encryption technology" in the sense of encryption. Bitcoin uses a cryptographic hash function and elliptic curve digital signature algorithm (ECDSA). We call these "encryption algorithms", not "encryption technologies." This distinction is important because people generally think that Bitcoin is "encrypted", but it is not. Nothing in Bitcoin is encrypted. Second, the encryption algorithm does not make the system indestructible. The private key can be cracked by a powerful enough computer. The exponential growth trend of computing speed should continue for a long time. The cost of cracking the key may be very high today, but it is almost certain that the cost of cracking the key will become reasonable in a few hundred years. Therefore, it is possible to crack the encryption algorithm. In addition, the transaction is also in plaintext and can be modified at will. Therefore, encryption technology is obviously not the reason why the system can maintain security.

The security of Bitcoin comes from economics: encryption algorithms are used to adjust the cost of attacking the system. The cost of reversing the hash function is high, but it is not impossible. Reverse digital signature is very expensive, but it is not impossible. Bitcoin is an economic system whose security changes anytime and anywhere, and the cost of attacking the system is always higher than the benefit. Reasonable people will not attack Bitcoin. But this does not mean that it will not be attacked under other circumstances. Irrational actors may attack Bitcoin, but in the process, they are likely to run out of funds. It is not simply tampering with the plaintext transaction and sending the transaction to others, because the benefits of doing so are lower than the cost.

Proof of work is a de-anonymity mechanism, not a security mechanism: the proof of work and the adjustable difficulty adjustment algorithm (DAA) are used to keep the block time at about 10 minutes. However, this is the average time, some blocks will be less than 10 minutes, and some will be more than 10 minutes, which is random. It is very important for nodes to pass their blocks to other nodes as quickly as possible so that they can continue to build the next block on top of this block. Therefore, it is possible to triangulate nodes. If you take certain measures to hide the source of the signal, such as distributing the block globally before passing it to other nodes, this will reduce your chances of winning the block. Sex. Therefore, proof of work can de-anonymize nodes, which encourages nodes to become professional and regulated enterprises.

The security of Bitcoin comes from the law: A common misconception about Bitcoin is that it makes anarchy possible. But in fact, it's not. The law is essential for the recovery of funds in the event of fraud or theft. Because all bitcoins can be tracked, and because of the transparency of the blockchain, all businesses have the incentive to act in compliance with the law. The law can use criminal courts to recover stolen bitcoins or other digital assets built on bitcoins. This is very important, so it’s worth repeating. To recover the stolen Bitcoin, the law is necessary. Bitcoin does not resist the law. The traceability of bitcoin enables the law to recover stolen bitcoins. Bitcoin supports the law and is a legal innovation that enables the law to be used for digital cash and other digital assets.

Bitcoin history

In the early 1980s, David Chaum was the first to outline a digital cash plan. I asked Craig if this was the origin of Bitcoin, and his answer was "not exactly" because their philosophies are different. Chaum prefers the "cryptopunk" movement that requires anonymous cash, but the design of Bitcoin clearly shows that it is non-anonymous. Bitcoin is private, because the user's identity is not actually located on the blockchain, but because everything will leave traces, the identity can always be proven. In Craig's view, the main reason for the failure of DigiCash (Chaum's company) was its obsession with anonymity.

From the late 1990s to the beginning of the 21st century, Craig became obsessed with some research, which was later Bitcoin. In the end, he earned 17 degrees in subjects related to Bitcoin. He failed many times before the Bitcoin design was completed and the software was released. The final solution needs to meet the constraints of many disciplines, especially computer science, economics, and law.

Roughly speaking, there are the following constraints:
Computer science: Bitcoin needs to be technically feasible and needs to be flexible enough to allow the market to solve as many problems as possible. It needs to be expanded globally.
Economics: Bitcoin's incentive mechanism needs to be designed to encourage people to maintain and develop the network.
Law: Bitcoin must operate within a legal framework. It requires a variety of technologies to allow users and companies to comply with various related laws and regulations. In addition, it also needs to be able to use laws on the Internet's information market.

This is not a complete list of all related disciplines, but a high-level summary of the types of problems that must be solved and their discipline span. Craig personally researched these disciplines and solved all the problems.

Bitcoin was designed and released in January 2009. From then until now, in short, many people involved have misunderstood Bitcoin (many of them deliberately), and they believe that Bitcoin is biased towards anarchy and crime. However, no matter the past or the present, this is not the original intention of Bitcoin. Bitcoin became more and more popular, but Craig refused to enter the public eye, which annoyed him later and allowed this misunderstanding to deepen. We have come all the way to today, and Craig, me and others are doing our best to correct these misunderstandings by educating ourselves and others on all the theoretical backgrounds related to Bitcoin.

The future of Bitcoin

The future of Bitcoin will be an economy with no more than 2016 nodes (because this number refers to how many nodes can actually find a block within a given DAA interval). In this economy, companies will solve all problems in a professional way. In other words, this is an economy that will grow.

There will be no situation where everyone runs the node, and there will be no situation where everyone is equal. Nodes will become enterprises like infrastructure in other industries. Bitcoin will become the underlying infrastructure of the world economy. Most people will not know that they are using Bitcoin, but it will be "hidden" under most business activities.

Computers will be more secure, the transparency of enterprises and governments will increase, criminal acts will be more easily investigated, the efficiency of various industries will increase, and a lot of cost savings will be achieved.

Throughout the series, Craig and I spent a lot of time discussing classical liberalism. I agree with Craig’s idea to increase people’s recognition of classical liberalism through education, and to encourage social development over time to enhance personal responsibility.

to sum up

Through responsible actions, we are improving the education status of the Bitcoin industry, and to the greater extent, the education status of the entire world. What we pursue is lifelong learning and entrepreneurial spirit, and show our attitude to the world. A growing ecosystem of responsible people will help the world. We will work together to raise the world to a new height.


The Bitcoin Association has written and collected accurate and easy-to-read Bitcoin science articles to help developers understand and learn the correct Bitcoin knowledge.
————————

Guess you like

Origin blog.csdn.net/BitcoinSV/article/details/108759123