Homework on Stale Blocks

  1. When two miners solve a block at the same time, they both propagate them to the network. Whichever valid block is received first by a node is the one that gets appended to the local copy of their blockchain.
  2. A stale block is a block that eventually gets deleted from a node’s local copy of the blockchain because it is no longer part of the longest chain.
  3. Stale blocks occur when fifty percent of the network appends one valid block to their chain, and fifty percent of the network appends a different valid block to their chain.
  4. It’s important to wait for six block confirmations when sending/receiving a transaction in order to be certain that the transaction was not included in a stale block, and to confirm that it has been recorded in the longest chain.

One miner with the longest chain gets the selected to proceed.

The blocks which were a part of the blockchain and not anymore due to the existence of longer blockchain

when two miners have solved a block at the same time but only one chain is longer, where the second miner with the shorter chain will return the block’s content to the mempool.

So that the confirmed transactions don’t get thrown into the mempool again. since the longest chain is the most accepted one. Hence, its common practice to wait for at least 6 confirmations.

Question: What happens to the rewards gained by mining the blocks which eventually became stale block?

  1. When two miners solve a block at the same time, that block is confirmed and added to the blockchain. If there is a second block, it will be rejected and the transactions will be placed back into the nodes’ mempool.

  2. A stale block is a block that has been dropped or orphaned from the blockchain.

  3. Stale blocks occur when you have not received 6 confirmations after you have made a transaction. For your transaction to be confirmed, you must have at least six confirmations after you make it. This ensures that your block will NOT be dropped.

  4. It is important to wait for more than one block to be confirmed when sending or receiving a transaction to minimize the issue with stale blocks, thus making the confirmation process faster and easier.

1.the chian slits in to 2
2. it is the block of an short fork that wil be mooved too the mempool
3.it is an block after a fork it is the one with the shorhest chian and the stale blocks occur too an longer chian after an fork is resolved with the long chian
4.in case of a stale block occurring

  1. the blockchain splits into two versions each block creating 1 new version of the blockchain to create a total of 2 versions of the blockchain
  2. a stale block is one of the two blocks described in the before answer that was dropped because the other version of the blockchain got another block added to it and therefore got accepted as the truth because it is the longer blockchain.
  3. stale blocks occur when 2 geographically separated (Southafrika and Alaksa) miners solve a block at the same time. Both blocks are valid, but one will be dropped, become stale, as soon as either of the two chains becomes longer / gets yet another new block added to it.
  4. Due to geographical distance it takes time to propagate solved blocks to the network and assure that all nodes hold the same information. If the block time would be reduced many different and competing versions of the blockchain might appear, making the whole system less secure diluting the consensus of which blockchain is the correct one.
  1. By adding blocks simultaneously, the two miners create two competing versions of the blockchain and therefore, effectively, two competing versions of the truth (and only one of these versions will eventually survive).
  2. As I just stated, only one of two competing versions of the blockchain can survive (because one will be PoW longer than the other), and the blocks in the diuscarded chain that are not included in the surviving chain are referred to as ‘stale blocks’.
  3. It seems to me that stale blocks are defined by the mode of their creation which in turn I already explained in item 2 above: stale blocks are generated when one of two competing versions of the blockchain is discarded. The stale blocks are the blocks in the discarded chain that are not contained in the surviving chain.
  4. Because the 10 minutes wait minimizes the chance of the simultaneous addition of blocks and the resulting creation of two competing versions of the blockchain. For given a 10 minute time interval between blocks, all nodes in the network have enough time to catch up and to register the most recent block addition. So effectively, the 10 minute wait time minimizes the chance for the creation of stale blocks.
  1. One will have more blocks added to it making it the longest chain while the other one will become orphaned.

  2. Stale blocks are blocks that are valid yet still get rejected as they were competing with other valid blocks that just happened to be acknowledged and have blocks added to it first.

  3. They occur because it was competing with another valid block that got acknowledged first by the network’s nodes.

  4. To wait to see if the chain has accepted it.

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

    The block with the shortest chain will be dropped and is considered an orphaned block. The transactions then go back to the mempool.

  2. What is a stale block?

     A block that was validated but then dropped for another block with a longer chain of truth.
    
  3. How do stale blocks occur?

    When two blocks are created at the same time but one is chosen over another.
    
  4. Why is it important to wait for more than one block to be confirmed when sending or receiving a transaction?

    To make sure that your block does not become a stale block by making sure the transactions are not taken by other miners.

  1. When two miners solve a block at the same time both blocks are attached and the chain is split into two different versions. These two versions will exist, till the next block is mined.
  2. A stale block is no longer supported by the blockchain.
  3. A stale block occures when the blockchain splits into two versions and the block belongs to the chain, that will no longer be accepted by the network.
  4. It is important to wait for more than one block to be confirmed, because the transaction might be integrated into a block that becomes a stale block. In that case the block will be dropped and the transaction will return to the mempool.
  1. Some nodes would get the information that block a is the next one and others that block b is the next block in the chain. It is now important what the following block(s) do(es). If the longest chain (PoW-wise) is created with new block(s) on top of block a, then this will be the new standard and block b will be canceled and vice versa.

  2. A stale block is a block which has been created at the same time as another block but lost the race in the network against the other simultaneously mined block. So the other block formed the longer chain faster, thus the stale block will not be part of the original blockchain.

  3. They occur because blocks can be mined by different miners at almost the same time. Since it takes time to transfer information throughout the network it might be that some nodes have received different information about the next block than others. Once it is clear which of the 2 blocks will removed from the blockchain, it is called a stale block.

  4. The sync of the network takes time, since it is distributed across the entire world. So it might be that some nodes add more than just one block while other nodes have added other blocks. After 6 blocks you should be safe that all nodes have agreed that the block which includes your transaction is part of the blockchain and your txn is confirmed

  1. both blocks may be chosen by other nodes but the one that completes their nonce calculation quicker and elongates the chain will be chosen and the other dropped
  2. one which got dropped and became invalidated - from the shorter chain
  3. it is the ‘loser’ of the competition with another block to complete their hash
  4. to avoid becoming invalidated/dropped by a competing longer block chain
  1. What happens in the bitcoin network when two miners solve a block at the same time?
    Answer: The next blocks will determine which one will survive, as the longest chain will be kept.
  2. What is a stale block?
    Answer: This is a block that did not survive due to an and other block chain being selected as valid because this chain became longer.
  3. How do stale blocks occur?
    Answer: They occur because other chains of blocks were confirmed
  4. Why is it important to wait for more than one block to be confirmed when sending or receiving a transaction?
    Answer: You can not be certain that a particular block will remain before a chain of blocaks that is long enough has been added later (6 is used)
  1. potentially you may have nodes with 2 different version of the truth (one node will have one block, another may have the block of the other miner)
  2. A block which has been dropped from the block chain
  3. when 2 miners solve a block at the same time, and then a next miner will solve the new chain, it can chose only one of the 2. At that stage the longest chain will prevail, so the one block not chosen by the last miner will drop out (called stale block) and going back to the mempool
  4. to ensure to avoid the possibility of stale / orphan block
1 Like
  1. If the puzzles are solved correctly, they will both be accepted into the blockchain, but the chain will fork.

  2. A stale (or orphan) block is that block that won’t be in the chain.

  3. It depends on which the new miner(s) choose to base their blocks upon. If there are two or more blocks that will be accepted by the network at the same time, the block that stays out of the chain will be a a stale block.

  4. It is to make sure that your block will stay in the chain. After 5 or less confirmations, it is still possible that your block will be dropped.

Great answers. All on point. Keep up the good work. :smiley:

Its an accidental fork. Soft Forks and Hard Forks occur when we deliberately want to push an update.

When 2 miners find the block at the same time, we have an accidental fork. We have 2 different versions of truth. Which as you said, will later on be resolved once the shorter chain gets dropped.

1. What happens in the bitcoin network when two miners solve a block at the same time?
When 2 miners solve a block at the same time, they start propagating it to the network and this creates 2 versions of the truth for some time until another miner picks one version and continues to work on this version. This version then becomes the longest chain with the most proof of work and the the other block is dropped. This dropped block is the stale block.

2. What is a stale block?
It is the block which is ‘dropped’ as it is on the shorter chain with less proof of work (see above)

3. How do stale blocks occur?
When 2 miners solve the puzzle at the same time, they create 2 simultaneous versions of the blockchain without knowing it and since there can only be one version of the truth, the one with the most POW will win.

4. Why is it important to wait for more than one block to be confirmed when sending or receiving a transaction?
In the eventuality of your transaction being within a stale block, once it is dropped, your transaction would go back to the mempool and back into an unconfirmed state. It is safe to assume that after 6 confirmations, there is no competing blockchain.

2 Likes
  1. Two blocks can exist until one of them develops a longer chain by being taken up by another miner.
  2. A stale block is a block that was not continued within the blockchain.
  3. Because there can only be one block that finally gets to be the next link in the chain.
  4. Because another block can be generated in another part of the network with a slightly different version of the ‘truth’.
1 Like