Contents

  • Entrance

  • Who makes decisions in a blockchain network?

  • What is a fork?

  • Difference between hard forks and soft forks

    • What is a hard fork?

    • What is a soft fork?

  • Which is better between hard fork and soft fork?

  • final thoughts


Entrance

Whenever you're asked to update the digital banking app on your smartphone, you'll probably do it right away. In fact, your phone may be updating automatically without you even realizing it. This is a necessary process. Ultimately, if you do not install the most up-to-date version of the software, you run the risk of being denied access to the service.

Things are completely different in open source cryptocurrencies. To use Bitcoin, you don't have to read every single line of code that creates it, but you do have the option to do so. There is no hierarchical order here, and there is no bank mandating updates or making arbitrary regulations. As a result, adding new features to blockchain networks can be a challenging process.

In this article, we will examine how to upgrade cryptocurrency networks despite there being no central authority. There are two different mechanisms to do this: hard forks and soft forks.


Who makes decisions in a blockchain network?

To understand how forks work, it is important to first understand the participants involved in the decision-making processes (or management) of the network.

In Bitcoin, participants can be broadly divided into three subgroups – developers, miners, and full node users. These are the parties that can truly contribute to the network. Although lightweight nodes (i.e. wallets on your phone, laptops, etc.) are heavily used, they are not considered “participants” when considering the network.


Developers

Developers are responsible for creating and updating the code. In a typical coin, anyone can contribute to this process. The code is public, so developers can also suggest changes for other developers to consider.


miners

Miners are the people who keep the network safe. They run the cryptocurrency's code and dedicate their resources to adding new blocks to the blockchain. For example, on the Bitcoin network, they do this through Proof of Work. They receive a block reward for their efforts.


Full node users

Full nodes are the backbone of the cryptocurrency network. They verify, send and receive blocks and transactions, and also maintain a copy of the blockchain.


You can often come across intersections in these categories. For example, you can be a developer and full node user or a miner and full node user at the same time. You can be all or none. In fact, many people we consider cryptocurrency users do not fill any of these roles. Instead, it prefers to use lightweight nodes or centralized services.

Looking at the definitions above, you might think it's okay for developers and miners to decide on the name of the network. Developers create the code – without them there would be no software to run, no one would fix software bugs or add new features. Miners also secure the network – without healthy mining competition, the chain could fall into others' hands or grind to a halt.

But if these two groups force the rest of the network to follow their wishes, there will be no good ending. According to many, real power is concentrated in full nodes. This is a largely optional function of the network, meaning users can choose which software to run.

Developers won't come to your home and force you at gunpoint to download Bitcoin Core binaries. If miners force users to make a change they do not want and adopt a “take it or leave it” approach, users will choose to leave the network.

These parties are not all-powerful rulers – they are merely service providers. If people decide not to use the network, the coin loses value. Depreciation directly affects miners (the rewards they receive will be worth less in dollar terms). Developers may also be ignored by users.

As you can see, the software does not belong to anyone. You can make any changes you want and communicate if others start using your modified software. In this context, you create a fork in the software and create a new network in the process.


What is a fork?

A software fork occurs at the point where software is copied and modified. The original project continues its life, but is now separated from the new project, which takes a new direction. Suppose the team behind your favorite cryptocurrency website has a major disagreement on how to proceed with business. Part of the team might create a copy of the site on a different domain. But later on, it may start sharing different types of content compared to the original site.

The projects come from the same infrastructure and have a common history. However, just like a road splitting into two, their paths are now permanently separated.

This kind of thing happens frequently in open source projects and has been around since long before the advent of Bitcoin or Ethereum. However, the difference between hard forks and soft forks is almost unique to the blockchain world. Now let's talk about these in a little more detail.


➟ Do you want to enter the world of cryptocurrency? You can buy Bitcoin from Binance!


Difference between hard forks and soft forks

Although they have similar names and serve essentially the same purpose, hard forks and soft forks differ greatly.


What is a hard fork?

Hard forks are software updates that are not backward compatible. These usually occur when nodes add new rules that conflict in some way with the minus nodes' rules. New nodes can only communicate with nodes using the new version. As a result, the blockchain splits and two different networks emerge: a network using the old rules and a network using the new rules.


Node’lar güncelleme yaptıklarında maviye döner. Eski sarı node’lar yeni node’ları reddeder, fakat maviler kendi arasında bağlantı kurar.

Nodes turn blue when they update. Old yellow nodes reject new nodes, but blue nodes establish connections among themselves.


In this case, there are now two networks operating in parallel. Both still operate on blocks and transactions, but they no longer operate on the same blockchain. Until the fork, all nodes have the same blockchain (and this history persists), but after the fork, they have different blocks and transactions.


blockchain 600.000. blokta çatallanıyor


Since the networks have a common history, if you held coins before the fork, you now own coins in both networks. 600,000. Let's say you have 5 BTC at the time of a fork in the block. These 5 BTC are 600,001 of the old chain. You can spend it on the blockchain, but those 5 BTC are 600,001 of the new blockchain. It still won't be spent on your blog. Assuming the cryptography hasn't changed, your private key will still hold 5 BTC in the forked network.

An example of a hard fork is the 2017 fork that split Bitcoin into two separate chains – the original network, Bitcoin (BTC), and the new network, Bitcoin Cash (BCH). The fork was made after long discussions about what was the best approach for scaling. While Bitcoin Cash supporters wanted to increase the block size, Bitcoin supporters opposed the change.

An increase in block size requires changing the rules. This fork was made after the SegWit soft fork (more on this later), so nodes could only accept blocks smaller than 1MB at that time. If you create a block that is otherwise valid but is 2 MB, the other nodes will reject it.

These blocks can be controlled by nodes that modify their software to allow blocks larger than 1MB. Of course, as a result, nodes with new software become incompatible with nodes in the old version, and only nodes that make the same protocol change can communicate among themselves.


What is a soft fork?

A soft fork) is a backwards compatible upgrade, meaning upgraded nodes can continue to communicate with non-upgraded nodes. In a soft fork, a new rule is usually added that does not conflict with the old rules.

For example, a reduction in block size could be implemented through a soft fork. Let's give an example from Bitcoin for this: Although there is a limit on how big a block can be in Bitcoin, there is no limit on how small the block can be. If you only want to accept blocks under a certain size, all you have to do is reject the larger ones.

However, doing this does not automatically disconnect you from the network. You will continue to communicate with nodes that do not follow this rule, but you will filter some of the information they forward to you.

A good real-life example of a soft fork is the previously mentioned Segregated Witness (Segwit), which occurred right after the Bitcoin/Bitcoin Cash split. SegWit is an upgrade that changes the format of blocks and transactions, but it's cleverly designed. Old nodes can continue to verify transactions and blocks (the new format does not break any old rules), but they cannot understand what they are. Some sections become readable when nodes switch to new software, allowing nodes to parse additional data.


SegWit’in etkinleştirilmesinin üzerinden iki yıl geçmiş olsa da tüm node’lar yükseltmeyi yapmamıştır. Yükseltmeyi yapmak bazı avantajlar sunar, fakat ağı bölecek bir değişiklik olmadığı için değişikliğe yönelik aciliyet söz konusu değildir.


Although it has been two years since SegWit was activated, not all nodes have made the upgrade. Making the upgrade offers some benefits, but since there is no change that will disrupt the network, there is no urgency to change.


Which is better between hard fork and soft fork?

Fundamentally, these two types of bifurcations serve different purposes. Controversial hard forks can divide the community, but planned ones offer the freedom to change software by everyone's consensus.

Soft forks are gentler options. Generally speaking, what can be done is limited, as new changes must not conflict with old rules. However, if the update can be arranged to remain compatible with the old, there is no need to worry about splitting the network.


final thoughts

Hard forks and soft forks are crucial to the long-term success of blockchain networks. In decentralized systems, it allows changes and upgrades to be made even though there is no central authority.

Forks make it possible for blockchains and cryptocurrencies to integrate new features as they continue development. Without these mechanisms, we would need centralized systems that work with a top-down control mechanism, or the protocol would have to follow the same rules throughout its life.


➠ Do you have questions about bifurcations? You can visit Ask Academy!