bitcoin block fork

If you have been paying attention to bitcoin at all lately, you may have noticed a lot of talk going on about 'forks'.Not like the kind you would find on a table, on a blockchain, a fork is a technical event that occurs because diverse participants need to agree on common rules.At its most basic, a fork is what happens when a blockchain diverges into two potential paths forward — either with regard to a network’s transaction history or a new rule in deciding what makes a transaction valid.As a result, those who use the blockchain have to show support for one choice over the other.Yet, there are many different types of forks, and the science of studying them is still new.So far, we know some forks resolve on their own, but others, fueled by deep rifts in a community, can cause a network to permanently split, creating two blockchain histories — and two separate currencies.Along with that, there has also been confusion about the various types of forks, how they get activated and the risks they pose.

To clarify, we've assembled quick rundown on how different forks work.Before we get into the classifications, it's worth noting that bitcoin forks already occur quite regularly.A byproduct of distributed consensus, forks happen anytime two miners find a block at nearly the same time.The ambiguity is resolved when subsequent blocks are added to one, making it the longest chain, while the other block gets "orphaned" (or abandoned) by the network.But forks also can be willingly introduced to the network.This occurs when developers seek to change the rules the software uses to decide whether a transaction is valid or not.When a block contains invalid transactions, that block is ignored by the network, and the miner who found that block loses out on a block reward.As such, miners generally want to mine only valid blocks and build on the longest chain.Following are some of the more common forks and their traits.A hard fork is a software upgrade that introduces a new rule to the network that isn't compatible with the older software.

You can think of a hard fork as an expansion of the rules.
bitcoin node counter(A new rule that allows block size to be 2MB instead of 1MB would require a hard fork).
bitcoin powNodes that continue running the old version of the software will see the new transactions as invalid.
bitcoin asic miner litecoinSo, to switch over to the new chain and to continue to mine valid blocks, all of the nodes in the network need to upgrade to the new rules.
litecoin playstationWhat can go wrong?
bitcoin raleighThe problem comes when some sort of political impasse arises, and a portion of the community decides to stick by the old rules no matter what.
bitcoin fork ethereum

The hash rate, or network computing power, behind the old chain is irrelevant.
litecoin debit cardWhat matters is that its data (and ruleset) is still perceived to have value, meaning miners still want to mine a chain and developers still want to support it.
most trustworthy bitcoin exchangeThe ethereum DAO hard fork was a perfect case study of how a community can split over rules.
ethereum investment trustNow, we have two blockchains using a variant of the software – ethereum and ethereum classic, both of which boast a different ethos and a different currency.A soft fork, by contrast, is any change that's backward compatible.Say, instead of 1MB blocks, a new rule might only allow 500K blocks.Non-upgraded nodes will still see the new transactions as valid (500k is less than 1MB in this example).

However, if non-upgraded nodes continue to mine blocks, the blocks they mine will be rejected by the upgraded nodes.This is why soft forks need a majority of hash power in the network.When a soft fork is supported by only a minority of hash power in the network, it could become the shortest chain and get orphaned by the network.Or, it can act like a hard fork, and one chain can splinter off.Soft forks have been the most commonly used option to upgrade the bitcoin blockchain so far because it's argued they present a lower risk of splitting the network.Past examples of successful soft forks include software upgrades like BIP 66 (which dealt with signature validation) and P2SH (which altered bitcoin's address formatting).A user-activated soft fork (UASF) is a controversial idea that explores how a blockchain might add an upgrade that is not directly supported by those who provide the network's hashing power.The idea with UASF is that instead of waiting for a threshold of support from mining pools, the power to activate a soft fork goes to the exchanges, wallets and businesses who are running full nodes.

(In bitcoin, a full node, even if it is not a mining node, is still responsible for validating blocks.)The majority of major exchanges would need to publicly support the change before it could be written into a new version of code.After that, the new software (which has an activation point in the future) gets installed on nodes that want to participate in the soft fork.This method requires a much longer lead time to work than a hash-power-triggered soft fork.In fact, it's believed it may take as long as a year or more to write the code and get everyone ready.Further, if the majority of miners end up not ‘falling in line’ and activating the new rules, they could use their overwhelming hash power to split the network.Currently this idea is theoretical and has not been implemented.Interested in offering your expertise or insights to our reporting?About the author of the following guest post: Ariel Horwitz is a Bitcoin activist, educator, consultant and writer for 99bitcoins.He has been involved with the Israeli Bitcoin Association, The Bitcoin Embassy in Tel Aviv, and has founded AlefBit — the first Bitcoin education website in Hebrew.

There has been much talk about the “Bitcoin fork” lately.So I thought it would be appropriate to explain some of technical stuff behind this obscure phrase.The word ‘fork’ in this context originates from open source software.Open source software is computer code, which is intended to be openly accessible and liberally used by anyone reading it.Open source software can be coded communally (such as with the GitHub platform), or alternatively can be copied locally and coded separately.The development of software like this would allow to draw trees: each time the code was copied separately there would be a new branch.This would be called ‘forking’, since the same code would then develop in two parallel directions.As we know, the Blockchain is decentralized, which by definition means there is no absolutely “correct” chain.Each node in the network downloads all the blocks to connect a chain, verifies them against the laws of math and Bitcoin and chooses the correct chain accordingly.

For instance, if there is a block that has an invalid cryptographic signature, any chain including that block is invalid.A block will also be invalid if there is a violation of the Bitcoin rules such as, for instance, if a miner rewards themselves with 26 coins instead of 25 as per protocol.Either way, it is up to the individual to verify the validity of the blockchain.Therefore, it seems, if there are two conflicting chains, one is valid and the other is malicious.However, small forks happen in the blockchain naturally quite often.If two miners find a new block at the exact same second, they will both have valid and legitimate blocks, and neither will have a reason to toss it out.Both blocks are linked to the last one, but the block after will have to be linked to one of these two.Technically, this is a fork in the blockchain.This happens every so often in the blockchain with no malintent.Miners tend to quickly converge on one chain and discard the other because of profit-related motives, and so these discarded chains are usually only one block long and are considered a statistical loss.

While technically these are forks, they are short and not intentional, so they are referred to as “orphaned blocks”.What we’re hearing in the news these days is a whole different beast.There is a heated technical discussion on a significant issue for a few years: how Bitcoin deals with scalability and high load.Only recently has the discussion become a more broadly discussed matter, seeing as how nothing has been done and with all the growth lately, the blockchain has been under stress and experiencing delays and higher costs for transactions.The technical discussion is immense and interesting, and any summary will not do it justice.In one sentence, the issue revolves around block size: currently limited to 1MB per block of transaction.A measure put in place years ago to prevent DOS attacks, but kicking the can down the road for how to scale Bitcoin and allow for more widespread use of the system.The most interesting recent developments involved a few developers writing a new version of the Bitcoin software.

The project named BitcoinXT is lead by Mike Hearn and Gavin Andresen, and it takes a practical stand on the issue, allowing for bigger blocks.This is not the first time a new version of the Bitcoin software is written, but it is the first time one is created with the intention of allowing the blockchain to fork.For a very long time, this discussion has been a topic mostly for the core developers, those contributing and volunteering time to work on the Bitcoin core code.However, Bitcoin is not under their control, and neither under the control of miners.While there are smart minds on either side of the debate, the blockchain is apathetic to opinions.The new software allows for something that the old software does not.Something the old software would consider a violation of the rules of Bitcoin: blocks larger than 1MB.As a decentralized system, there is no higher authority which will make a decision, rather each node chooses for itself what are the rules of Bitcoin (a.k.a “The Bitcoin Protocol”).

This is why recent developments are so interesting: using the new software is a way of choosing new Bitcoin rules.Obviously, the developers of this software are not interested in breaking the rules, and they would only take effect if 75 percent of recent blocks signal that they are in favor of these new rules, a form of voting for support and consensus.Once we see the first block with the new rules – those who have not accepted them will consider the block invalid and will ignore while those who have accepted the new rules will consider the block valid and will add new blocks on top of it.This is where 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.Coins in my possession (all transactions leading up to that) before the fork remain mine on both chains after the fork, and both chains agree on those transactions since they were all before the fork.

After the fork, each transaction takes place exclusively on each separate chain.It would be expected that each chain and the coins on each of those chains would get its own name (like Bitcoin vs.The economies around each of these chains inherit the economies from the shared economy before the fork, so even though there are now twice as many coins, there is not twice as much value.In fact, the economy would split along with the networks.Therefore, when considering when and how to split, one should consider both technical and economic majorities.Even if 75 percent of the recent blocks were in favor of a fork, it is possible that less or more than 75 percent of the economy is in favor.It may sound confusing, but this system allows for maximum individual freedom and minimum collateral damage.In the eyes of many, Bitcoin is still too young and it’s still too early in the experiment to split into two separate networks and two separate currencies (which is why waiting for a larger consensus before forking the Blockchain is a good idea).

If the new software would only wait for 50 percent of the network showing support before forking, it is possible that there would be no clear winner: both chains would compete and panic would ensue.Theoretically, though, the network can fork with only 20 percent support, taking along only a minority if they wish.This is a big principle in Bitcoin: there is no need to trust anyone, and everyone should enforce their own rules.Whether or not the new software gets support from 75 percent of miners, this is an interesting story to follow in the news, but now that you know what a fork is and how significant it is, you will understand why it is such a heated debate and why recent developments are so controversial.BitcoinXT is actually an implementation of the the BIP101 proposal – Mike Hearn and Gavin Andresen’s proposal for how to increase blocksize.That being said, there are other proposals for increasing blocksize, all curiously named BIP100, BIP102, and BIP103.As of writing these lines BIP100 – a proposal to allow miners to vote on blocksize with a 32MB maximum – seems to have the widest support among mining hashing power.