Homework on Stale Blocks

  1. What happens in the bitcoin network when two miners solve a block at the same time?
    At this time longest chain wins, but the other one is dropped.

  2. What is a stale block?
    Stale block - dropped block. They were in the blockchain at one time, but then got dropped.

  3. How do stale blocks occur?
    2 miners mine a valid block approximately at the same time.

  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 the block with you transaction is not in the dropped chain

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

Two coexisting valid versions of the blockchain will exist, the first of those two versions to get a new block and has the most PoW will be the one of the two versions to be the true one. The other one gets dropped and the block with the new transactions goes back to the mempool.

  1. What is a stale block?

The one with the transactions that goes back to the mempool.

  1. How do stale blocks occur?

Explained in the first answer.

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

Because your transaction could be a part of a stale block.

1 Like
  1. one will eventually win which is the longest chain and the other will be dropped and sent back to the mempool.
  2. A block that gets sent back to the mempool
  3. stale blocks occur when a block was valid for a while because 2 were produced with the same or slightly different version but was then dropped because the blockchain continued on the larger block.
  4. To be sure that the block your transactions are in is not dropped from the chain.
1 Like

The chain splits & both blocks are temporarily accepted because some nodes register one or the other block until a further mined block is linked to either block making that blockchain longer then that chain is the confirmed new block & the other block is dropped and returned to the mempool.

  1. What is a stale block?

A block previously on the chain that has been dropped.

  1. How do stale blocks occur?

A stale block occurs when a valid block previously on the chain is removed because another block created at the same time (a competing block ) was mined on top creating a longer chain. The network will always choose the longest chain so the other block then becomes invalid & becomes a stale block.

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

To ensure that the information/transaction within the block is accepted onto the blockchain & the block is not dropped.

1 Like
  1. The block with the greatest PoW os add and the other is dropped from the network and the transactions from thw dropped block returns to the mempool.
  2. A dropped blocked that was once validated but removed due to competition on the level of speed and quantity of PoW.
  3. When there are two or more miners adding a block to the chain and the block that is add causes the others to drop.
  4. Its a reassurance to wait for the network to propagate globally amd this os confirmed when multiple blocks are added. This process ensures you are not working off a stale block.
1 Like
  1. When two miners solve a block at the same time and all things are equal, i.e., the chain to which they are connected is the same length, be it one or more blocks, the next miner to seek to append a freshly solved block will determine which of the two miners will succeed in confirming the transactions they mined in their block. It will usually be a matter of proximity as the miner ready to append that is closest to a miner who has completed a block will likely join to that closer block. However, the determining factor will be which block chain is the longest as that is where the truth is: The miner with the completed block that has the most linked blocks will be the winner of the reward/inflation and the fees. The other block will be dismantled with the data contents sent back to the mempool and these become fair game for the next miner to put into a block being built. This brings us to 3) Stale blocks (a.k.a. orphaned blocks which is technically an incorrect term) are those that are not part of the longest chain and are thereby containing transactions that will not be confirmed in said stale block as transactions will be returned to the mempool.
  2. It is important to wait to find out if a block will have am adequate number of linked blocks to it in order to become and be verified as the longest block chain of the current 10 minute interval. The recommended number of blocks to see successfully appended before the transactions are considered confirmed is six (6) blocks.
2 Likes
  1. What happens in the bitcoin network when two miners solve a block at the same time?

A) both will start to populate the network, however only one will be accepted on the network, pretty based on if other minors start using the the hash to formulate and populate using that chain, the longest chain will succeed

  1. What is a stale block?
    A) a block that has dropped off the network due to a longer chain elsewhere

  2. How do stale blocks occur?
    A) pretty much if the other competing block has a confirmation of 6, any other blocks will be no longer valid

  3. Why is it important to wait for more than one block to be confirmed when sending or receiving a transaction?
    A) this is due to many blocks competing
    The fastest and longest chain will be put onto the network, a rule of 6 confirmations is best practice, if a block has lower than that it has a highly possibility it could be stale

2 Likes
  1. both miners start propagating their blocks to the nodes and two versions of blockchain appear in the world

  2. stale block is a valid block that was dropped from the blockchain because longer blockchain appeared, where this block had no part

  3. when several alternatives are propagated in nodes and after that all the nodes get the longest version. the alternatives of that chain become stale

  4. because you block may become stale.

2 Likes

(1) If two miners solve a block at the same time, both will add its own block to the chain

(2. & 3.) If we have two or more versions of the newest block, one will eventually be staled, while the other will become part of the blockchain. TXs from staled block are returned to mempool. Next added block will decide which branch is the longest and the network will continue with the longest chain

(4) We need 6 confirmations to make sure that the confirmation is not for the staled block

1 Like

Actually the probability of a block becoming stale is quite small, on Bitcoin it happens less than once a year, but still its a good practice to wait just in case of this event occurring when you are trying to send or receive a tx. :slight_smile:

2 Likes
  1. If 2 minors solve a block at the same time 2 blocks will be entered at the same time and the chain will fork.

  2. A stale block or orphaned block is a block that has been selectively aborted because there were 2 and the weaker one has to go

  3. Stale blocks are because 2 minors solved a block at the same time and the chain adds to the preferred block so one has to detach

  4. We wait for 6 blocks to be confirmed when sendingrecieving transactions so we know that that transaction went into a stale/orphaned block at was forced back into the mem pool

1 Like

1 You end up with a valid block and a stale orphan block which is returned to the meme pool.

2 A stale block is a block that has been removed from the block chain because another chain became dominant.

3 stale blocks occur when two miners solve the nonce hash mining problem at the same time.

1 Like

You forgot to answer the last question :wink:

  1. What happens in the bitcoin network when two miners solve a block at the same time?
    They look for the longest blockchain will win. One blockchain, the shortest will be orphaned and dropped.
  2. What is a stale block?
    orphaned block are the block that were in the chain at one time but now they become non essential to maintain the block valid. In a merkle tree, the hash close to the merkle root are the only essential nodes. the rest is detached to let all lightweight
  3. How do stale blocks occur?
    by two version of the truth or blockchains being produced or propagated in the network and maybe blocks being produced prior to the 10 min. Blocks being produced prior to six confirmations and prior to the correct version of the truth having the chance to propagate through the network.
  4. Why is it important to wait for more than one block to be confirmed when sending or receiving a transaction?
    to see if that chain has been accepted by the decentralised network. The more confirmations the longer the block-chain length. The longest block-chain is the one that is accepted as the greatest version of the truth so miners extent it more by resolve the nonce for the next block reward…
2 Likes
  1. 2 valid versions of blocks will appear, making 2 different chains.
  2. stale blocks are blocks that were dropped out of the blockchain because another version was accepted as the final version of truth
  3. stale blocks occur when new miners add their blocks on another version of the blockchain which is finally accepted as the final longest chain
  4. because our block may be turned into a stale block and the confirmation will be reverted and transaction is cancelled.
1 Like

1+2+3. both blocks will be accepted by the nearest nodes around them and will be propagated (now we have two blockchains) - but soon the next block will be created and added to the blockchain and then the longer blockchain will be accepted and propagated to all - the block which is now no part of the blockchain any longer (is called stale/orphaned) will be dropped and all tx in this block go back to the mempool (if they were not confirmed in the other already created blocks)
4. If your tx is confirmed in a block which could become an orphaned or stale block - your tx will go back to the mempool and will not be confirmed any longer - so better what 6 confirmation - which is only around 1h

2 Likes
  1. What happens in the bitcoin network when two miners solve a block at the same time?
  • This is called a collision. Blocks start spreading across the network , creating a fork. The situation gets resolved when the next block will be mined, on either of these two blocks. The chain base on this latest block survives, the other block is then considered Stale or Orphan and its transaction go to the MemPool.
  1. What is a stale block?
  • A block that has been canceled and removed from the main blockchain.
  1. How do stale blocks occur?
  • They occur once the network has selected a blockchain as source of truth that didn’t contain that block.
  1. Why is it important to wait for more than one block to be confirmed when sending or receiving a transaction?
  • The longer the blockchain, the highest chance it will be adopted by the entire network. If you don’t wait long enough, your transaction might be in a block that will be staled.
1 Like
  1. The block splits into to two separate blocks with different information.
    2.a block that is dropped from the network.
  2. a stale block occurs when there is already another block in the network with more confirmations.
  3. you need to wait at least 6 confirmations just in case your block split in the network.
1 Like
  1. Both are valid for a short time - some miners will accept each new chain. The next block mined will determine which chain is valid. The last mined block on the other chains becomes stale.
  2. A block that was once mined, but is not part of the accepted blockchain
  3. Two blocks are mined at the same time by different miners
  4. One confirmation could end up being part of a stale block and any transactions within that block might not be part of the accepted chain. The transaction could be reversed.
1 Like

Merkle tree is a data structure that is built from transaction hashes and the root of the tree is used in the block header and used in the block hash calculation.
The blockchain is a list like structure that whose links are the hashes of previous blocks. In case of a split chain this part must be resolved since a linked list can only have one parent or sibling. :slight_smile:

1 Like