I have a question which may appear obvious but hopefully it’s not.

How do different Distributed Ledger Technologies (DLTs) and cryptocurrencies avoid network conflict?

I understand the distributed nature of the networks with nodes. But if you took a BTC node and had it try to connect to a BCH node, how is this conflict avoided? (BCH may not be a good example considering it’s a fork, then again it may be because of this.)

Is there a signature per coin on each block as a chain ID? Looking through the AcceptBlock() method doesn’t indicate it being the case.

Does it scan from block0 (genesis) for consistency to blockHeight?

I’ve customised an old version of BCH for playing with it, but want to update to the new code base (changing genesis and network IPs for discovery) but how is conflict avoided?

Hope this makes sense. Cheers.


1 Answer 1


The protocol messages on Bitcoin include a magic number to identify the network they belong to.

Bitcoin's magic values are described for example on the Protocol Documentation page in the Bitcoin wiki:

Screenshot of magic value table from linked page

This permits the corresponding nodes to immediately recognize whether they belong to the same network and disconnect if they do not.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge that you have read and understand our privacy policy and code of conduct.

Not the answer you're looking for? Browse other questions tagged or ask your own question.