Miner VS bitcoin counterfeiter

Calvin Cheng
2 min readOct 20, 2017

--

http://gb.cri.cn/mmsource/images/2014/01/09/9abd3e6233f54af7ba12246f12249cfc.jpg

Yesterday, I wrote about the double-spending problem which can cause the bitcoin network to be divided into 3 different regions. If this situation happens in the cash system, only one person among Sam, Leo and Helen hold a real banknote. Other two people must hold counterfeit banknotes. By using currency detector, we can easily find out who is using counterfeit money and solve the double-spending issue. However, there is no currency detector in bitcoin system. Holding bitcoin just means a record stored in nodes specifying someone as a recipient of a transaction initiated by others. (See diagram below) Previously, I mentioned nodes store account balances which is just an analogy for beginners to understand. They actually store transaction records instead of account balances.

In the perspective of nodes, all record#006 are valid as long as the record#005 really exists. Therefore, that 10 bitcoins held by Sam, Leo and Helen are not similar to the counterfeit money we understand as usual. To tackle the double-spending problem without splitting the bitcoin network, we need someone to judge which record#006 can be stored in nodes. Yet, we cannot just assign a particular node to do this as it gives too much power to that node which violates the principle of decentralization. What if every node takes turns being the judge? In the bitcoin network, the judge is called the miner. The main job is to collect transactions created within past 10 minutes. If the miner is located in Hong Kong, only the record#006 sent from Hong Kong is included in its 10 minutes collection and passed to other nodes. Now all nodes in the bitcoin network receive the same version of the record. Apparently, the double-spending problem is solved!

Wait a minute, why the judge is called the miner? How can a node be the miner? Please clap for this post and I will tell you more! 😊

--

--

Calvin Cheng
Calvin Cheng

Written by Calvin Cheng

Blockchain Engineer • DevOps • Certified Hyperledger Fabric Administrator (CHFA) • Full Stack

No responses yet