Annotation of core concepts of blockchain
Copyright statement: This article is an original article of hard work, all major media platforms are updated synchronously. Welcome to reprint, please indicate the source, thank you
Since the second half of 2017, due to several ups and downs in Bitcoin, and several vocalizations of bitcoin by the relevant national and state departments, the term blockchain has appeared very frequently in major media. 2017 has passed. In a blink of an eye, we come to 2018. 2018 is the year when the blockchain is launched. Many companies have launched their own blockchain products. Nowadays, the blockchain is in a stage of ubiquity. Following the pace of the times, I will introduce the blockchain according to the following mind map.
Second, the definition of blockchain
Narrow sense: A blockchain is a chained data structure that combines data blocks in a chronological order in a sequential manner, and is a tamper-proof and unforgeable distributed ledger guaranteed by cryptography.
Broadly defined: Blockchain technology uses block-chain data structures to verify and store data, uses distributed node consensus algorithms to generate and update data, uses cryptography to ensure the security of data transmission and access, and consists of automated script code A new distributed infrastructure and calculation method for programming and manipulating data with smart contracts.
Popular understanding: Blockchain technology is a way for all individuals in the entire system to participate in bookkeeping. All individuals (members) in the system have a database that is exposed inside the system. We can think of this database as the ledger of the entire blockchain. In daily life, most systems are centralized, for example: we go to the bank to withdraw money, and the bank keeps the account. WeChat we use, Tencent is responsible for keeping accounts. The Alipay we use is Ali's bookkeeping. In a blockchain system, each individual (member) in the system can have the opportunity to participate in bookkeeping. If there are data changes within a certain period of time, each individual (member) in the system can keep accounts. The system will judge the fastest and best individual (member) in this period of time, and let him record the contents of the record Write to the ledger, and make the contents of the ledger public to the entire system during this time, any individual (member) can view it at any time. In this way, each individual (member) in the system has a complete account book. In this way, blockchain technology solves the intermediary credit problem, which is also a major breakthrough in blockchain. Before the blockchain, Bitcoin may have been well known. Bitcoin is a practice of blockchain technology, and blockchain is not Bitcoin.
3. Characteristics of blockchain
Decentralization: Due to the use of distributed accounting and storage, there is no centralized hardware or management organization. The rights and obligations of any node are equal. The data blocks in the system are jointly maintained by the nodes with maintenance functions in the entire system. .
Openness: The system is open, except that the private information of all parties to the transaction is encrypted, the blockchain data is open to everyone, anyone can query the blockchain data and develop related applications through the open interface, so the entire system Information is highly transparent.
Autonomy: The blockchain adopts consensus-based specifications and protocols (such as a set of open and transparent algorithms) so that all nodes in the entire system can exchange data freely and safely in a detrusted environment, making the trust of "people" changed. Became a trust in the machine, any human intervention will not work.
Non-tampering and encryption security: Once the information is verified and added to the blockchain, it will be permanently stored. Unless more than 51% of the nodes in the system can be controlled at the same time (a few are subject to the majority), the database on a single node The modification is invalid, so the data stability and reliability of the blockchain is extremely high.
Anonymity: Because the exchange between nodes follows a fixed algorithm, its data interaction is trustless (the program rules in the blockchain will determine whether the activity is valid by itself), so the counterparty does not need to let the other party generate it by public identity. Trust is very helpful for the accumulation of credit.
4. The development of blockchain
Blockchain 1.0-digital currency
Blockchain 2.0-Smart Contracts and Finance (Digital Assets)
Smart contracts are based on blockchain technology and are self-executing treaties; once conditions are met, actions or payments can be triggered automatically. In the near future, smart contracts will be able to use real-time information such as asset GPS data to trigger events, such as transferring ownership and funds.
Blockchain 3.0-Pan-industry decentralized application (Blockchain+)
V. Types of blockchain
Public Blockchain (PublicBlockChains)
Public blockchain means that any individual or group in the world can send a transaction, and the transaction can be effectively confirmed by the blockchain, and anyone can participate in its consensus process. The public blockchain is the earliest blockchain and the most widely used blockchain at present. The major digital coins of the bitcoins series are all based on the public blockchain. There is only one block corresponding to the currency in the world. chain.
Consortium (Industry) Blockchain (ConsortiumBlockChains)
Industry blockchain: A group of designated multiple pre-selected nodes as bookkeepers, the generation of each block is determined by all pre-selected nodes (pre-selected nodes participate in the consensus process), other access nodes can participate in transactions, but But ask the bookkeeping process (essentially managed bookkeeping, just become distributed bookkeeping, how many nodes are pre-selected, how to determine the bookkeeper of each block to become the main risk point of the blockchain), anyone else can Use the open API of the blockchain to conduct limited queries.
Private Blockchain (privateBlockChains)
Private blockchain: only use the general ledger technology of the blockchain for bookkeeping. It can be a company or an individual, and enjoy the write permission of the blockchain. The chain and other distributed storage solutions are not much the difference. At present (Dec2015), the conservative giants (traditional finance) all want to experiment with private blockchains. The application of public chains such as bitcoin has been industrialized, and the application products of private chains are still being explored.
Sidechains are not specifically referring to a certain blockchain, but refer to all blockchains that comply with the sidechain protocol. This term is relative to the Bitcoin main chain. The side chain protocol refers to a protocol that allows Bitcoin to be safely transferred from the Bitcoin main chain to other blockchains, and can be safely returned to the Bitcoin main chain from other blockchains. Obviously, all existing blockchains such as Ethereum, Litecoin, and Darknet coins can become sidechains as long as they comply with the sidechain protocol.
Sixth, the technology involved in blockchain
Encryption: Encryption is simply the process of converting the original information through an algorithm, and the receiver of the information can decrypt the ciphertext by the secret key to obtain the original text. The encryption algorithm can be roughly divided into three sub-types according to whether the encryption keys of the encrypting party and the decrypting party are the same: symmetric encryption, asymmetric encryption, symmetric encryption and asymmetric encryption.
Hash (hash): Hash can achieve the mapping of data from one dimension to another dimension, usually using a hash function to achieve this mapping. Generally, the industry uses y = hash(x) to express. The hash function implements operation on x to calculate a hash value y.
Distributed ledger: A distributed ledger is a database that records transaction information and is shared and synchronized among multiple computers without centralized management and control. All parties have a copy of the same record. If there is any new content, all records will be automatically updated immediately.
P2P dynamic networking: P2P technology is the cornerstone of blockchain technology. When it comes to P2P, many people will think of concepts such as online lending and information intermediary, and they will think of platforms such as Lufax, Yirendai, and Renrendai. In fact, this P2P as the cornerstone of the blockchain is not the other P2P, but refers to the peer-to-peer network.
PoW (Proof of Work) proof of work: relies on machines to perform mathematical operations to obtain accounting rights, resource consumption is higher than other consensus mechanisms, and it is weakly supervisable. At the same time, every time a consensus is reached, the entire network needs to participate in the operation. Performance and efficiency comparison Low, fault tolerance allows 50% of nodes in the entire network to make mistakes.
PoS (Proof of Stake) equity proof: The main idea is that the difficulty of obtaining the node's accounting rights is inversely proportional to the rights and interests held by the node. Compared with PoW, to a certain extent, it reduces the resource consumption caused by mathematical operations, and the performance is correspondingly obtained. Improvement, but it is still based on the method of hashing competition to obtain accounting rights, and the supervision is weak. The consensus mechanism has the same fault tolerance as PoW. It is an upgrade consensus mechanism of Pow. According to the proportion and time of each node's tokens, the mining difficulty is reduced in equal proportions, thereby speeding up the search for random numbers.
DPoS (Delegated Proof of Stake) equity authorization certificate: Unlike Bitcoin's specific consensus mechanism, DPoS has a built-in real-time voting system for equity holders, just like a shareholders meeting that will never be closed at any time, all shareholders are in Vote here to decide company decisions. Compared with Bitcoin, the voting power of the BitShares system is firmly in the hands of shareholders, not employees.
PBFT (Practical Byzantine Fault Tolerance) actual Byzantine fault tolerance: (n-1)/3 fault tolerance is provided under the premise of ensuring liveness & safety. In distributed computing, different computers try to reach consensus through message exchange; but sometimes, the coordinator computer (Coordinator / Commander) or member computer (Member / Lieutanent) on the system may cause system errors and exchange wrong messages, resulting in Affect the final system consistency.
Application of traditional distributed consensus algorithms: Most of the traditional distributed consensus algorithms do not consider Byzantine fault tolerance (except Byzanetine Paxos), that is, assume that all nodes only have non-human problems such as downtime and network failures, and do not consider the problem of malicious nodes tampering with data . The traditional distributed consensus algorithm is oriented to the log (database), that is, the more general case, and the blockchain consensus model is transaction-oriented, so strictly speaking, the traditional distributed consensus algorithm should be under the blockchain consensus model layer.
Smart contract: A smart contract is a contract that uses computer language instead of legal language to record terms. Smart contracts can be automatically executed by a computing system. If the blockchain is a database, the smart contract is the application layer that enables the blockchain technology to be applied in reality. The contract in the traditional sense is generally not directly related to the computer code that executes the contract. Paper contracts are archived in most cases, and the software executes the contract terms written in computer code. The potential benefits of smart contracts include lowering the costs of signing, executing, and monitoring; therefore, for many contracts related to low-value transactions, this is a significant reduction in labor costs. In layman's terms, after the contract maker formulates the contract, the contract content is converted into a programming language and stored on the blockchain platform (requires the private key returned by the blockchain to the creator for signing), and the contract is located in the area through P2P. The blockchain spreads throughout the network, and each node will receive a copy (equivalent to countless individuals saving and supervising the content of this contract). When the time is right and the contract content is met, it will automatically execute this contract.
Incentive mechanism: Taking Bitcoin as an example, mining in Bitcoin is recording transaction information, and the first transaction in the block that is successfully mined each time is called a coinbase transaction. This transaction is for the miner in the Bitcoin network. Reward, this reward is halved every four years, we have reached the third four years, so the reward for each block is 12.5 bitcoins. We know that the upper limit of Bitcoin is 21 million. When the upper limit is reached on a certain day, the system can no longer use the generated bitcoin to reward the miner. At this time, the system will use the transaction fee to reward the miner.
Cross-chain technology: Cross-chain technology is the key to the realization of the value network. It is a good medicine to rescue the alliance chain from scattered and isolated islands, and it is a bridge for the expansion and connection of the blockchain.
7. Blockchain involves industry
Application service layer
Programmable currency: In programmable currency, digital currency is a concept that we are more familiar with. Programmable currency is digital currency, which is different from electronic currency. It is a form of value data expression. Through data transactions and functions of transaction medium, accounting unit and value storage, it is not the legal currency of any country or region. There is no government authority to provide guarantee for it, and the above functions can only be achieved through agreements between users. Electronic currency is an electronic transaction that digitizes fiat currency to support fiat currency, so the two are not equivalent. The current mainstream of digital currency is decentralized digital currency represented by Bitcoin.
Programmable Finance: Programmable finance applications refer to the many applications of blockchain in the pan-financial field. Based on the programmable characteristics of the blockchain, people try to add smart contracts to the blockchain system to form programmable finance. The core of the smart contract is to use a program algorithm to replace the person to execute the contract. These contracts require the combination and coordination of automated assets, processes, and systems. The contract contains three basic elements: offer, commitment, value exchange, and effectively defines a new application form, which makes the blockchain expand from the initial currency system to other application areas of finance, including in the areas of equity crowdfunding, securities trading, etc. Start to have applications gradually.
Programmable society: Programmable social application means that with the development of blockchain technology, its application can be extended to any field in need, including auditing, medical, voting, logistics and other fields, and then to the entire society. Blockchain is the core of the Internet of Value, and can confirm, measure and store the property rights of every information and byte representing value in the Internet. The core of the Value Internet is a global distributed accounting system constructed by the blockchain. It can not only record transactions in the financial industry, but can record almost any valuable things that can be expressed in code.
Intermediate protocol layer: consensus mechanism, incentive layer, contract layer.
Basic network services: data layer, network layer.
Blockchain is a relatively complicated system. This article only briefly introduces some of the core concepts. If each concept mentioned in the article is studied in depth, a more in-depth article can be formed. The article quotes a lot of popular explanations on the Internet and their own understanding. The pictures are all drawn by hand. If you need the original manuscript, you can contact me. Welcome to reprint this article, please indicate the source. Article mind map: https://www.processon.com/view/link/5a990de1e4b09ac3a0c58b68