Modification of the Bitcoin source code is a fork. Such an algorithm helps to artificially increase the space on the network blocks and optimize their operation. In this case, the program is considered a fork only if the code changes in the blockchain system does not affect its authenticity.
All forks are divided into several fundamentally different types:
- Soft fork
- Hard fork
These types of fork have the same goal – the block optimization, but the ways to achieve it are different.
Soft fork is characterized in the market as a “soft” version of code changes in the blockchain. The program is used in the case that the blocks need to be optimized. Thus, if some nodes of the network do not accept soft fork changes, they will still be able to interact with the changed nodes.
We can take the British nodes, as an example. According to the new soft fork rules, it will switch to American English. At the same time, some of the nodes, which invariably remained on the British version, will still be able to “understand” the US language. Such an arrangement will lead to the achievement of the optimization goal, but it will not affect the main software.
One of the drawbacks of using soft fork is the fact that the process is rather slow. At the same time, all the changes in the codes are reversible.
The work of hard fork is more radical. As an example, we take the same situation with language nodes, then in the process of hard fork, changing the codes will bring its consequences. If the old nodes were based on British English, and the new codes will be based on Chinese, then the nodes simply will not understand each other.
In order for the nodes to work in the normal mode, hard fork will offer to divide them into two separate parts, which will no longer be able to interact with each other. These changes are necessary, since blocks that are recognized as genuine in one part can not be valid in another part.
The use of hard fork is possible only if the developer is sure that no oversight is allowed in the software of the blockchain.
“Clones” of cryptocurrency can be called a fork. For example, now you can copy the Ethereum code to your computer and then change its name, the emission rules, plus, emit millions of its coins in the “new” currency and invite friends to “play” in the economic game. These actions will lead to the creation of a Ethereum fork and this project can even get serious.