raw_avocado on Nostr: Did you know there were 147 empty #Bitcoin blocks mined in 2023? 11% of all Bitcoin ...
Did you know there were 147 empty #Bitcoin blocks mined in 2023?
11% of all Bitcoin blocks don't have any TX inside them.
And there are 2 Mining pools, never mined any empty blocks!
Why do miners mine empty blocks?
Miners have 1 job, ordering TXs in Blocks.
They hash all the data inside the block until the hash of the block starts with a certain number of zeros.
As the block data does not change, there is this field(nonce), where they iterate until the right block is found.
So the only condition for miners to get paid, is they find the right hash.
(if block is valid :p)
But if they include TXs in this block, they will pocket the fees from them on top of the block reward.
So why would any (rational) miner ever refuse to include TXs?
A pool constructs a block and partitions the amount of work/searching each individual miner does.
This way, smaller miners can be profitable.
But the pool sends the block + the hash of the previous block at the same time.
(as it builds on top of it)
Right after a block is found, the miner will send the nonce to the pool, and now he waits to get a new block.
Remember miners don't turn off their machines.
So while waiting for the next block from the pool, might as well mine mine something.
But he has no TXs to include!
Mining is a purely satistical game, the more hashrate you have the more lucky you are.
Sometimes, in that small time window when waiting for the new block, a miner will find a block.
The reason for empty blocks is the latency of communication between pools and miners.
These are rational miners acting in their economic interest.
That being said, it would be better for them to get more BTC fees + people get their TXs confirmed.
One solution for this problem is @StratumV2
Remember how the pools sent the block and previous hash to miners?
8/9
In StratumV2 the 2 are separated.
So the mining pool can look in their mempool for TXs that did not make it in the current block and send these block templates ahead of time to the miner.
This way if they find a block, they work on these ones straight away with no latency!
Thanks for reading and like & retweet, if you liked it. :D
Follow for more #Bitcoin facts like this every day!
And the #BitcoinFactOfTheDay was brought to you by BitBox !🇨ðŸ‡ðŸ”‘
11% of all Bitcoin blocks don't have any TX inside them.
And there are 2 Mining pools, never mined any empty blocks!
Why do miners mine empty blocks?
Miners have 1 job, ordering TXs in Blocks.
They hash all the data inside the block until the hash of the block starts with a certain number of zeros.
As the block data does not change, there is this field(nonce), where they iterate until the right block is found.
So the only condition for miners to get paid, is they find the right hash.
(if block is valid :p)
But if they include TXs in this block, they will pocket the fees from them on top of the block reward.
So why would any (rational) miner ever refuse to include TXs?
A pool constructs a block and partitions the amount of work/searching each individual miner does.
This way, smaller miners can be profitable.
But the pool sends the block + the hash of the previous block at the same time.
(as it builds on top of it)
Right after a block is found, the miner will send the nonce to the pool, and now he waits to get a new block.
Remember miners don't turn off their machines.
So while waiting for the next block from the pool, might as well mine mine something.
But he has no TXs to include!
Mining is a purely satistical game, the more hashrate you have the more lucky you are.
Sometimes, in that small time window when waiting for the new block, a miner will find a block.
The reason for empty blocks is the latency of communication between pools and miners.
These are rational miners acting in their economic interest.
That being said, it would be better for them to get more BTC fees + people get their TXs confirmed.
One solution for this problem is @StratumV2
Remember how the pools sent the block and previous hash to miners?
8/9
In StratumV2 the 2 are separated.
So the mining pool can look in their mempool for TXs that did not make it in the current block and send these block templates ahead of time to the miner.
This way if they find a block, they work on these ones straight away with no latency!
Thanks for reading and like & retweet, if you liked it. :D
Follow for more #Bitcoin facts like this every day!
And the #BitcoinFactOfTheDay was brought to you by BitBox !🇨ðŸ‡ðŸ”‘