Homework on Stale Blocks

  1. When two miners solve a block at the same time, the separate blocks ate propagated through the network and we have two versions of the blockchain. The first of those blocks that is chosen and mined by the next miner & if this continues, the valid chain will result the longer chain (in terms of PoW).
  2. A stale block is a valid block produced that is later removed, because there were previously two versions of the blockchain & the other version ‘won’.
  3. Stale blocks occur because there can only be one version of truth, so one blockchain. While we wait 10 min of time, the app. time needed for the next six blocks to be created, stale blocks are the valid blocks on the shorter version of the blockchain, later removed.
  4. It is important to wait for more than one block to be confirmed when sending or receiving a tx, to be sure that our tx was mined in the block that biuilds the longer blockchain. So it’s confirmed & valid.

Nice, I don’t see it every day that a doctor wants to change careers into technology. Great story. I will always try to correct mistakes that I notice in all the homework. If you want more support and guidance, please contact [email protected]

Oh ok ok! Didn’t hear that ever before :muscle::grin:

  1. What happens in the bitcoin network when two miners solve a block at the same time?

A split is created in the blockchain, where different parts of the network are now working with different (recent) chain histories. This is resolved when a miner discovers a new subsequent block. The network is programmed to accept the longest chain with the most proof of work. When a new block is discovered and the new lengthened blockchain is propagated to the network, participants will see the longer chain and scrap the split they were working from. Transactions in the invalid split chain are put back in the mempool.

  1. What is a stale block?

A once-valid block that was discovered simultaneously to another valid block, was appended to a split version of the blockchain, and that has been superseded by the discovery of a subsequent valid block on a different version of the blockchain.

  1. How do stale blocks occur?

These occur when two miners simultaneously discover new valid blocks, and different parts of the network operate with different recent valid blocks for a time. Blocks become stale when a miner discovers a new block more quickly than the rest of the network, such that the new block propagates throughout the network quickly enough to lengthen the chain relative to the chain everyone else is working with.

  1. Why is it important to wait for more than one block to be confirmed when sending or receiving a transaction?

Best practice is to wait for 6 blocks to be verified after processing a transaction, to avoid a situation where the block containing your transaction becomes stale, and your transaction needs to be reprocessed.

@Fabrice
I was wondering this too, thanks! Do you know what this means for transaction fees? Are those lost as well?

Homework - Stale Blocks

1. What happens in the bitcoin network when two miners solve a block at the same time?
If two miners solve the hash at the same time then the miner with more network connections to the bitcoin network or other criteria will get accepted by the network first and the other will be discarded and considered a stale or orphaned block and will be dumped into the mempool.

2. What is a stale block?
Stale blocks are blocks which were successfully mined but aren’t included on the current best block chain, likely because some other block at the same height had its chain extended first. A stale or orphaned block and will be dumped into the mempool.

3. How do stale blocks occur?
Stale blocks occur when miners solve the same block at the same time resulting in a small fork in the chain.

4. Why is it important to wait for more than one block to be confirmed when sending or receiving a transaction?
To avoid the stale blocks or orphaned block which may occur, it is recommended to wait for at least 6 confirmation but the more confirmations the better, this is because the more confirmations there are, the harder the transaction is to reverse.

1.) Sooner or later another miner will have a new block and adds its block to the chain.The network will use the longest block chain the network will ese the logest chain by difficulty not by the numbers of blocks. The disregarded blocks are call stales or orphaned.
All of the tx in the disregarded block will be returned to the mempool.

2.) Its the disregarded block because it is part of a shorter blockchain.

3.) When miners solve the same puzzle of the same block . The two chains exist until a third miner choose wich block to follow and creates a longer blockchain.

3.) Because the block in which the tx has been confirmed may be orphaned in the near future thats why its important to wait for six confirmations

1 Like
  1. Their blocks will be communicated to the nodes that they can get to faster, thus there will be two versions of the blockchain at that moment in time.

  2. A stale block is one that has been dropped by the network and transactions go back to the mempool.

  3. In the scenario where two miners solve a block at the same time, for a few moments two versions of the blockchain will exist. However, when the next block comes out, depending on which version of the blockchain the next block is based on, that will be the valid version of the blockchain, since the network will pick the longest chain (with the most PoW). So the block that wasn’t used for the next block (no longer part of the blockchain) will be a stale block and its transactions will go back to the mempool.

  4. In case that the above scenario happens where two miners solve a block at the same time, two versions of the blockchain exist and then those transactions go back to the mempool. Six confirmations = enough assurance that version of the blockchain will carry on thus transaction is fully confirmed.

1 Like

The first transaction in a bitcoin block is the blockreward (by inflation today 12.5 btc) + all transaction fee’s. This will be a certain amount that the miner will receive as reward for mining a block. This ‘‘coinbase’’ transaction is not spendable for 100 blocks in case it would become an extinct (stale) block. So blockreward + all fee’s are 1 unspendable transaction (1utxo) that is locked for 100 blocks

1 Like

The hash doesn’t have to be the same. Because both miners could picked different transactions from the mempool wich will result in a different hash. They just need to find a random number so that the hash is below target. So it doesn’t mean it has to be 1 specific hash. Blocks just need to follow the consensus rules and meet certain criteria. If 2 valid blocks are mined on the same block height, the network will have 2 valid different versions of truth. Then it depends on the next miner, on wich of these versions he will mine a new block. This will make the chain longer than the other version

1 Like
  1. a fork, one of the miners will lose his block and it becomes a stale/ orphan block
  2. dropped block
  3. when it was not completely solved, some transactions go back to another block
  4. because your tx could be part of a orphan block.
1 Like
1. What happens in the bitcoin network when two miners solve a block at the same time?

Both blocks get added to the blockchain locally and start to propagate through the network. Some nodes will receive one block first and some the other. This creates a temporary fork until one chain becomes longer than the other and is recognized that the primary chain.

2 + 3. What is a stale block? How do stale blocks occur?

A stale block(s) occurs when a fork in the chain (as described above) is resolved by one chain becoming longer (or having more cumulative PoW) as is recognized as the primary chain. Any blocks in the discarded branch are abandoned and become “stale blocks”. Any transactions in this block which were not included in the primary chain get added back to the Mempool to be included in future blocks.

4. Why is it important to wait for more than one block to be confirmed when sending or receiving a transaction?

The recommended number of confirmations to wait for is 6 (or about 1 hour). This is to be certain your transaction did not get included in a block which later becomes stale and gets discarded.

1 Like
  1. One makes on to the Blockchain and the other gets ignored by sending the transactions back to the mempool
  2. Stale Block = not accepted block
  3. After a fork. One chain is shorter and can have stale blocks.
  4. In order to be sure block which included your transaction was not mined on a orphaned chain.
  1. On the bitcoin network when two or more miners solve a block at the same time a few things happen:
  • The blockchain will fork into two or more chains
  • All blocks will be propagated throughout the network of nodes
  • when a new block is mined and added to one of the chains
  • only after 6 blocks after the collision block does the new chain become known to the network
  • all other transactions in blocks of forks from the collision block will be returned to the mempool
  1. A stale block is a block that has not yet been confirmed 6 times and has been rejected by a longer chain
  2. Stale blocks happen when two or more miners find a valid block at the same time, a race condition.
  3. It is important to wait for 6 blocks to confirm when sending or receiving a transaction to guarantee it was mined on the block from the longest chain. The longest chain is found after 6 block confirmations.
  1. In this case we have two completely legit or protocol conform blocks.

  2. From the network rejected but validated block which fees and transactions returned back to the mempol.

  3. Stale blocks occur when two miners solve a block at the same time and a third miner comes up with his/her block and choose one of them to link his/her block to the chosen one and build together the longer chain.
    The other block becomes a stale or orphan block and all the fees and transactions return to the mempol.

  4. Because of the possibility that the transaction has been picked up by a (future) Stale block.

1 Like
  1. When two miners solve a block at the same time, both versions are propagated and then the next block decides which previous block wins. The losing previous block is a stale block.

  2. A stale block is a block that was once accepted by part of the network, but then rejected due to another version of the network, without the block being accepted.

  3. Stale blocks occur when multiple versions of the network exist, but then only one gets chosen as the longest chain; so the parts of the chain that get dropped are the stale blocks.

  4. It’s important to wait for more than one block to be confirmed when sending and receiving because the transactions may get dropped back into the mempool if there’s a stale block incident.

1 Like
  1. When two blocks are mined at the same time the network waits for the next block to be mined . Whichever block was used for the newest block gets added to the blockchain and the other block gets gimped back to the mempool .
  2. A stale block is the block that was dumped From the blockchain when another block was used instead .
  3. When 2 blocks are added simultaneously the block that is used for the very next block gets added to the chain and the remaining block gets removed from the blockchain.
  4. To make sure your transaction doesn’t end up being in a stale block that moves it back to being unconfirmed.
1 Like
  1.  What happens in the bitcoin network when two miners solve a block at the same time?
    

One gets dropped after subsequent miner chooses one of the two solved blocks for propagation

  1.  What is a stale block?
    

A solved block that was not selected for propagation

  1.  How do stale blocks occur?
    

When two miners solve a block at the same time

  1.  Why is it important to wait for more than one block to be confirmed when sending or receiving a transaction?
    

Because transactions may have been returned to mempool if two miners solve a block at the same time

1.The block that is part of the longest blockchain will win the shortest will be dropped.

2.Blocks which were successfully mined but which aren’t included on the current best block chain, likely because some other block at the same height had its chain extended first.

  1. Because some other block at the same height had its chain extended first.

4.Six confirmatons is to secure the transaction going through. Stale blocks can occur.

1 Like
  1. When 2 miners solve the block at the same time a fork is created ending with 2 blocks where there should be 1.
  2. A stale block is a block which has been removed from the chain and the data is resent back to the mempool.
  3. The stale block occurs when one of the forked chains is added to first hence making this chain longer and making this the truth which then is confirmed by more nodes.
  4. Because of stale blocks occurring occasionally the 10 minute time frame allows for the fork to be rectified, the stale block removed resulting in the agreed chain to be used and propagated. 6 confirmed blocks is sufficient.
1 Like