As it relates to blockchain technology, a hard fork is a radical change to the protocol that makes previously invalid blocks/transactions valid (or vice-versa), and as such requires all nodes or users to upgrade to the latest version of the protocol software. Put differently, a hard fork is a permanent divergence from the previous version of the blockchain, and nodes running previous versions will no longer be accepted by the newest version.
Terms you should know
Before we start speaking about soft, hard and other strange-used words, it’s essential to give a short explanation of each term.
1. Blockchain protocol: the code convention which defines the connection, mining and transaction rules. To be a part of the network, you must comply with the protocol.
2. Fork: the moment you have a protocol version which is different from the main one.
Now, let’s talk about each one in a more detailed way.
The first question we need to answer before talking about forks or any other cutlery is:
Why do we need to update the protocol?
1. To fix important security risks found in older versions. As cryptocurrency is a relatively new invention, it has recently entered the life period, that a regular currency passed years ago. It took many versions of paper, color, font, security layers and more to develop the dollar that we know today. Now it is way harder to fake it. Same way, it will take some time to find all the cryptocurrency security risks and fix them.
2. To add new functionality – the fact we have Windows 10 today basically means, that the first Windows required some improvement. Lots of improvements. The Blockchain code is also upgraded from year to year. Since it is an open source development, developers work on it worldwide and propose their improvements to the community. If a feature is good enough, it will be added to the next version.
3. To reverse transactions. Remember the fake bucks? The government could put the rogue in jail but hardly could refund all the people who took it as real money. Too bad. In the crypto world, you can actually minimize the harm. Once the community finds out they have a security breach, they can proclaim all the transactions made from a specified date as not existing. Like, never happened. Did you ever want to go back in time? Here you go, enjoy. For the good guys, such a reverse process means that we just need to make the transactions again. For the “bad” – it will be harder to steal. Not impossible, though.
What is a soft fork?
It’s also a protocol change, but with backward compatibility.
Let’s take traffic rules as an example (it is actually pretty similar). Say, the US had a rule, where minimum highway speed should be 30 miles and maximum 60 miles. One day, the government decides that, from now on, it will be a minimum of 40 and a maximum of 70. What will happen? For most of the drivers, who drive with an average speed of 55 miles – nothing will change. They are still eligible to drive and are not violating the new low. But if you were driving 30 miles – you have to speed up.
In the same way, you don’t have to immediately upgrade your Blockchain version to the soft fork one, and you can work exactly as you did before, unless you want to do something against the new protocol.
What is a hard fork?
If we continue with the traffic example, hard work is basically a creation of a new parallel universe. With its own highways, drivers and blackjack.
If there was one driver who lived in Nebraska and had a Jeep – then now there is and additional “Driver Cash,” who lives in “Nebraska Cash” and has “Jeep Cash.” So, both drivers live separate lives in separate universes. But Nebraska Cash driver will never be able to visit his doppelganger or apply for a job in Nebraska – there is no portal between the realities. Sounds like a “Black Mirror” plot.
Let’s go back to crypto terms. After a hard fork, the previous version and the new one are completely split, there is no communication or transaction option between the two. Usually, the new version inherits all the historic transactions and, from now on, each version will have its own transaction history.
As a summary let’s consider a couple of cases when hard fork proved to be really helpful:
1) Bitcoin Cash
After the Hard Fork, Bitcoin Cash became a new, separate currency, everyone who had Bitcoins before the hard fork received the same amount in Bitcoin Cash wallet.
2) The DAO
The DAO was hacked and, as a result, 3.6 mln Ether were drained. In order to prevent the hacker from cashing, the community voted for a soft fork. But, after a short period, the majority had voted for the hard work as well.