Re:Mainnet Merge Announcement
by tboyd47 on Wednesday August 24, 2022 @12:49PM
(#32582160)
As I've explained in nearly every comment, one is mined by 100% hashpower, the other is mined by 51% hashpower. The 49% are still using the other blocks, too.
[ Parent
| on HN ]
This is where your mistake is: they can't be using the other blocks as well, because they are erasing their own (uncensored) transactions by doing so.
Let's say that MiningPoolA controls 51% of hashpower, and MiningPoolB controls 49%. MiningPoolA is refusing to mine transactions from/to some wallet W.
Time T1:
MiningPoolA: OldChain -- Block1(no W)
MiningPoolB: OldChain -- Block1'(W receives 1BTC) still in progress
Any client will accept the chain with Block1 (no transactions from/to W)
Time T2 - if MiningPoolB tries to compete
MiningPoolA: OldChain -- Block1(no W) -- Block2 (no W)
MiningPoolB: OldChain -- Block1'(W receives 1BTC) -- Block2' (parent=Block1') still in progress
Any client will accept the chain with Block1 (no transactions from/to W), and MiningPoolB will never be able to catch up
Time T2 - if MiningPoolB decides to accept MiningPoolA's chain, but add the transaction in the second block:
MiningPoolA: OldChain -- Block1(no W) -- Block2 (no W)
MiningPoolB: OldChain -- Block1(no W) -- Block2' (parent=Block1, adds transaction W receives 1BTC) still in progress
Any client will accept the chain with Block1 (no transactions from/to W), and MiningPoolB will never be able to catch up
If a mining pool had 51+% of hashpower, they would always be mining the longest chain, no one would be able to compete with them and publish another block (in principle, at least; in practice, since mining is not entirely deterministic, someone else will occasionally win the lottery and propose a new block faster).