With the cryptocurrency flooding, a technology hidden behind it has drawn more and more attention. It is now a blockchain that has been hotly debated.
Bitcoin and blockchain
In 2008, Nakamoto released an essay titled "Bitcoin: A Peer-to-Peer Electronic Cash System," which was chosen to be released this year during the financial crisis, perhaps with no further implications. He believes that the most fundamental issue with traditional currency lies in trust. Banks must give people confidence that it can help us manage their money. However, banks are using the currency to create a credit bubble and inflation has diminished wealth. At first, Nobunobu defines Bitcoin as a peer-to-peer electronic cash system. The purpose is clear: I hope this system does not rely on any one center, such as the central bank, so this system is definitely a distributed system.
The concept of blockchain was first proposed by Nakamoto when designing Bitcoin and was the first time blockchain technology had been used and most successfully deployed. Bitcoin is a business scenario. The blockchain is the technology foundation for the business scenario of bitcoin. To understand the blockchain, we first understand the operating mechanism of Bitcoin.
The orange square in the figure is each node in this system, scattered all over the world. It can be considered that each node runs a Zhongbian Bitcoin open-source client and the whole network is formed between nodes.
Why go to the center of the center?
For safety and trust. First of all, to say safety, this should be well understood. For example, now we use Alipay, all the transfer payment behavior must go through Alipay this center once the problem, all users are affected; the center once hacked, the data is very easy to be modified; the distributed system, Every node in the world is a client and a server. Unless more than 51% of nodes are tampered with at the same time, all the changes are invalid and are "autonomic." All the data tampering is very difficult. Security assurance also greatly solve the problem of trust, but the main problem is data control, centralized system, is in a center, such as our transaction data is in Alipay, the ghost knows if there are betrayed , Have not been used; and distributed systems, all the data transparent, does not belong to any one center; everyone is the data producer and owner.
Why bitcoin system can run effectively?
First, the scarcity of bitcoin; Second, the reward system. First of all, to say two important roles: "miners" and users.
Yes, miners are the maintainers of every node on the bitcoin system. Nakamoto did not personally deploy so many nodes, but through an incentive mechanism that everyone can take to maintain and expand the system. The machines that run on this node are also called "mines," and the miner's owner is the miner. Records generated during the user transaction, if a node to help verify and record, then the mine owner will get a bit of bitcoin as a reward. Specific by the miner to record? This is more interesting.
Mining
When the transaction occurs, the whole network node can monitor, pass the verification records or into the node memory, and then all the mining machines are in the process of "calculation", the time comes, the batch of transaction records will be assigned A random number, each node in the "hard" to find this random number, who first find, who got the accounting rights of these transactions, and then began to verify, after verification packaged into a data block, that is, we say (Finally mentioned the concept of the block, do not worry, then slowly expand.), And then start broadcasting the entire network, broadcast a copy of this block, tell other nodes not to work hard, I have to find And dug mine, we see if it is "true", and then stop mining other nodes, one by one verification, more than 51% of the nodes are verified by adding this block to the end of the current blockchain ,Transaction complete.
Bitcoin value
Why do some people are willing to deploy mining machine mining, mining reward really valuable? First, bitcoin is scarce, and it is invaluable if Bitcoin is infinitely generated. The total amount of bitcoin is 21 million. Starting in 2009, each block generates 50 rewards and half rewards every 4 years. Calculated in terms of the speed at which bitcoin generates a block every ten minutes or so, about 2134 bitcoin is sent out. In addition bitcoin is not controlled by a central, when most people believe it has the value of tokens, most people are willing to trade when it is valuable, such as banknotes, it is a piece of paper, when most people Believes and recognizes its value and circulation, it is no longer as simple as a piece of paper.
Core idea
Now we have a summary of the above.
- Bitcoin is a fully distributed system consisting of many nodes.
- Each node has accounting capabilities.
- Each record requires notarization, the whole network of nodes consensus, the consensus is the above said "mining", also known as the amount of workload consensus (consensus in addition to "mining", there are many, then introduce. )
- As transactions continue to evolve, blocks continue to be produced, and chunks of chunks on each node are chronologically linked to form a block chain.
- The system involves several core concepts, nodes, chains, blocks, records, the relationship is as follows:
Here, we have a rough understanding of the prototype Bitcoin system, here we have the core concepts of this system are introduced.
recording
Becoming a user in Bitcoin is as easy as getting a wallet address, at https://blockchain.info/wallet/#/signup. Having a wallet address allows you to send bitcoins to any wallet in the world, provided you have bitcoin. Transaction records are encrypted, anonymous, each user has a unique private key, the use of private key transaction time to generate digital signatures, transactions between users to produce a record. A record is the smallest unit of the entire blockchain, an operation will generate a record.
Block
A block consists of a block header and a block body.
Block head
Version: version number
Hash: The current block hash value
Previous Block: The predecessor block hash value
Subsequent block hash (Next Block (s)): Subsequent block hash value
The total number of transactions (Number Of Transactions): the number of transactions
Timestamp: Timestamp
Nonce: Random number, in Bitcoin system, "mining" is to find this random number.
Merkel Root Merkle Root: Merkel root of the transaction
The block body is a record list.
Merkle Root come from?
First talk about the role of Merkle Root, any changes in transaction records, this value will change, that is, the value is generated by the transaction record as a variable.
Generate the principle, as shown below:
This is a binary tree, called the Merkel tree (also called hash tree), the hash value of all records as a leaf node, the hash value of the two leaf nodes together
Again a hash calculation to generate the parent node; until the final root. The root hash value is Merkle Root.
A block format:
chain
All blocks have a chain in the order of Previous Block or Next Block. Blockchain systems, such as Bitcoin's blockchain system, maintain one such chain, and the main concept of a blockchain is that.
Blockchain workflow
Above we generally understand the transaction records, blocks, chains and other concepts, and now we string together these concepts to see the blockchain workflow.
- When the transaction records sent node broadcast the entire network.
- Node listened to the new transaction.
- The node verifies the transaction record and puts it in the node buffer.
- Nodes start "calculation" & quot ;, get the right to account, package records generated block, and to the whole network broadcast consensus.
- The consensus block is added to the end of the block chain.
As mentioned above, "full network broadcast" does not actually require that all nodes of the entire network be received, as long as most of the nodes are on the line. The blockchain system is fault-tolerant to those missing and lost blocks. If a node receives a specific block, the node will find its own missing block and can submit its own download area Request for blocks.
Consensus mechanism
Above process, the most important is the block consensus mechanism. Consensus refers to the process of making most nodes (at least 51%) across the entire network think the data is really reliable. At present, the consensus mechanisms are PoW, PoS, DPOS and PBFT.
Bitcoin is used in workload proof algorithm, that is, the above-mentioned "Mining", here to focus on "mining".
Node monitor the entire network to record data, through the basic validity of the record after the temporary storage, and then began to work load proof. Recall the format of the block we introduced earlier, where the block header has a random number field: Nonce. The node miner constantly tries different random numbers until it finds the random number, then packs the record into a block, broadcasts the block, and passes the verification of other nodes to link to the block chain. Bitcoin PoW, an average of every 10 minutes to find a node (produce) a block, if two nodes to find a block at a time, then the network will be based on the follow-up node and block generation to decide, give six Generate a block of time to determine who will be the first to find who has accounting rights.
The area of application of blockchain
With the maturity of the blockchain technology, the application field based on the blockchain technology should still be relatively broad.
Blockchain classification
Blockchain in accordance with the application scenarios, data read and write range to be divided into three categories: public blockchain, community blockchain and private blockchain.
Public blockchain: refers to the world can be involved in any person, anyone can trade, read and write, consensus blockchain. The shared blockchain is fully distributed, with open data, high user engagement, ease of deployment, but system reliance on rewards. Application scenarios such as bitcoin, Ethereum and so on.
Community: also known as the coalition chain, such as many financial institutions, each as a node, together form a blockchain distributed system. To the blockchain it is limited to the nodes involved in these institutions, or the consensus process. Typical scenarios such as IBM's Hyper Ledger (HyperLedger), Tencent and many other Internet giants have been involved; another example Tencent cloud micro bank, peace and technology more than 20 financial institutions and technology companies co-sponsored the establishment of the financial block Chain Alliance ("Chain Alliance"), the first attempt in the country to explore, research and development, to achieve financial institutions for the financial sector blockchain.
Completely Private Chains: A completely private blockchain refers to a blockchain whose write access is in the hands of only one organization. Read access or open to the public, or to any degree of restrictions. An Important Feature of the Block Chain Chain To solve the problem of centralized trust, individuals feel that at this stage, there is no egg in the private chain.
How to determine the need for blockchain?
The current blockchain problems
Blockchain technology in the face of opportunities, it also faces many problems and challenges.
1, the block chain is too large: With the development of the blockchain, node storage blockchain bigger and bigger, storage and computational burden is also increasing. For example, bitcoin, the full bitcoin blockchain size has more than 64GB, the client to synchronize the complete data, it may be three days and nights are synchronized.
2, synchronization confirmation time is too long: the consensus of the whole network node mechanism, the consensus process of time there are still many challenges. For example, bitcoin once confirms the time is about 10 minutes.
- The development of blockchain has been restricted by the existing system: decentralization and autonomy, which have weakened the concept of state regulation and brought about an impact on the traditional central institutions, such as the Central Bank. This is what is now a variety of xx coins in the country less to suppress the reasons.
Looks like this would be incredibly informational if the grammar were better intelligible.
Downvoting a post can decrease pending rewards and make it less visible. Common reasons:
Submit
Originally prepared to write the Chinese version, because English is not good can only be written like this.
Downvoting a post can decrease pending rewards and make it less visible. Common reasons:
Submit