Photo: By Click_Vision From Instagram

On December 26, 2017, I wrote a “tech Trends Forecast for 2018” about blockchain: \

Blockchain is an invention that could change the world. Blockchain is the origin of bitcoin, but not limited to the coin community. Blockchain technology is a practical solution to problems such as storage, verification and data protection. Blockchain can be thought of as a decentralized, ultra-secure database. More technically, blockchain is a distributed peer-to-peer cryptographic-based shared ledger that could be used in financial services, insurance, healthcare, government, and more. 2018 should be the year when blockchain technology takes off and matures.

Unexpectedly, at the beginning of 2018, blockchain technology is like the highest flame at the top of the flame on the road to the west. A lot of people say it’s so hot, I didn’t know that. In fact, the hottest year in 2017 was Bitcoin, and the blockchain’s pull up curve did not happen until January, as can be seen from the wechat index of blockchain:

The best thing to do when a wave hits is to see it, rather than ignore it, or just ignore it. Read some relevant information recently, have a bit more specific understanding, then write a vernacular. The reading time is about nine minutes.

What exactly is blockchain? People who don’t know the truth often turn to Wikipedia, which says:

Blockchain (English: Blockchain or Block chain) is an intelligent peer-to-peer network that uses a distributed database to identify, disseminate and record information, also known as the Internet of value. Satoshi Nakamoto proposed the concept of “blockchain” in the Bitcoin White Paper in 2008, and founded the Bitcoin social network in 2009, and developed the first block, namely “Genesis Block”.

After reading it, do you find that they are all Chinese characters, why can’t you understand what they mean? So the concept of blockchain still needs to be explained. First of all, it should be made clear that blockchain is a set of protocols and specifications. In English, it is called Protocol, not a specific code or project. By understanding this protocol, you can implement it in different languages and technologies, which is no different from defining an API and implementing it in different technologies.

But blockchain may look different to people in different fields. We come to different conclusions from different angles. People in finance think of blockchain as a distributed ledger, a distributed decentralized accounting system. Security and cryptography people will say that blockchain is a peer-to-peer network built on cryptography. When we programmers learn about blockchain technology, we think of it as a distributed database that guarantees ultimate consistency.

Billing system

For ordinary people, the bookkeeping system is the easiest to understand. Let’s start with books. For example, when we do business together, there is always an account book, and at first this account book is managed by Mr. Accountant. But one person in charge, there will always be imbalance in accounting (such as embezzlement), so we began to take turns in charge. There are also problems with this approach. Once data is lost or the books are corrupted while someone is keeping and keeping the books, it can be unclear what the true cause is. In the end, they decided on a new way of keeping accounts. Each person kept his own account book. Anyone who changed his account book had to tell everyone else, and everyone else had to make a note in their own account book. Anyone who finds a new account wrong can reject it. In the end, the accounts agreed by the majority prevail.

This is a distributed decentralized accounting system. But this kind of practice time is long still can have a problem, somebody every day remember, somebody is lazy do not remember, can produce unfair. So everyone decided to roll the dice every morning and decide who would keep the bill for the day according to the number. The others would check it and copy it if there was no problem. Also, the bookkeeper of the day gets a little bonus (this is mining).

Decentralized distributed database

The above accounting system is realized with software technology, which is a decentralized distributed database.

What is the centralization? The early Internet mostly adopts CS architecture, a Server N clients, communication between Client and Server, system reliability heavily depends on Server, this is called neutral.

With the increase of service complexity, the server also starts to split, such as horizontal and vertical expansion, read and write separation, etc. These are commonly used distributed architecture systems. System reliability depends on the hot backup and disaster recovery capabilities of distributed systems. Although the server is distributed at this time, it is still neutral. Most business companies adopt similar structures and models.

What about decentralization? The database does not belong to any organization or administrator. As long as the server side is controlled by an organization or administrator, there is a risk of downtime or data tampering. Blockchain and P2P network communication technologies are finally decentralized. What blockchain does is store information, you can think of it as a database, and anyone can set up a server through a P2P network, access the blockchain network, and become a node. Now everyone is equal, everyone is a Server, so there is no Server, each node is both producer and consumer.

You can read and write data to any node, and once written, it becomes history, and eventually all nodes synchronize data to keep the “ledger” consistent.

Blockchain has no administrator, no need for human review and intervention. So if anyone can write data, how can the reliability of the data be guaranteed? What if the data is tampered with? Don’t worry, P2P networks are only for information communication, and there are consensus algorithms and encryption algorithms to ensure data security.

Consensus algorithm

For consensus algorithms, the Byzantine general problem, you can refer to this article, which is long but easy to understand.

Distributed Consistency and Consensus Algorithms (DRAVENESS. Me/Consensus)

In a nutshell, consensus algorithms guarantee majority rule, which is what I wrote in my bookkeeping system: “In the end, the majority agrees on the account.” What most people accept is the truth. This may sound scary, as we often know from literature and historical experience that truth is often in the hands of a few. But in a P2P network, there are countless nodes, and for most of them to do evil together, unless they are all controlled by some organization. It’s highly unlikely, though not impossible.

Generally speaking, consensus algorithm solves the process of reaching consensus on a Proposal. The meaning of a proposal is very broad in distributed systems, including the order in which multiple events occur, the value of a key… Wait, any message that needs to be agreed upon can be considered a proposal.

With consensus algorithm and associated encryption algorithm, data security and consistency can be guaranteed.

Why do they mine?

When it comes to bitcoin, we hear a lot about mining and mining machines. So why do they mine? Mining is actually an incentive and competition mechanism.

In a blockchain system, some nodes are always selected to collate, validate, package, and broadcast the changes, which can be very resource-intensive, so there are incentives. The nodes in charge of packaging are rewarded by the system, which is similar to points and, in the case of the Bitcoin system, rewards bitcoins. With rewards, many nodes hope to get such rewards, so some blockchain systems, such as Bitcoin, will design a competition mechanism, so that each node with their own computing power and resources to grab the opportunity to capture the data packaging, will be rewarded, namely bitcoin. The competitive process is mining.

What is arithmetic power? It’s the computer’s ability to generate hash collisions every second. That is, how many hash collisions can the miner do per second. The higher the math, the more reward you get.

The future of blockchain

Many people think that the only application of blockchain is issuing virtual currency. Recently, the domestic and foreign markets are also witnessing a wave of events. For example, Eastman Kodak, which has a history of more than 100 years, announced the launch of KodakCoin and KodakOne platforms based on blockchain technology, allowing photographers around the world to better control the copyright and transaction of pictures. And then the stock price soared…

After understanding the technical characteristics of blockchain, we know that the capabilities of blockchain go far beyond virtual currency. In the future, blockchain will be involved in financial services, logistics, insurance, medical care, sharing economy and smart contracts.

Prosperous fall, wash all lead hua, all technology will experience the baptism of time. Technologies that have exploded, declined, and matured are the ones that have real vitality.


To learn more about blockchain technology in detail, an article is not enough. We recommend a free live class for interested readers.

Sharing is Feng Guibin:

2006-2012 Radar Communication Laboratory of Beijing Meteorological Bureau 2012-2015 Beijing Kangkang Shengshi Information Technology Co., LTD. Responsible for BLT communication development. He is now working for LinkJapan Inc

Research interests: IoT/ Big Data, Deep Arning, self-driving

Content of live class:

1. What is blockchain? Introduce the concept and basic technical characteristics of blockchain and other relevant content

Introduce the problems solved by blockchain and talk about the development history of blockchain

3. Blockchain fundamentals Introduces the operation principle, public chain, private chain, alliance chain, commonly used encryption algorithms and other mechanisms, as well as the role of forks and miners in the chain

4. Disadvantages of blockchain

5. The typical application of blockchain — digital currency led by Bitcoin

Future development of blockchain technology application blockchain 1.0 era Blockchain 2.0 era Blockchain 3.0 era

Live time: 20:30 PM on January 24, 2018

Registration: Long press to identify the QR code

Or add [Sky Blockchain Technology Sharing Group] group number: 666973279

\