<p>Even with no malicious intent, block chain forks can occur. In this case you still need the &quot;most work chain&quot; rule for the network to converge.</p>

CC BY-SA 4.0
2023-07-21T13:26:23.187Z
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.
user319280
CC BY-SA 4.0
2023-07-21T13:42:42.560Z
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 block `B`. 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.
Antoine Poinsot
CC BY-SA 4.0
2023-07-21T14:10:55.700Z
If 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.
Pieter Wuille
CC BY-SA 4.0
2023-07-21T15:39:36.017Z
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 ?
user319280
CC BY-SA 4.0
2023-07-21T16:01:53.857Z
So you're talking about a system that wouldn't have blocks? I'm struggling a bit to follow here.
Antoine Poinsot
CC BY-SA 4.0
2023-07-21T16:10:39.497Z
Yes hypothetical, with or without blocks.
user319280
CC BY-SA 4.0
2023-07-21T12:52:10.973Z
2023-07-21T12:52:10.973Z
Antoine Poinsot
<p>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?</p>

<doublespend><consensus>
is consensus needed when double spend attacks cannot happen(assume ideal case)
user319280
# is consensus needed when double spend attacks cannot happen(assume ideal case)

(Asked by: username_0 on 2023-07-21)

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?

**Tags:** doublespend, consensus


---

## 1 answers

### Answer by username_1 on 2023-07-21. Score: 1 | Accepted 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.

> **Comments:**
> **username_0**: 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.  
> **username_1**: 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 block `B`. 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.  
> **username_2**: If 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.  
> **username_0**: 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 ?  
> **username_1**: So you're talking about a system that wouldn't have blocks? I'm struggling a bit to follow here.  
> **username_0**: Yes hypothetical, with or without blocks.  

---

