pull down to refresh
276 sats \ 3 replies \ @nullcount 12h \ on: Mining 5 blocks in a row! Is this a real problem?? bitcoin_Mining
For a malicious miner to cause a deep reorg,
they would have to first "withhold" those blocks from the network.
Example:
Suppose Foundry was evil and wanted to reorg any chance they could get.
Suppose Foundry found a valid block at blockheight 900,000. Meaning, they found a nonce such that when combined with the previous block's hash (block 899,999) the resulting hash is below the difficulty target.
Instead of broadcasting block 900k, they hold it themselves and begin mining their next block on top of this withheld block 900k.
Now suppose some other (honest) miner found and broadcast their version of block 900k. All the nodes will accept this block. Suppose this block contained a tx of yours and you already received the goods/services you paid for.
Now suppose Foundry found block 900,001 but this block is only valid if you use Foundry's block 900k, not the block 900k that was accepted by the network.
Foundry can broadcast BOTH their withheld blocks and cause the original block 900k to be orphaned.
If your tx was "confirmed" in the honest block 900k, but does not exist in either of foundry's new blocks, then its like your tx never happened, but you still received the goods/services.
If any miner wants to be malicious and they have enough power (or get lucky) they could reorg blocks.
This is why many places of business require 3-6 block confirmations to render goods/services. However, as miners get more centralized, this should really be raised to 10-30 block confirmations, if you don't trust the miners to play nice.
reply
My understanding... is that Foundry in this case (or any miner) would need to effectively mine 7 blocks consecutively (before any group of miners could collectively) without broadcasting any of them.
Then after the 6th block in the 'honest' chain is broadcast (6th block or 'confirmation' after a transaction occurs) Foundry would have to suddenly broadcast all 7 blocks which would not include some or many of the transactions that just took place 6 blocks before.
This would basically be... a 're-org' after 6 blocks (how long it takes for full confirmation.)
Basically, just mine 7 consecutive blocks in sequence, without announcing any of them, before 7 blocks can be added to the chain consecutively (by any number of miners). Then 'suddenly' announce the 7 blocks, potentially not including transactions that people had waited 6 confirmations for.
In order to 'double-spend' or 're-spend' UTXOs that are now unspent.
I believe that's my understanding.
reply