Saturday, July 6, 2024

blockchain fork – How is the issue of orphan blocks solved on this case?

What’s going to occur if a few of my friends (blue friends) have their chains as follows:

... -> A -> B -> D  (most important chain)
        -> C

whereas my different friends (inexperienced friends) and I’ve the next:

... -> A -> B -> D  (most important chain)

We will get into this example when the blue friends are related to another nodes that thought-about at some second chain with the block C as the primary. Thus, blue friends acquired the given block C. Nevertheless, since for them (blue friends) most important chain was the one with B block, they propagated solely B to me (and later D), whereas C was simply saved regionally as stale block of their stale chain.

Now think about the next situation:

1.first comes block E whose guardian is C; chains of blue friends appears to be like like this:

... -> A -> B -> D  (most important chain)
        -> C -> E

On this case blue friends will simply enhance stale chain and will not propagate E since its not part of the primary chain.

2.then comes block F whose guardian is E; chains of blue friends appears to be like like this:

... -> A -> B -> D  
        -> C -> E -> F (most important chain)

On this case blue friends will change to chain with F and since that is their new most important chain, they’ll propagate F (header message) to us.

The issue right here is that upon receiving block F (its header by header message) we’ll attempt to validate its guardian hash first and since block E is unknown us, we’ll contemplate block F as orphaned and reject it. This manner we’ll contemplate all future blocks as orphaned and reject it. As a consequence of this we’ll stay fully remoted within the community (me and all my purple friends). Even when we connect with another networks friends now, the state of affairs would keep the identical. How is that this solved?

Related Articles

LEAVE A REPLY

Please enter your comment!
Please enter your name here

Latest Articles