Bitcoin mining is an intriguing subject that can sometimes be overwhelming to understand at first without some research. One particular subject concerning the topic of mining is empty blocks, and people often wonder why mining pools mine them.
Revisiting the Empty Block Discussion
Mining pools are groups of bitcoin miners that work together to find and verify blocks roughly every ten minutes. Most of the time blocks are filled with transactions that are waiting to be confirmed as soon as the miner finds a specific block. Miners are rewarded 12.5 BTC and all the fees associated with the particular block they find. In the early days, blocks were not that full because bitcoin wasn’t as popular as it is today. Lately blocks have been full, often to the maximum size of 1 MB.
Blocks filled with transactions are not the only blocks mined on the network as empty blocks are mined as well. Empty blocks actually do have a transaction in them called the coinbase which is included first in every block. The main reason why pools mine empty blocks is because they are performing operations non-stop. Now the biggest qualm people have with miners who dedicate energy to mining an empty block is due to the recent throughput congestion these days.
However, when a pool solves a block, it has to download it and perform a few functions in order for it to verify the contained transactions. At the same time, the pool is also receiving the next broadcasted header (80 bytes of data tethered to a block), and the pool begins working on its next block. Not only are miners dedicating time to mining they also have to take inventory of the blocks mined by competitors. Miners do not stop to rest, they are continuously looking to mine as many blocks as they can.
It’s sort of like a Nascar driver winning the Daytona 500 but also the driver is looking to get pole position at a race in Talladega literally seconds after completing the Daytona race. Professor of computer science and well-known bitcoiner, Jorge Stolfi, gives a simple explanation to why a miner would mine an empty block.
“The transaction fees are an incentive for miners to include all the transactions that they can in their candidate blocks,” explains Stolfi. “However, a miner often can start mining a candidate for block N+1 even before he has seen what was included in block N. That’s because he only needs the hash of block N, and he often can get it very quickly by a certain trick.”
In that case, the miner must start with an empty block N+1, even if there are transactions waiting in his queue: because, without knowing the contents of block N, he cannot check whether those transactions are valid or not. If he is lucky, he may solve that empty block N+1, even before he finishes downloading the body of block N. That is why there are empty blocks.
Over 87,000 Empty Blocks
Empty blocks have been common since bitcoin’s inception. For instance, from the Genesis block all the way to block 360189 there were 85295 empty blocks mined on the blockchain. That means from January 2009 to June 2015 — approximately 23.68 percent of all blocks were empty. The work put into mining an empty block is no different than one filled to the max capacity. Since 2015 mining empty blocks has decreased and some pools say they abstain from mining them at all. Currently, the total one transaction blocks mined to date is 87885.
The idea that miners are choosing to mine the empty blocks is true to a degree but whether it’s bad or not is a different story. The debate on the empty block topic has been argued for years since the early days.
What’s your opinion on the topic of empty blocks? Let us know in the comments below.
Images via Pixabay, Nintendo, Bitfury and Newbium.
Express yourself freely at Bitcoin.com’s user forums. We don’t censor on political grounds. Check forum.Bitcoin.com.