Cryptocurrency: What is fork?
Fork - This is a branch of one cryptocurrency project from another. Fork created by modifying the source code - the hashing rules or the mining algorithm.
Some investors have a positive attitude towards forks, others - negatively. It is believed that the separation of the project speaks of an internal conflict in the company, although this is not always the case. Forks solve network congestion issues. For example, at a certain point, transfers to Bitcoin became very expensive, tokens reached the recipient in a week. At this point, it was decided to change the size of the hash from 1 MB to 8 MB.
The causes of forking are:
- Creating a new cryptocurrency platform based on the old one;
- Rescuing of the network;
- Use as a new financial asset for speculation;
- Creating a fork for experimental purposes.
Soft fork implies a slight departure from the rules, which does not require a full-scale software update. This is a less radical type of separation. It is based on a change in the protocol in which the previous blocks become valid, but the old nodes remain compatible with the network. This means that soft fork allows minor changes compared to hard for, so for its holding only the support of most miners is sufficient. Upgrading to a new version is not mandatory for users, but not for miners who will not be able to mine new valid blocks without updating.
Soft fork effects:
- The emergence of new security protocols.
- Improving network permeability
In the case of hard forks, it is more about changing the protocol so that previous blocks or transactions become valid. This includes changes in the structure of the block and rules for the complexity of its solution. The main idea of Hard fork is to overcome certain limitations that were originally incorporated into the project.
The most common causes that lead to hard forks are:
- Update code or fix errors. This is the most common case, which is associated with the need to update or correct the original errors in the source code.
- Lack of consensus. In the absence of a consensus of nodes that support the blockchain, it will be decided to create a new token with its own blockchain.
The consequences of Hard fork
- Both chains survive, and the computational power and value of each crypto active asset are divided according to the market. This scenario is likely in cases of controversial hard forks. An example of this is the split of Ethereum and Ethereum. Classic.
- The chain that initiates bifurcation is completely alien to the main chain, and it allows the appearance of altcoin, the birth of which does not necessarily affect the computing power or market value of the original chain. An example of this is the Bcash bifurcation ( Bitcoin Cash ) from a bitcoin chain.
Forking is a positive or negative process?
In any case, the search for absolute consensus is an almost impossible task for purely statistical probability, therefore, it is not easy to find a balance between the freedom of users and the best way of drawing up a protocol. Many times the result of this controversy is the final separation, as happened with Ethereum. But in this case there is another dangerous drawback: two projects will be created that will inevitably lose the support and value that they had before their separation, and, moreover, they will compete with each other, also sharing the community.
What are the user roles in forking?
With soft-fork, and with hard fork, users should be involved in upgrading the network, downloading new software, and introducing the upgraded sites in operation. However, software fork does not exclude from the network those who are not updated, while hard forks vice versa. No matter how the change, there is a need to develop applications that take full advantage of to do an update.
What differs soft fork from hard fork?
Software forks are difficult to program, they affect agreed rules, and their implementation does not imply updating by all nodes on the network, although this is the most desirable scenario. On the contrary, software forks are easier to develop in code, add or modify consensus rules, and their implementation includes the mandatory update of nodes or the exclusion of a user from the network.