Every time that bitmain mine an empty block, someone transaction is not getting confirmed. This means that more babies are dying all over the world. This mean that more people are starving to death because they are not getting any confirmation to buy their food. People are falling sleep because they are not getting confirmations on their coffee. People are literally dying because of this. I am not exaggerating. This is a life and death matter.
This is to be expected, one of the biggest threats bitcoin faces is that the state controls majority of the hash power to constantly mine empty blocks to stop every transaction. And normal mining will be driven underground. Pooling is indeed something that will work against bitcoin.
For the bitcoin to succeed in the competition with the state, people must willingly take risks to protect bitcoin by covertly miming, pay higher fees, etc.
This is sort of unrelated but this makes it clear that the extra time it takes to include transactions is SIGNIFICANT enough for Antpool to rather just mine a full block with empty transactions and miss out on the extra fees.
Then you have Roger saying the network can handle 32mb blocks or more as hardware will become cheaper. speeds faster, etc.
I know the comparison is not a 1:1 but if the bandwidth of all bitcoin nodes were much greater, Antpool would have no need to do this, right?
Antpool obviously have freedom within the protocol to mine these empty blocks. My question is, do full node users have the capacity to collectively reject Antpool blocks, as a form of punishment for ignoring the mempool?
From that perspective, I guess it makes sense. If the majority of the hashpower were to attack the network in a similar fashion, by ignoring transactions and massively inflating the mempool, is there any recourse for the remaining members of the network who intend on operating in a more legitimate manner ?
Code is law. There is no legitimate and illegitimate way of being within the protocol. Miners and users were supposed to be separate groups. They are there to power the network. You don't need to trust them, they are driven by greed which makes them compete for your benefit. Selfish miner is the best miner. If they choose to waste their resources and not take transaction fees then so be it. Screw with them and your network might become patchy.
If the problem is block propagation and the great firewall of China, then removing the reward for empty blocks will only incentivize mining centralization. It’s not clear what the cause is here, but many of these empty blocks are closely following prior blocks.
I see where you are going with that, but I also think it will give incentive to circumvent. Let's face it, the entire purpose of BTC is built on permission-less; the people that drive mining, programmers, are (declared, or otherwise) anti-authoritarians, rebels.
All I'm saying is that the obvious cause of empty blocks is that the miner is mining on the blockheader because they haven't yet received the previous block. This is especially a problem for Chinese miners who struggle more than most to receive blocks because of the disruptions caused by the great firewall of China. All of this is why empty blocks tend to be blocks that just happen to be found very soon after the previous block.
Now, it does look like some of these empty Antpool blocks were found later than one would normally expect. But this doesn't mean there's not an honest explanation: mempool trouble etc.
Also, we shouldn't forget that even empty blocks extend the chain, securing all prior transactions with more proof-of-work.
It seems silly to me that you were downvoted for educating people. Over time we will become less likely to see this sort of behavior as the block reward becomes less important than the block fees. I wonder if that will have a long term disadvantage of miners behind the great wall.
The reason proof of work works is because people are greedy and want to maximize profit. Sometimes it is to a miners' advantage to publish a block before they have transactions to add. Until block reward sufficiently diminishes, empty blocks are basically a sign of network health. The more participation in mining, the better the network. By extension you could say, the more aggressive/efficient the mining is, the better the network.
This comment below explains why a miner would release an empty block: