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?
A hard fork is when you do an expansion of the rule set. You change the consensus rule in such a way that is not forward compatible, the non upgraded systems can no longer process the new consensus rules.
A soft fork is when you do a contraction of the rule set. if the not upgraded node can still see the new block (with the new rules) as valid this is a soft fork.

2. What are some of the reasons why you would do a hard fork?
You do a hard fork to introduce new features (network security, or scaling, etc…)

3. What are some of the risks with performing a hard fork?
You split the chain and the community, New currency, hash power split

1 Like

hard fork set of rules-expansion --> makes previously invalid blocks valid
soft fork set of rules-reduction --> makes previously valid blocks invalid
2)
increasing the blocksize
new currency
ā€œclear updateā€ you are on the new chain…
democratic update

decreasing hashpower,
split community,
split chain,
currency

1 Like

Apparently, I collapsed the community with the hash power. Thanks for clarifying that for me!

1 Like

hey Mauro!! thanks for reading and fixing me!! I meant in any disagreement that is not resolvable, that the solution needs to be different for each side of the 2 camps. and yes your answer is clearly better :stuck_out_tongue_winking_eye:

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

Hardfork is all or nothin’, Either everyone accepts the update or those that don’t continue on the old Consensus Rules, while those that update use the new Rules. Also, the Hard Fork makes previously invalid Block valid and a Soft Fork makes a previously valid block invalid.

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

    To change the consensus rules for the better.

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

You the risk of splitting the Chain and possibly the community.

1 Like

Hi Samore! Can you think of any examples where consensus rules are changed?

2 Likes

Sir,
In the tutoria,l the Block size was used as an example…I would consider amending the Rules to include a small Tythe to my Wallet address , but I believe that rule would stand a better chance with a Soft Fork.
Please forgive my insolence…But I’m not familiar enough with the Rules governing Consensus to seriously propose an example of what would be a reasonable change.

2 Likes

Sir,

In the tutorial, the Block size was used as an example…I would consider amending the Rules to include a small Tythe to my Wallet address , but I believe that rule would stand a better chance with a Soft Fork.

Please forgive my insolence…But I’m not familiar enough with the Rules governing Consensus to seriously propose an example of what would be a reasonable change.

1 Like
  1. Soft fork makes previously valid blocks invalid and hard forks makes invalid blocks valid.
  2. A hard forks is done if needed to be changed consensus.
  3. Reduces hash power,spliting chain,spliting comunity. Will reduce security and creates new currency.
1 Like
  1. A soft fork is a change to the rule set about the structure of a block that will mean previously valid blocks to be rejected by the network as invalid. This is thought of as a contraction of the rule set and the new blocks would still be valid viewed from the old rule set. This prevents the creation of a second chain and allows the nodes to update their software over time. A hard fork is a change to the rule set that means previously invalid blocks are now valid to the network and this can create the creation of a second chain where one chain uses the new rule set and the other uses could use both.

  2. A reason for a hard fork could include the identification of a security flaw, the role back of a transaction or an ideological disagreement within a community or to just add new functionality.

  3. A few of the risks presented by a hard fork include the loss of hashing power by the network reducing the security of the chain because both chains are adopted by separate groups of miners, and the possibility of double spend as the network no longer recognises the transactions on the old chain.

1 Like

Hey! Don’t worry!! That’s why you have all this support, so you can explore or ask about topics you don’t understand. Yes, block size is an example!

1 Like

Exactly. This is because we are making the previously invalid blocks valid. Previous implementations of the bitcoin network would reject any expansion in the blocks, as they would be invalid. Glad I could help. Keep up the great work. :slight_smile:

1 Like

I see. If a significant amount of nodes start to disagree with the current protocol it may cause a hard fork that will end badly. The chain will probably split into 2 versions. Thanks for making me feel special, I consider that increasing the block size is the easiest way to understand what a hard fork is. Keep up the great work. :smiley: :fire:

2 Likes

I am not exactly sure what you mean by this. If the networks are still decently secured after the split there shouldn’t be any possibility of double spending. However we have a form of an attack called ā€œreplay attackā€. Here is a good definition:

"A ā€œ replay attack ā€ is an exploit that can occur when two forked cryptocurrencies allow transactions to be valid across both chains."

2 Likes

…

1 Like

Hi Mauro. I wasnt totally sure what i meant either lol. Thank you for making it clearer for me. Will do so some reading up on replay attacks before moving on with the course :+1:

1 Like
  1. Soft fork - is an update that acts as a contraction of the rule set making previously valid blocks invalid.
    Hard fork - is an update that splits chain in most cases and acts as an expansion of the rule set making previously invalid blocks valid.

  2. You would do a Hard Fork to expand the rule set for consensus benefits, for a clear update ( democratic in a way that miners choose which chain to mine on after the fork) ,for improving scalability and for creating new currencies.

  3. The community is divided and security is reduced when the hash power is split due to a HF.

1 Like
  1. Soft fork makes previously valid blocks invalid and hard fork makes previously invalid blocks valid.
  2. A hard fork can be done when e.g we want to increase the block size and change the consensus.
  3. A feasible risk is the lowering of the hash power thus decreasing the security of the chain/s.
1 Like
  1. A Soft Fork occurs from and update that makes previously valid blocks invalid. A Hard Fork occurs from an update that makes previously invalid blocks valid.

  2. You would do a hard fork if you wanted an absolutely clear change to the consensus rules without any confusion (e.g. expanding the block size). Also, it’s a democratic change meaning you must have 100% of the network on board with a proposed change to avoid a hard fork. Therefore, if you have a different vision and want to go in a new direction (i.e. new currency), you would perform a hard fork.

  3. Aside from splitting the chain, you are also splitting the community. Also, by splitting the hash power, you are reducing security.

1 Like

No worries. We do have a course completely devoted to bitcoin attacks. Still, feel free to some research on your own. That is a great way to learn Here is the link to the course: https://academy.ivanontech.com/products/bitcoin-attacks

2 Likes