What is Selfish Mining

Bitcoin is a digital currency that any government or bank does not control. It is a decentralized currency in which two owners can make transactions that are different from ordinary transactions. There is a blockchain in which they share all transactions of bitcoin publicly. The miners have to add the new transactions in blockchains and perform the required calculations after those transactions. These miners get bitcoins as their rewards, and thus their bitcoin assets are increased. Solving these equations is a competition between all miners because the person who solves it first will get the bonus. The term selfish mining means when a miner blocks the access of other miners towards blockchain and solves all the equations by themselves. This selfish mining reduces the chances of honest miners getting the reward, and the selfish miner gets all the tips. To learn about selfish mining and how to prevent it, visit cryptocurrencies.

Process of Mining

Miners are people who add new blocks to the blockchain. They compete with others about who will mine the block first and get the reward. After adding the block, they publish it so that other miners know that they post the league and stop putting their effort into the previous block and try a new one. Every miner tries so that they can add the maximum number of blocks and get the ultimate reward. Every miner has to keep adding the blocks and create a chain of their own. They get a bonus for the length of the chain they have made. This procedure is an infinite horizon as it never ends. The miner’s reward is dependent on the average ratio of blocks in the chain they have created. The compensation they get is in the form of bitcoins which helps miners to increase their bitcoin wealth. 

How is Selfish Mining Done

As all other miners try to extend the longest chain, the selfish miner also tries it. But unlike other miners, they don’t publish the block they have generated and keep it secret from others. Meanwhile, other miners keep trying to create the chain going public, and their chain is more extended than selfish miners as they are in more numbers. But the selfish miner keeps extending his chain, which reaches a point where it is longer than the public chain. Then the selfish miner publishes its chain. People looking for the chain think that the secret chain is an actual chain and start following it. At the same time, the honest miners who were putting their efforts into the primary chain get ignored. And can gain now reward for their actions.

But here is a threat to this system also, if a person is creating a secret block. Still, another person is also making the same length of chain, and the selfish miner can not make this detail public unless the size of his hidden chain gets more extended than the public chain. The selfish miner can not publish its chain, and the competition will be a race between two miners with which one has the longest chain; both of them can not get the reward until one has the longest chain and publishes it first. When the selfish miner and honest miner are In the race of making the longest chain, if the greedy miner has made the longest chain and publishes it, she will have to start the attack from the end of the longest chain. In this case, leaving all other miners behind will find it challenging to match the selfish miner’s speed. If the honest miners didn’t let selfish miners cross their chain length and win, the selfish miner would face the loss, and he has lost all his effort and will remain empty-handed; one will give no reward to him.


If the selfish miner has 1/3rd or more than 1/3rd of the mining power, they will increase their rewards and bitcoin assets. If the selfish miner has less than 1/3rd of the honest miners, they will not compete or generate more tips. The solution to selfish mining is that the miner will only create the next block if they have made the previous block public. If they have not, they won’t add a new partnership and compromise over the reward. The winner is the only winner if he has done the fair play.