-
Notifications
You must be signed in to change notification settings - Fork 0
Description
Issue:
Currently there is no fail-over mechanism for the consensus so when the consensus for a block fails there is no way for the nodes to resolve the issue and move on and the chain is broken.
Solution:
Use a forking mechanism for nodes to create their own version of the blockchain and work on it (like an agree to disagree scenario). Once an agreement has been made to resolve the dispute (such as reworking the block creation and consensus again). The new block is added to the chain.
Alternatives considered:
Attempting to resolve the dispute on the main chain. This would be a simpler implementation but would be riskier and slower as nodes have to rework on the main chain. Also opens the vulnerability to DDoS attack that can compromise the system.
Additional Context:
- How will the nodes work to reconcile the forks?
- How can the network go on uninterrupted will there be a new genesis block for the new fork as it points to a previous block's hash that would not be available?
- If the network goes ahead uninterrupted a new block is commited before the dispute is resolved, where will this forked block go to be committed? from where it was forked or the end of the chain?