Homework on Stale Blocks

  1. What happens in the bitcoin network when two miners solve a block at the same time?
    Part of the nodes will adopt one block, and another part the other. Now, whichever block gets a new block added to it faster will be adopted by all of the network (nodes). The other block will be dismissed and the transactions sent back to the Mempool.

  2. What is a stale block?
    A block that is dropped by the network.

  3. How do stale blocks occur?
    See answer 1.

  4. Why is it important to wait for more than one block to be confirmed when sending or receiving a transaction?
    To make sure the block that contains your transaction is on the “correct” (longest) version of the blockchain and does not get dropped (and becomes a stale block).

1 Like
  1. The block that ends up on the longest chain gets validated and the other one is orphaned and its transactions go back to the mem pool.

  2. A stale block is one that tied in the validation race to the blockchain but lost out to the ultimate winner. The transactions in the stale block go back to the mem pool.

  3. When tow miners calculate the nonce at approximately the same time one wins the other, stale block, looses.

  4. Because you could have a situation of a stale block which transactions don’t go through. They get returned to the mem pool and will eventually get accepted but it may take a few blocks.

1 Like
  1. Both their blocks will link to the original chain creating different chains. They will continue to get new blocks chained to them until 6 is validated to one of them and the other becomes stale.

  2. A stale block is an orphan block its the block that got beating out. the shortest block. or the block that didn’t reach consensus.

  1. if two miners solve the block at exactly the same time the longest block will prevail and the shortest block will be dropped and all transactions are return to the mempool.
  2. a stale block or orphaned block is is another version of block mine at exactly the same time of the other block but are the shortest block.
  3. there are two version of truth created in the blockchain at exactly the same time.
  4. more important to wait for 6 confirmation so that the block of transaction with two version of truth is not possible.
1 Like

1- when two miners solve the block, initially thee are two parallel blocks created (a fork in the chain). These two blocks are distributed amongst the nodes (unevenly I believe). And remain until one of the blocks validated by the next miner to solve the following block. This now becomes the longest (most complex) chain, which now validates this blockchain.

The other block becomes orphaned/stale, and it’s transactions are placed back in the mempool.

2- Stale Block (Orphaned block) is the shortest of two stems of a fork in the blockchain. It has no block created after it, which makes this fork invalid.

3- Stale Blocks occur after two stems of a fork in the blockchain have occurred, and the OTHER stem becomes longer when the next miner links a new block to it. The shortest chain is the Stale block.

4- Waiting for conformation is important, to confirm that the transaction was not placed in a Stale block. If this were to occur, the transaction would be placed back in the mempool, meaning the transaction had not been completed (confirmed).

1 Like

It doesn’t need to get 6 validated blocks.
The rule is, ‘the longest chain wins’ and will be the accepted valid blockchain.
When 2 miners accidentally mine a block at the same time, there will be 2 valid versions of truth. 2 different blocks at the same blockheight. So you basically have 2 different blockchains. Then it will depend on wich blockchain the next miner will mine the next block on top of it. (wich makes 1 version a longer chain than the other version of truth) the transactions in the block off the shorter blockchain, will go back to the mempool. (if they weren’t already included in the block on the longer chain)

2 Likes

It forms a split in the Blockchain, and there would be two versions of the chain circulating the network.

A stale block is one in which has been submitted and confirmed by the network but was later rejected.

A stale block occurs when the blockchain decides to continue with one version of the chain instead of the two versions that were created in the split. The blocks that were discontinued become orphaned or stale blocks.

Because if you don’t wait, there is a possibility that your transaction was a part of an stale block and actually never happened. Therefore you would be spending funds you don’t have or you would be receiving false funds.

1 Like
  1. The blockchain temporarily splits into two blockchains.
  2. A stale block is a block that is dropped from the blockchain and put back into the mempool.
  3. A stale block occurs when two blocks are mined at the exact same time and the blockchain temporarily splits into two blockchains. The next block that is mined is added to one of the two blocks that split the blockchain. This blockchain will have the most proof of work and will be accepted by the network. The block that is in the shortest blockchain will be dropped from the blockchain and become a stale block or orphaned block. All the transactions in the dropped block will be placed back into the mempool.
  4. To make sure your transaction isn’t in a stale block that is dropped from the blockchain and placed back into the mempool.
2 Likes
  1. There will be two versions of the blockchain in the network. When next block is mined, it will determine which version of the blockchain is going to be the longest chain. That one will be selected as the version of truth. The last block of the rejected chain will become a stale block and the transactions are moved back to the mempool.

  2. See 1.

  3. See 1.

  4. There might be several versions of the blockchain propagated through the network. Ultimately only one of those will be selected as the longest chain, and there will be stale blocks. To be sure of the validity of the transaction, it is important to wait for several confirmations. This ensures with increasing probability, that the transaction happened in the blockchain, that will be ultimately selected as the right one.

1 Like
  1. A fork in the blockchain is created when 2 miners form a block at the same time

  2. A stale block is a block that has been created but rejected by the blockchain

  3. Stale blocks occur as a result of an opposing block being accepted onto the blockchain first

  4. Transactions may be dropped from the blockchain if the transaction is held within a stale block

1 Like

1 What happens in the bitcoin network when two miners solve a block at the same time?
2 What is a stale block?
3 How do stale blocks occur?
4 Why is it important to wait for more than one block to be confirmed when sending or receiving a transaction?

  1. Each block is added to different chains of the blockchain (a fork).
  2. A block that was added to the chain (fork), but was eventually dropped
    and returned to the mempool.
  3. Stale blocks result from the speed that miners add blocks to the chain.
    Miners append to the longest chain by default, the blocks that were appended to the shorter chain become stale and are returned to the mempool.
  4. To insure that your transaction is not reversed (becomes a stale block), returned to the mempool.
1 Like
  1. For a certain period of time there will be two blockchains (two versions of the truth). It then depends on which blockchain the next miner will choose to append his block. This then will be the longer blockchain and therefore this version of the truth will be accepted by the network.

  2. A stale block is a block that got dropped because another version of the blockchain (that did not include this block) got accepted by the network.

  3. Stale blocks occur when two miners produce a block at the same time. This temporarily leads to two different versions of the blockchain. However, sooner or later only one version of blockchain will be accepted by the network (the longer version with more proof of work) and the blocks not included in this version will get dropped.

  4. It is important to wait for more than one block to be confirmed when sending or receiving a transaction because there is still a risk that another block that did not contain your transaction was produced simultaneously. This could cause your transaction to get dropped, therefore it is recommended to wait for 6 confirmations to minimize the risk of that scenario playing out.

2 Likes

Answer 1:
Two versions of the block-chain occur.

Answer 2:
The block of the discarded version.

Answer 3:
When one of the two versions grow longer than the other.

Answer 4:
Because the block in which your transaction resides can become stale.

1 Like
  1. What happens in the bitcoin network when two miners solve a block at the same time?
    It results in two different versions of the blockchain temporarily

  2. What is a stale block?
    A valid block A that was mined at exactly the same time as another block B (therefore creating two versions of the blockchain) but was eventually rejected because the following block C was attached to block B.

  3. How do stale blocks occur?
    When the latest block C is attached to block B rather than block A, block A becomes stale since it is no longer included in the longest (Most difficult) version of the blockchain and it’s transactions get returned to the mempool.

  4. Why is it important to wait for more than one block to be confirmed when sending or receiving a transaction?
    Because it could be the case that your transaction is in a block that becomes stale, therefore your transaction would return to the mempool

2 Likes

1.they will both be in the blockchain for a short time.until next block build on one off the two and the longest block wlli be accepted and the other kick out not valid.2.is the block that did not get accepted in the chain.3.when a block fork in two only one will be allowed in the chain. the one left out all tx will go back to mempoll…4.to be sure that your tx is not in the stale block

Will someone check my answer??

1 Like
  1. they would be added to the blockchain, but not necesarily recognized by all nodes
  2. a block that was once in the blockchain but is discarded
  3. for the above scenario, as more blocks are added, the longest block is ultimately recognized as part of the true blockchain and the other block is disgarded
  4. because it is possible that your block will be discarded as a stale block. One should wait for 6 confirmations in order to be assured that the block will remain in the blockchain

1.you get a stale block because whoever s block gets propagated the fastest and has the longest chain gets added to the blockchain while the other gets dropped
2.a stale block was dropped from the blockchain because another chain was longer
3.when two miners add the block to the blockchain but
4. in order to not get stale blocks and see if it is accepted

What happens in the bitcoin network when two miners solve a block at the same time?
When two miners in the bitcoin network solve a block at the same time one block becomes stale and one block is confirmed. The block that is confirmed is done so by a successive miner who chooses one of the blocks which then becomes the longest Blockchain and gets propagated across the network.

What is a stale block?
A stale block is a block that has valid transactions but was confirmed at the same time as another confirmed block but that was not selected by other miners for successive confirmed blocks, resulting in it not being the longest Blockchain.

How do stale blocks occur?
If miners confirm two blocks at the same or nearly the same time successive miners will select one block to attach the next block too. The one that is selected becomes the longest Blockchain and gets propagated throughout the network. The one that is not selected becomes stale and is dropped from the network by the TXs being sent back to the respective node’s mempool.

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 six block confirmations or more when sending or receiving TXs to make sure the TXs are not in a stale block and therefore not processed/confirmed.

Article

1 Like

Thanks Fabrice I appreciate the clarity. lol I always hear Ivan talk about you in the chat!

2 Likes