Homework on Stale Blocks

Why is this important from the perspective of the user sending or receiving a transaction? :slight_smile:

1 Like

To ensure that only one chain is correct and that your transaction is completed. If not your transaction goes back to the mempool to be worked again. Increasing the transaction time.

1 Like
  • What happens in the bitcoin network when two miners solve a block at the same time?
    The block belonging to the longer chain will be selected. The other will become stale and all transaction will return to the mempool.

  • What is a stale block?
    A block that is returned to the mempool or all transaction must be reconfirmed because the block was not selected to be added to the blockchain.

  • How do stale blocks occur?
    When 2 or more blocks are added at the same time, only one will be selected and the other will become the stale or orphan block.

  • Why is it important to wait for more than one block to be confirmed when sending or receiving a transaction?
    (not too sure, but this is what I believe to be the answer)
    In order to prevent a stale block. By selecting the longer chain to attach the new block onto, will have a better chance of being added to the blockchain.

1 Like

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

When this happens the 2 blocks are accepted at first, the closest nodes to them accept and validate them and which ever one the next block is added to with a new block by a miner is the longest blockchain and therefor automatically accepted by the blockchain as the true blockchain. The other block gets dropped/thrown out and the transactions inside of it get put back onto the mempool ready to be added again to the true blockchain.

2.What is a stale block?

A stale or orphan block is the thrown away or rejected block that sends the transactions inside of it back to the mempool.

3.How do stale blocks occur?

The only reason for this block becoming a stale block is because the next miner who solved the next nonce first did so using one of the two or more blocks had been accepted at the same time and this block became a stale block because it wasn’t used before the other one which was automatically accepted by the blockchain for now being the longer blockchain.

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

It is important to wait for more than one block to be confirmed when sending and receiving transactions because there is always a chance that the particular transactions concerned may get sent back to the mempool and not be valid inside the accepted blockchain if the block they are in becomes a stale block.

1 Like
  1. The block will split into two different blocks and only one will accept by the network and continue in the blockchain, the other way will drop and all transaction will back to mempool.
  2. A stale block is considered as a valid block but not accept by the network.
  3. There are two versions of block are propagated by miners and both are them not knowing the other one exist, the one is dropped considered stale block.
  4. It’s because sometimes stale block exists and all transaction are back to mempool, it’s to be sure your transactions are confirmed eventually.
1 Like

Miners at the time are not aware of the second block existing. Due to physical distance this is the reason stale blocks occur in the first place.
But why is waiting for these kinds of forks important from the perspective of the user sending or receiving a transaction? :wink:

1 Like
  1. What happens in the bitcoin network when two miners solve a block at the same time? - The next miner who mines a block will choose one of the new blocks and mine on that one. The other block will be taken off the blockchain as an orphaned block

  2. What is a stale block? - You have two miners who solved the puzzle at the same time and then miners will try to add blocks on each of the chains. But at one time one of the chains will be longer than the others, and the blocks that gets taken taken off is called stale blocks. the miners will always choose the longest chain.

  3. How do stale blocks occur? - Answered in question 2.

  4. Why is it important to wait for more than one block to be confirmed when sending or receiving a transaction? - Because you need to know that the block with your transaction are the one propagated to the network. You need to know that the block is a part of the version of the blockchain with the longest chain which is the truth.

When the miner receives a block its not aware the other block exists since it didn’t propagate to the node at the time due to physical distance or lower bandwidth between two parts of the network. So it starts mining on the first block it received and if it receives a chain with more PoW it will drop the work on that block and continue on the longer chain :slight_smile:

1 Like
  1. Then the two blocks will be propagated to the network. The miners will choose one block and continue with this (for example the one he saw earlier). The first block which is mined after these two, makes this blockchain longer and all the other miners will continue with the longer blockchain.
  2. A stale block is the other block, the one which is not on the longer blockchain.
  3. Stale blocks occur when two blocks from different miners are mined at the same time. Then one block will be dropped as soon the other blockchain is longer.
  4. Because your transaction could be on a stale block. As soon there are six blocks after your block you can be sure that this is the longer part of the blockchain.
1 Like

Response:

  1. When 2 miners solve at the same time, a temporary break in the chain occurs where both are correct until a 3rd miner resolves the issue.

  2. Stale blocks are blocks that end up on the shorter chain which eventually gets dropped off and not confirmed.

  3. Stale blocks happen when miners solve the equation at the same time not knowing that another has done so. Nodes will continue to verify until the one with less difficulty is discovered and transactions are returned to the mempool.

  4. You want to wait for multiple confirmations so that you know the tx was picked up and added to the correct block before moving forward.

2 Likes
  1. What happens in the bitcoin network when two miners solve a block at the same time? - This can happen due to distance or lower bandwith. What will then happen is that you have two versions of the truth. But other blocks will now be mined on those two chains and eventually one chain will be longer than the other or one chain will show more PoW (Proof of Work) than the other and the network will always choose the longest chain.
  2. What is a stale block? - Back to question one; It’s the blocks on the shortest chain of the two versions of the truth. The transactions on these blocks will go back to the mempool
  3. How do stale blocks occur? - When you have more than one version of the truth, and you clearly see which chain is the longest, the blocks on the shortest chain that was mined after the difference in the chains started will be recognized as stale blocks.
  4. Why is it important to wait for more than one block to be confirmed when sending or receiving a transaction? - Because then you will be sure that the transaction is a part of the truth. (the longest chain)
1 Like
  1. What happens in the bitcoin network when two miners solve a block at the same time?
    the shorter block will be dropped

What is a stale block?
a block that was valid on the blockchain for a while but gets dropped because another block came which is longer

How do stale blocks occur?
If another block has more minors who put their transaction on another block and therefore has a higher proof of work, then the shorter block gets dropped from the network and is put back to the mempool

Why is it important to wait for more than one block to be confirmed when sending or receiving a transaction?
you should wait for at least 6 more blocks to be confirmed to make sure you dont have a shorter block

1 Like
  1. When two miners solve the same Blick in the same time, they girl. Then the longest block will win, when a new block is added. The shorter block is deleted and the transactions go back to the mempool.
    2.The dropped block
  2. A stale bock occurs because two miners solve the puzzle in the same time. When the next block is added, one of the stake block is dropped, because the other Blockchain has more hash power.
  3. It is better two wait 6 confirmations because the block, in which your transaction is made, maybe will be dropped.
1 Like
  1. Each will begin to propagate their block to other nodes. Gossip to other nodes.
  2. A block that is dropped or discarded because it is no longer in the longest blockchain that is agreed among all nodes.
  3. After two miners solve at the same time, they gossip their results to other nodes. Eventually a new block is mined by another miner and they append their block to only one of them. The block that was not added to will be discarded.
  4. It is good to wait for at least 6 confirmations so that you do not have any orphaned or stale blocks occurring in your transaction.
1 Like
  1. When two miners solve a block at the same time the chain of blocks splits until on becomes longer than the other. (The split is temporary).

  2. A stale block is a block that was previously recognized that is dropped as a result of it being on the smaller fork of a split chain of blocks (it is on a weaker version of the chain).

  3. Stale blocks occur as a result of the network choosing to accept one chain/fork more frequently. The result of this is that one becomes smaller. And then the network drops it as it does not have as many blocks added to it since the split versions.

  4. It is important to wait for more than on block to be confirmed when sending or receiving a transaction to make sure that it is not dropped. After at least six more blocks are added to the chain, the transaction is considered secure and valid.

1 Like

What happens in the bitcoin network when two miners solve a block at the same time?
Answer: Whichever miner has the current longest chain will win. The shortest will be orphaned.

What is a stale block?
Answer: A block that has been mined but not added to the primary blockchain because another block with a longer blockchain has already been accepted by the nodes instead.

How do stale blocks occur?
Answer: Many miners are trying to produce blocks for the network simultaneously. Because multiple versions of the truth cannot exist on-chain simultaneously, every block with a shorter chain than the one accepted as truth will become orphaned.

Why is it important to wait for more than one block to be confirmed when sending or receiving a transaction?
Answer: In case there are multiple chains currently being evaluated by the nodes…if your transaction is not confirmed on the main chain, it will get returned to the mempool to be added to the next confirmed block.

1 Like
  1. The chain temporarily forks, one version containing miner a’s block and another containing miner b’s.

  2. A block that was not accepted by other nodes.

  3. Stale blocks occur when 2 (or more) miners mine a block at the same time and one miner’s block is accepted by other nodes over the other (stale block).

  4. To ensure your transaction is not included in a (soon-to-be) stale block.

1 Like
  1. What happens in the bitcoin network when two miners solve a block at the same time?
  • They are both linked to the previous block but the block that gets linked to afterwards is the one that remains in the chain while the transactions in block that was not linked to are sent back to the mempool.
  1. What is a stale block?
  • It is a parallel block that was not linked to by another block and whose transactions were sent back to the mempool as a result.
  1. How do stale blocks occur?
  • Stale Blocks are valid blocks that were generated parallel to another valid block but were not linked directly to another block afterwards but instead their transactions were sent back to the mempool because its parallel was linked to first.
  1. Why is it important to wait for more than one block to be confirmed when sending or receiving a transaction?
  • Waiting for other blocks to link to yours reduces the wait time because if your block ends up being a stale block, the transactions in the block are sent back to the mempool and this causes a delay on the individual transactions.
1 Like
  1. What happens in the bitcoin network when two miners solve a block at the same time?
    They are both accepted as the next block and they start propagating through the network. Which means at a certain time there might be two source of the truth (which will not last)

  2. What is a stale block?
    Eventually a new block would be linked to the blockchain and the longer one would would be the accepted one and the other one would become a stale block

  3. How do stale blocks occur?
    See above

  4. Why is it important to wait for more than one block to be confirmed when sending or receiving a transaction?
    To have one source of the truth. Hence usually 6 confirmation might be required for a transaction to be confirmed.

1 Like
  1. What happens in the bitcoin network when two miners solve a block at the same time?
    The longest block will win, the loosest block will be orphaned, and all the transactions return to the mempool.

  2. What is a stale block?
    A loosest block, because other longest block was mined at same time.

  3. How do stale blocks occur?
    While two blocks are mined at same time, just one will be integrated in blockchain, so one needs to stale.

  4. Why is it important to wait for more than one block to be confirmed when sending or receiving a transaction?
    To be sure that block will be integrated in blockchain and won’t be a stake block.

1 Like