Homework on Soft and Hard Forks - Questions

Homework on Soft and Hard Forks - Questions

  1. What is the difference between a softfork and a hardfork?

Hardforks make previous invalid blocks valid - expansions of the rule set
Softforks make previous valid blocks invalid - contraction fo the rule set

  1. What are some of the reasons why you would do a hardfork?

Expansion of the rule set.
Fix protocol bugs.
Performance improvements.

  1. What are some of the risks with performing a hardfork?

Split chain
Split community
Split hashpower

  1. Soft fork makes previously valid blocks invalid and hard fork makes invalid blocks valid.
  2. A change in consensus.
  3. During a hard fork the hash power splits into two chains, lowering security
  1. softfork contracts the rules and a hardfork expands the rules.
  2. create a new coin, expand the functionality, clear break from old coin
  3. split the community and hash power, and decrease security
  1. Hard Forks end up non compatible with the previous rule set, causing the previously valid blocks invalid, they do not fit into the new rule set update of a Hard Fork. A soft fork is making the updated network backwards compatible, making the upcoming new blocks to be valid just like the older blocks. They will all fit into the new rule set.

  2. Reasons for a Hard Fork could be a new vision among developers of the software, this will also occur when community (consensus) split opinions in the current rule set and code scripts.

  3. It will split the community and the blockchain because the nodes will have to choose which one of the two blockchains they want to support after the hard fork. This will result in a decreasing security of the two new networks as the hash rate will eventually drop as nodes disconnect from the first blockchain to the forked one. This is more of a temporary problem but needs to be considered with blockchains where the communities aren’t that large, the fewer participants, the less secure network.

1- A soft fork has a set of rule which is still accepted by the non-updated nodes whereas a hard fork sets rules which are not valid for the non-updated nodes.

2- You would do a hard fork if you need to introduce a set of new rules which are currently not accepted/authorized by the network.

3- The risk is that the non-updated network does not accept your blocks which means that your blockchain looses the hash power of the nodes which don’t update… therefore your new blockchain is less secure (less hash power)

1. What is the difference between a softfork and a hardfork?
Softfork is backward compatible while hardfork is not.

2. What are some of the reasons why you would do a hardfork?
In case of needs to change something in the block or data structure.

3. What are some of the risks with performing a hardfork?
An split of the network in 2 blockchains can be confusing and dangerous. A replay attack is a big issues when performing a hardfork.

  1. What is the difference between a softfork and a hardfork? - a hardfork makes previously invalid blocks valid which can be viewed as an expansion of the consensus rule set while a softfork makes previously valid blocks invalid which can be viewed as a contraction of the consensus rule set.

  2. What are some of the reasons why you would do a hardfork? - add functionality to network that can’t be done inside the current consensus rules.

  3. What are some of the risks with performing a hardfork? - risks include splitting the community and has power along with the chain being split. Also, introducing potential new risks with the new rules.

  1. Softfork is making previously valid blocks invalid… Hardfork is making previously invalid blocks valid.
  2. To change consensus rules.
  3. Potentially lead to a permanent split in the chain, therefore new currency and the split of hash power.
  1. What is the difference between a softfork and a hardfork?
    hard fork - makes previously invalid blocks valid
    soft fork - makes previously valid blocks invalid

  2. What are some of the reasons why you would do a hardfork?

  • want to expand the consensus rule set so more blocks will be valid
  • want to give nodes and miners choice of making the change or not

3 What are some of the risks with performing a hardfork?

  • new chain becomes a new currency
  • not enough users, nodes or miners chooses the new chain, community split

Softfork:
Doesn’t end up splitting the chain
Is a contraction
makes previously valid blocks invalid
requires just a majority
can be more confusing
doesn’t split the community

Hardfork
an expansion
makes previously invalid blocks valid
splits the chain
splits the community
more clear

  1. If you want to expand the rules and create a new chain which creates a new coin.

  2. It splits the community and also makes the network less secure because some miners will leave and got to the new chain.

1.The difference between hard and soft fork is that hard fork expands (the rule set) and soft fork contracts. Also, hard fork makes previously invalid blocks valid and soft fork makes previusly valid blocks invalid.

  1. Some of the reasons to do a hardfork would be to expand the rule set and and change the consensus.

  2. Some of the risks with performing a hardfork could be a reduction in the hash power of the network, as a result of a chain and community split that can occure, and that, in turn, can lead to less security and vulnerrability.

  1. What is the difference between a softfork and a hardfork?

A softfork makes previously invalid blocks valid by expanding the rules of the protocol and a hardfork makes previously valid blocks invalid by contracting the rules of the protocol.

  1. What are some of the reasons why you would do a hardfork?

To create a new coin
To resolve a disputes in the community about protocol.
To change the properties of the protocol.
Gives a clear democratic process to software changes.

  1. What are some of the risks with performing a hardfork?

Having to transfer coins
Loosing trust in the network
ā€œreplayā€ attack
Splitting into two coins if there is a residual mining community in the old fork

:blush:

1 Like
  1. A soft fork could be considered CONTRACTIVE. If their is >50% hash power then their wont be a fork because the minority of created blocks from the NOT updated nodes will be disregarded. It is generally preferred over a hard fork. It makes previously valid blocks invalid.
    A hard fork could be considered EXPANSIVE. 100% of the network needs to be updated in order to avoid a fork, and the outcome of the update is clear. It makes previously invalid blocks valid.

  2. You would use a hard fork to introduce a change that could potentially exclude more blocks that have not been updated. Hence 100% network update is preferred but more difficult. for example, increasing the black size from 1mB to 2mB. Also, if you need a more democratic ruling on its inclusion.

  3. The risks include splitting the community, the hash power is split, and 100% network updating is difficult to achieve quickly.

  1. Hardfork makes previously invalid blocks valid and softfork makes previously valid blocks invalid.
  2. To make bigger blocks possible.To do things that are expanding something but don’t make old version out of rules.
  3. Split the chain if 100% of nodes don’t make update and hashpower and community splits also. New coin is made.
1 Like
  1. Soft fork makes invalid blocks valid and hard fork makes valid block invalid.
  2. To expand the rules of current blockchain and to change the consensus.
  3. Split of community and reduced hash power/security
  1. Soft forks make previous valid block invalid and hard forks do the opposite of that.
  2. To increase the block size
  3. It could split the chain and that will lower the hasing power on the original chain and creates less security, also malicious attacks could be carried out on each chain by switching chains and doing a 51% attack.
  1. There are a few major differences between a Hard and Soft fork. Both can be described as updates to the blockchain’s ā€˜consensus software’.

  2. Hard Forks expand definitions, they expand the rules, in the sense that an increase in block size from 1Mb to 2Mb, for example, would make previously invalid blocks valid. In a sense, they expand and enclose the previous software update. Hard forks create a new chain in the process. They are a clear change of direction.

  3. Because of this, they can be contentious within communities if some miners disagree with the changes. If enough miners disagree, they may carry on the previous blockchain [this is how Ethereum Classic started]. This causes among other things, a security weakness in the chain, because there are now less miners supporting it. It also creates a new currency, leading to confusion. BCH and BSV I’m looking at you.

  • Soft Forks, however, do the opposite, and they decrease definitions - they contract the rules - in the sense that a decrease in block size would render previously valid blocks invalid. In this sense they do not enclose, but exclude. Soft forks are generally thought to be less disruptive, but miners must accept these soft changes - whether they like them or not.
2 Likes
  1. A soft fork makes previously valid blocks invalid, while a hard fork makes previously invalid blocks valid.

  2. To enlarge block sizes, to add new functions, to make a clear divide between the old and new chain, to give miners the choice to stay with the original or update.

  3. You can lose hash power(security). It often divides the community.

1 Like
  • HF: previous invalid blocks valid -> expansion of the rule set. 100% of the nodes must update, otherwise chain splits.

  • SF: makes previously valid blocks invalid -> contraction of the rule set. Chain does not split if there is a majority of network for update

  1. To implement an expansionary consensus rule. To implement a rule where all nodes are certainly able to verify (instead of being fooled into it), so considering security.

  2. If network splits, then there is less hashing power per forked chain, so security is weaker. Also the community is split.

1 Like
  1. Soft fork makes invalid blocks valid.
    2.Change in consensus.
  2. Splits the comunity.