# Fork Legitimacy Framework

Cryptoasset networks operate programmatically, where transaction validity is determined by the underlying code upon which the blockchain runs. This code is governed by a set of “consensus rules”. There are two types of forks that cryptoassets can undergo:

1. If a change in consensus rules does not require nodes to implement software changes in order to be compatible with the new set of rules (i.e. backwards compatibility), this is known as a soft fork.
2. If a change in consensus rules requires nodes to implement new software in order to remain compatible with the new set of rules, this is known as a hard fork.

This framework only considers forks of cryptoassets with Proof-of-Work consensus mechanisms.

{% file src="<https://2398817338-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-MO23j33wWGzm0NrZseN%2Fuploads%2FvYU8BR8PbjLi2milBlGL%2FCMBI%20Fork%20Legitimacy%20Framework%20v1.4.pdf?alt=media&token=b71478d0-5678-4411-8b5f-253663840101>" %}
