Difference between revisions of "Hardfork"

From Bitcoin Wiki
Jump to: navigation, search
(Add See Also subsection and move Softfork as an entry into it.)
Line 1: Line 1:
A hardfork is a change to the bitcoin protocol that makes previously invalid blocks/transactions valid, and therefore requires all users to upgrade.
+
A '''hardfork''' is a change to the bitcoin protocol that makes previously invalid blocks/transactions valid, and therefore requires all users to upgrade.
  
 
Any alteration to bitcoin which changes the block structure (including block hash), difficulty rules, or increases the set of valid transactions is a hardfork.
 
Any alteration to bitcoin which changes the block structure (including block hash), difficulty rules, or increases the set of valid transactions is a hardfork.
 
However, some of these changes can be implemented by having the new transaction appear to older clients as a pay-to-anybody transaction (of a special form), and getting the miners to agree to reject blocks including the pay-to-anybody transaction unless the transaction validates under the new rules.
 
However, some of these changes can be implemented by having the new transaction appear to older clients as a pay-to-anybody transaction (of a special form), and getting the miners to agree to reject blocks including the pay-to-anybody transaction unless the transaction validates under the new rules.
This is known as a [[softfork]], and how [[P2SH]] was added to Bitcoin.
+
This is known as a [[softfork]].
 +
 
 +
To date, Bitcoin has never deployed a hardfork, but some altcoins have.
  
 
==See Also==
 
==See Also==
 
* [[Softfork]]
 
* [[Softfork]]

Revision as of 01:23, 30 November 2017

A hardfork is a change to the bitcoin protocol that makes previously invalid blocks/transactions valid, and therefore requires all users to upgrade.

Any alteration to bitcoin which changes the block structure (including block hash), difficulty rules, or increases the set of valid transactions is a hardfork. However, some of these changes can be implemented by having the new transaction appear to older clients as a pay-to-anybody transaction (of a special form), and getting the miners to agree to reject blocks including the pay-to-anybody transaction unless the transaction validates under the new rules. This is known as a softfork.

To date, Bitcoin has never deployed a hardfork, but some altcoins have.

See Also