fork [English]


Syndetic Relationships

InterPARES Definition

No definition in earlier IP projects. ITrust definition not yet developed.

Other Definitions

  • Bitcoin Developer Glossary 2017 (†791 s.v. "Fork, Accidental Fork"): When two or more blocks have the same block height, forking the block chain. Typically occurs when two or more miners find blocks at nearly the same time. Can also happen as part of an attack.
  • Bitcoin Glossary 2017 (†812 s.v. "Fork"): The creation of an alternative ongoing version of the blockchain, typically because one set of miners begins hashing a different set of transaction blocks from another. It can be caused maliciously, by a group of miners gaining too much control over the network (see 51% attack), accidentally, thanks to a bug in the system, or intentionally, when a core development team decides to introduce substantial new features into a new version of a client. A fork is successful if it becomes the longest version of the blockchain, as defined by difficulty.
  • Bitcoin Group [2017] (†846 s.v. "Fork"): The creation of an alternative ongoing version of the blockchain, typically because one set of miners begins hashing a different set of transaction blocks from another. It can be caused maliciously, by a group of miners gaining too much control over the network (see 51% attack), accidentally, thanks to a bug in the system, or intentionally, when a core development team decides to introduce substantial new features into a new version of a client. A fork is successful if it becomes the longest version of the blockchain, as defined by difficulty.
  • BlockchainHub Glossary (†807 s.v. "Fork"): The creation of an alternative ongoing version of the blockchain, by creating two blocks simultaneously on different parts of the network. This creates two parallel blockchains, where one of the two is the winning blockchain. The winning blockchain gets determined by its users, by the majority choosing on which blockchain their clients should be listening.
  • Scaling Bitcoin [2017] (†845 s.v. "Fork"): Any computer that connects to the Bitcoin network is called a node. Nodes that fully enforce all of the rules of Bitcoin are called full nodes. Most nodes on the network are lightweight nodes instead of full nodes, but full nodes form the backbone of the network.

Citations

  • Buterin [2017] (†818 s.v. "Mining"): ...the attacker creates a "fork" of the blockchain, starting by mining another version of block 270000 pointing to the same block 269999 as a parent but with the new transaction in place of the old one. Because the block data is different, this requires redoing the proof of work. Furthermore, the attacker's new version of block 270000 has a different hash, so the original blocks 270001 to 270005 do not "point" to it; thus, the original chain and the attacker's new chain are completely separate. The rule is that in a fork the longest blockchain is taken to be the truth, and so legitimate miners will work on the 270005 chain while the attacker alone is working on the 270000 chain. In order for the attacker to make his blockchain the longest, he would need to have more computational power than the rest of the network combined in order to catch up (hence, "51% attack"). (†2107)
  • Danova 2015 (†827 s.v. "What happens when the blockchain forks?): It’s actually quite simple: you get two chains with a shared genesis and are identical up until the forking point, after which they exist exclusively in parallel (unless one is completely abandoned), creating two separate networks. (†2161)
  • Piasecki 2017 (†815 s.v. 2017-02-20 "Blockchain Terminology-a dev): There are multiple different concepts in the Blockchain space that are referred to as "forks". · The simplest Fork is a Repository Fork - a term originating from software development where a developer copies a repository of a given project to create their own version of the software. This is most often used to create Altcoins - most of them are Forks of the Bitcoin repository, or other forked repositories. · Another type of Fork is a Blockchain Fork. It is an event in which there are multiple competing blocks of the same height. Those Forks may occur naturally due to multiple Miners creating a Block each at a similar time, or they can be malicious, for example - a result of a 51% Attack. · The last type of Fork is a Blockchain Fork caused by changes in the software operating the Blockchain (such as bitcoind). Those Forks may be incidental (such as the March 2013 Bitcoin fork), or deliberate (Ethereum's DAO fork). The latter are generally split into two kinds - Soft Forks and Hard Forks. · Soft Forks are less invasive and mainly require the Miners to upgrade their software. Old software will still recognize new blocks created after the Soft Fork as valid. An example of a Soft Fork could be the bugfix for Value Overflow Incident. · Hard Forks are more invasive and require everyone to upgrade their software. Old software will not recognize new blocks or transactions as valid after the Hard Fork. The Ethereum DAO Fork is perhaps the most famous example of a Hard Fork. · Contentious Hard Forks can sometimes lead to network splits, where a part of the network and community decide not to opt into the Forked code and Blockchain, and instead decide to take a different approach. Ethereum Classic is a network split that resulted from the DAO Fork. (†2100)
  • Wood 2014 (†803 p.2): If there is ever a disagreement between nodes as to which root-to-leaf path down the block tree is the ‘best’ blockchain, then a fork occurs. (†2046)