Understand Blockchain Mining in simple plain English language.
No, that is not how Blockchain Mining is done!
The verification of the transactions in a blockchain network is what Blockchain Mining is.
Transactions are simply sending any amount in bitcoins or any currency using Blockchain network.
You might have heard people are buying, selling or sending tokens to people using cryptocurrencies like Bitcoin, Dogecoin. Mining is the validation of these transactions, to check if the transaction is valid or not.
As you know, we have banks in the banking system to authorize and validate if you have the valid balance required to send any amount to the receiver.
For instance, say you have an account with Bank of India and the total balance in your account is 50$. If you try to send 55$ to any person, the bank server will throw an error saying that you do not have sufficient amount.
Similarly, in a blockchain network — the process to validate the transactions( like checking if you have sufficient amount to transfer) is what Blockchain Mining is.
Let’s take this understanding to the next level. It is the responsibility of software and computer hardware to mine any transaction. To validate a transaction you need people to set up the required software and hardware so that mining can be done.
In a banking system, it is the bank who have the complete control to validate any transaction. In a Blockchain network, no such person or group of people have the authority. It is the responsibility of the hardware and software in the network to decide if a transaction is valid. So Decentralization means the opposite of centralization i.e. nobody has the control. It’s the running software and hardware which validates a transaction. That means you can setup your own Mining computer (also called node) and start validating the transaction. People are awarded tokens to mine, and that is the reason we see more people getting into the business.
Blockchain uses a very complex mathematical problems to mine. This process consumes resources, takes time and capital to get started. So just having a computer would not solve the problem. You will have to have the best of system configurations to solve the mathematical problem. In a blockchain network, there are multiple computers fighting to solve the mathematical problem. Hence there is a lot of competition among nodes to win the transaction mining, so that there’s profit.
Let’s discuss this mathematical problem which the computers(also called nodes) are trying to solve.
2 * a number = 6
The multiplication of 2 with a number results in 6. What is that number ?
This is pretty straightforward, we know the number is 3 .
2 * 3 = 6.
This is the kind of mathematical problem which a node has to solve to start mining any transaction, but the problem would be more complex, obviously.
Let’s look at a complex problem now which is very closer to the actual mathematical problem :
The SHA256 hash value for the word “hello‘ is
Online link to generate the above code (in case if you are curious) : https://emn178.github.io/online-tools/sha256.html
SHA256 is an algorithm which generates values for any input (like “hello”) , so that everything is secure on the Internet.
Now say that in the above hash value, you change some of the digits.
New Hash :
Now, the nodes in a blockchain network has to find the new string value (instead of “Hello”) which will generate this new hash above. This is what the complex mathematical problem is.
Note — You can generate a hash from a string, but the reverse is not possible.
It’s a very obvious question people have — Are Blockchains network safe ?
Yes, blockchain networks are safe.
It takes time and resources to mine. So not everybody will become a Miner. Even if one becomes a miner, and makes wrong validations, there are other nodes in the network which will validate the transactions once it is completed by the Miner who initially solved the complex mathematical problem.
Moreover transactions in a blockchain network cannot be changed. Once a transaction is done, it is impossible to change/modify any data in the blockchain system. The simple explanation is the complex mathematical problem. All the transactions are connected like a list. The next transaction’s complex mathematical problem is dependent on the previous and current transaction’s mathematical problem . So even if you manage to change any transaction data in the system, it would mean a new hash value being generated, and a new complex mathematical problem to be solved again. And nodes in the network will identify that there’s a request to solve the complex mathematical problem again (as the hash is changed because of modification of data), so the nodes will just invalidate this corrupt transaction.
I hope this article was helpful in understanding the Blockchain Mining in simple terms. Feel free to drop in comments, and all claps are highly appreciated.