Suppose double spend attacks cannot happen(assume senders, miners etc are all ideal actors) in a network like BTC for cryptocurrency transactions. I am assuming still fork can happen if two miners produce blocks say b1 and b2 almost same time linked to same previous block. Will then be there any need to do consensus?. Can there be still conflicting transactions?
1 Answer
Even with no malicious intent, block chain forks can occur. In this case you still need the "most work chain" rule for the network to converge.
-
I am trying to see what if no double spend. Then each node might have different order of blocks but they are all good transactions. So in that case is there a still need to make /converge it a single chain for all using the chain rule? if so tell me a case where it is needed. Commented Jul 21, 2023 at 13:26
-
No one is "designated" to mine the next block. There is not a single valid next block. Multiples miners around the world are mining different valid block candidates. As such it's possible (and actually common) that two miners would find a valid block before any of the two has propagated throughout the whole network. One part of the network would be on chain with block
A
and another one with blockB
. It's necessary for the network to come on a conclusion about which block will be accepted moving forward. This is achieved by using the most work chain rule. Commented Jul 21, 2023 at 13:42 -
1If you have a rule that miners coordinate with one another to make sure no concurrent blocks are produced, then that is your consensus mechanism. You haven't removed it, just replaced it with another one. Commented Jul 21, 2023 at 14:10
-
I am assuming for some reason double spend wont happen(it is given). Suppose the DAG is not resolved using chain rule. so fork is happening and all nodes keep this but they are validated transactions and it is given double spend wont happen. Can there be conflict or issue because of this ? Or I am going wrong somewhere ? Commented Jul 21, 2023 at 15:39
-
1So you're talking about a system that wouldn't have blocks? I'm struggling a bit to follow here. Commented Jul 21, 2023 at 16:01