Hard Fork vs Soft Fork: What the ARK Core v2 Hard Fork Means to You
After our recent announcement of the impending hard fork to ARK Core V2, we noticed a lot of questions on social media as to what a hard fork means for the average user and whether or not user funds would be impacted. Let’s clarify what a fork is and why it is necessary, determine the difference between soft and hard forks, and discuss how the Core V2 hard fork relates to you.
TL;DR — For those who just want a quick and dirty answer, users will not be impacted by the hard fork. You’ll simply update your desktop or mobile wallets and you will be good to go. If you don’t update your wallets right away, your funds will still be safe and waiting, but you won’t be able to move them until you update. All passphrases and ARK addresses will stay the same. This is not a contentious hard fork and all delegates are expected to update their network nodes to V2 upon release.
With that said, let’s get started.
Ark Blockchain Basics
Let’s first review the mechanics of the Ark blockchain:
The ARK network utilizes a decentralized ledger to store the history of all network transactions. This ledger is used by network participants to validate wallet balances. ARK uses a consensus mechanism known as Delegated Proof-of-Stake, or DPoS. In DPoS, users and token holders vote to elect 51 delegates who are responsible for validating transactions on the network, while the rest act as backups and redundancies. These 51 forging delegates agree on a set of rules that determine what a network transaction should look like, what types of transactions are allowed, and how a valid transaction should be structured. These rules are hard coded into the network logic and defined within the code. So long as a transaction falls within the predefined rules in the code, it is validated by the network of delegates. This validated transaction is injected into a block of data, which is then stored in the decentralized ledger maintained on each of the network nodes. The history of these blocks forms what we call a blockchain.
In order to understand the difference between soft and hard forks, it is important that we first clarify the concept of a ‘fork’ and what that actually means within the context of a decentralized ledger, specifically the ARK blockchain.
So, What’s a Fork?
In a perfect world, the blockchain will continue on as one database with all nodes in perfect agreement at all times. Unfortunately, we don’t live in a perfect world. The blockchain may eventually diverge into two separate paths due to a disagreement among the validators- in our case, delegate nodes. This divergence is what we call a fork. A fork is caused by a disagreement regarding the validity of the data in the block. Two separate histories are created, each having a different version of ‘the truth.’ Forks can happen due to disagreements within either the consensus mechanism itself, or due to protocol upgrades. Upgrades may be contentious or non-contentious in nature, but beneficial upgrades like the pending ARK Core V2 upgrades are not contentious. To clarify, the team and delegates are in agreement that ARK V2 is the logical next step in the development process and ARK V1 should be retired.
Soft Fork Vs. Hard Fork
Now that we understand what a fork is, let’s discuss the two major fork types: soft forks and hard forks.
Until recently, ARK Core V2 was intended to be a soft fork. A soft fork occurs when an upgrade is made to the network protocol, but the upgrade is backwards compatible with the previous version. In this case, users and nodes who do not immediately update to the new version of the software can still send transactions and validate blocks. This allows for a gradual upgrade and helps to avoid situations like exchanges being out of commission while they adapt to the new network changes.
After initial testing and review of the compatibility between the two ARK Core versions, the ARK development team determined that it would take too much time and effort in order to make the versions backwards compatible. As such, the ARK Core V2 upgrade will create a hard fork of the network. It’s important to note that the effort and time spent to determine this was, in the team’s opinion, worth it- if successful, it would have offered some extra convenience for the transition.
This ARK Core V2 hard fork will require all network nodes to upgrade at the same time. It is NOT backwards compatible with the previous version. A specific block will be chosen, and at that block, the network will upgrade to the new transaction protocol specifications. This means that after the upgrade, nodes running the new code will be in alignment with the protocol upgrades, and nodes running the old code will not. This process creates a divergence that will produce two versions of the ARK blockchain.
2 Versions?! Is this like Bitcoin Cash? Free Money?! ARK Classic Forever!
Hold on, not so fast! Hard forks can take many different forms and are generally considered contentious or non-contentious in nature. The hard forks you typically hear about in the industry make headlines because they are contentious, meaning two groups within that community disagree with a certain proposal. Bitcoin Cash is a prime example of a contentious hard fork. One group wanted 8 MB blocks, the other didn’t, so we ultimately ended up with big headlines, two separate blockchains, two projects, and a lot of consternation within the community.
ARK Core v2 is NOT a contentious hard fork. To date, no active delegates have expressed or demonstrated a desire to forgo the upgrade to the protocol, or go against these pending upgrades. All are in agreement that the upgrades are necessary and beneficial to the network. ARK will continue on as one network, with substantial upgrades, and a positive foundation for future development.
Hopefully this addresses any concerns or questions you may have had regarding Ark Core V2, the pending fork, and how that impacts someone like you. If you still have questions, feel free to reach out to a member of the team through our slack.