Now more than ever cryptocurrencies are a trending topic, which attracts the attention of more and more people. Even though the public has been divided on the subject ever since Bitcoin’s first appearance in 2009, it seems that cryptocurrencies are here to stay. What’s more, they continue to evolve and change.
If you are one of the newly introduced to the world of Bitcoin, you might have come upon something called a hard fork. Then it’s logical to wonder what forks have to do with cryptocurrencies and where they fit in the whole picture. To clear matters, today we’re going to talk about what Bitcoin hard fork is and explain a bit about the Bitcoin protocol.
But first, let’s start with the basics.
#1. What’s the blockchain and how does it work?
Before the development of the blockchain, there were other attempts at creating cryptocurrencies. These experiments were not very successful because they couldn’t implement a secure way to validate transactions. But, in 2009 Satoshi Nakamoto suggested something called the blockchain.
A few would know that the idea for the blockchain goes back to 1991 and Stuart Haber and W. Scott Stornetta. They wanted to prevent document tampering and backdating. However, their approach didn’t receive wide recognition.
As its name suggests, the blockchain consists of blocks linked together forming a chain. Each block contains three things:
By information, I mean senders, receiver, and amount of coins. But the type of information would depend on the type of blockchain protocol because every cryptocurrency has a unique one, which specifies what kind of information they keep.
At its core, the blockchain is a ledger just like the one your accountant or bank is tracking your funds. The difference is that this ledger is distributed to every node of the network and each one keeps a copy and updates accordingly. A new block is added only when the majority of the nodes agree that it’s valid. If the majority rejects the block, it can’t be added.
Transparency and decentralization – these are the primary principles of the blockchain. The other crucial element is that transactions are irreversible. Explained simply, once a block is included in the chain, the information inside can’t be changed.
That feature has its good and bad sides. For example, if one were to temper with a block inside the chain, it would make all the other blocks invalid. Why is that?
As we said, each block, besides information, contains a hash – a complicated cryptographic function, which acts as a unique fingerprint. If something were to change inside the block, for example, the receiver, that would result in a different hash.
The block also contains the hash from the previous block, which links them in a chain. Since computers can calculate hashes very quickly, the Bitcoin protocol, for example, uses the proof-of-work algorithm, which makes calculating hashes time-consuming. Cheating attempts are difficult to accomplish and would acquire a lot of resources or someone taking over 51% of the network.
The bad news is that if you mistakenly send someone coins, you can’t go back and dispute the transaction, as you would if you’ve used your credit card.
#2. What’s the Bitcoin protocol?
Before we continue to the topic of forks, we have to make an important distinction between the blockchain and a protocol. People sometimes use them interchangeably, which is a mistake.
The blockchain is the technology, the idea of creating a secure, decentralized payment system. The protocol is the set of rules, which govern a particular blockchain. For example, what kind of algorithm would be used to reach consensus, what rewards users would get, how fees are calculated, the size of the block, and so on.
The Bitcoin blockchain has the Bitcoin protocol, while other blockchains like Ethereum have their set of rules, which are different from Bitcoin. Ethereum, for example, uses proof-of-stake instead of proof-of-work.
Think about the protocol as software, a program, which is necessary to implement the cryptocurrency. Since most of you are more familiar with Bitcoin, we will use its protocol as an example from now on.
Just like any software, the Bitcoin protocol doesn’t stay the same – it evolves in time. You know that your computer/laptop is updating its software regularly to fix bugs and improve performance. The same is happening with Bitcoin.
The main reasons why we might have to update the Bitcoin protocol are:
Its developers are constantly trying new solutions to make Bitcoin better. For example, they recently introduced something called the Lightning Network in an attempt to deal with Bitcoin’s scalability issues and slow transaction speed. Probably we will see a lot of new developments in the future in an effort to make Bitcoin as usable and tradable as fiat money.
Some of the updates of the Bitcoin protocol are minor ones and won’t affect the whole community. But others are so important that they will change the direction network is going to and will influence its future heavily. That’s where forks come into play.
#3. What’s a Bitcoin hard fork?
Let’s say that one group of developers has an idea about a new Bitcoin feature, which would reduce the transaction fees. A group of developers or miners might oppose the suggestion because they are worried about their profit. The two opposing parties meet, but they can’t reach a consensus. What would they do?
Well, one of the groups might decide that the differences are too fundamental and that they want to create their version of the Bitcoin blockchain, so they fork. In the programming language, forking is modifying an open-source code, which can have two results:
Bitcoin protocol has an open-source code, and everyone can have a look at it. The good thing about this is that no one can write something extra in the code without the other figuring it out. So, the group which is not pleased with the current course makes a copy of the Bitcoin protocol.
After they’ve changed the rules (the Bitcoin protocol) in their fashion, they have to specify when their fork will become active. Usually, they choose a block number. Let’s say that the number is 530,000. When block 530, 000 gets published, the blockchain will divide into two – the original one and the hard fork.
So, what happens is that we have two blockchains with supporters, which will add blocks to the blockchain they prefer. Since the hard fork is a copy of the original, all transactions that happened before the split are present on the fork, which means that you’ll get the same amount of new coins.
While that might seem like free money, it all depends on whether the fork manages to get enough supporters. If it’s unsuccessful, you’ll lose whatever you’ve gained.
Another important thing you should know is that after the division, the two parts of the blockchain are incompatible. If you make a transaction on the original one, it won’t be recorded on the fork and vise versa.
#4. Bitcoin hard forks history
The first split of the Bitcoin blockchain occurred on 1 August 2007 when Bitcoin Cash appeared. The apple of discord was the block size and the implementation of the Segregated Witness, which wanted to address the blockchain size limitation.
We have two more hard forks worth mentioning:
As a matter of fact, according to BitMEX Research, Bitcoin had 44 forks after the initial split in August 2007, but they haven’t had a lot of success in gaining popularity and supporters with a few exceptions. It’s important to handle these forks carefully until you can be certain in their prosperity and trustworthiness.
Bitcoin is not the only cryptocurrency to have hard forks. Ethereum also has had several hard forks, starting with the initial division into Ethereum and Ethereum Classic.
#5. What is a soft fork?
Now that we have explained what a hard fork is, some of might be wondering about soft forks. Yes, there is something called a soft fork. The difference between the two is a simple one. While hard forks are incompatible with the original blockchain, soft forks are compatible.
Let’s illustrate it with an example. A hard fork will be creating a whole new alternative dimension with its own rules and versions of the people. You won’t be able to switch between dimensions because there is no portal between the two worlds. That’s why, when you make a hard fork the two chains keep separate transaction histories.
On the other hand, a soft fork is like tightening the rules. For example, if the speed limit is decreased to 65 km/h and you drive with 70 km/h, you’d have to slow down to obey the rules, or in our case, update to the latest version of the blockchain. However, if you usually drive with 50 km/h, you might not have to do anything for a while.
In more technical terms, the soft fork allows old versions of the blockchain to accept new blocks, but the new “improved” version will reject the old blocks. However, in time, all mines will be forced to upgrade to the latest version.
Although I used Bitcoin as an example, remember that all the other cryptocurrencies can have hard and soft forks. As time goes on, we will probably see a lot more split-ups, but also new features and new coins.
What do you think about Bitcoin’s hard forks? Do you think that they will be as successful as Bitcoin? Share your thoughts in the comment section.