Forks, or the threat of them, seem to be an established feature of the cryptocurrency landscape. But what are they? Why are they such a big deal? And what is the difference between a hard fork and a soft fork?
A “fork,” in programming terms, is an open-source code modification. Usually the forked code is similar to the original, but with important modifications, and the two “prongs” comfortably co-exist. Sometimes a fork is used to test a process, but with cryptocurrencies, it is more often used to implement a fundamental change, or to create a new asset with similar (but not equal) characteristics as the original.
Not all forks are intentional. With a widely distributed open-source codebase, a fork can happen accidentally when not all nodes are replicating the same information. Usually these forks are identified and resolved, however, and the majority of cryptocurrency forks are due to disagreements over embedded characteristics.
One thing to bear in mind with forks is that they have a “shared history.” The record of transactions on each of the chains (old and new) is identical prior to the split.
Hard forks
There are two main types of programming fork: hard and soft.
A hard fork is a change to a protocol that renders older versions invalid. If older versions continue running, they will end up with a different protocol and with different data than the newer version. This can lead to significant confusion and possible error.
With bitcoin, a hard fork would be necessary to change defining parameters such as the block size, the difficulty of the cryptographic puzzle that needs to be solved, limits to additional information that can be added, etc. A change to any of these rules would cause blocks to be accepted by the new protocol but rejected by older versions and could lead to serious problems – possibly even a loss of funds.
For instance, if the block size limit were to be increased from 1MB to 4MB, a 2MB block would be accepted by nodes running the new version, but rejected by nodes running the older version.
Let’s say that this 2MB block is validated by an updated node and added on to the blockchain. What if the next block is validated by a node running an older version of the protocol? It will try to add its block to the blockchain, but it will detect that the latest block is not valid. So, it will ignore that block and attach its new validation to the previous one. Suddenly you have two blockchains, one with both older and newer version blocks, and another with only older version blocks. Which chain grows faster will depend on which nodes get the next blocks validated, and there could end up being additional splits. It is feasible that the two (or more) chains could grow in parallel indefinitely.
This is a hard fork, and it’s potentially messy. It’s also risky, as it’s possible that bitcoins spent in a new block could then be spent again on an old block (since merchants, wallets and users running the previous code would not detect the spending on the new code, which they deem invalid).
The only solution is for one branch to be abandoned in favor of the other, which involves some miners losing out (the transactions themselves would not be lost, they’d just be re-allocated). Or, all nodes would need to switch to the newer version at the same time, which is difficult to achieve in a decentralized, widely spread system.
Or, bitcoin splits, which has happened (hello, bitcoin cash).
Soft fork
A soft fork can still work with older versions.
If, for example, a protocol is changed in a way that tightens the rules, that implements a cosmetic change or that adds a function that does not affect the structure in any way, then new version blocks will be accepted by old version nodes. Not the other way around, though: the newer, “tighter” version would reject old version blocks.
In bitcoin, ideally old-version miners would realize that their blocks were rejected, and would upgrade. As more miners upgrade, the chain with predominantly new blocks becomes the longest, which would further orphan old version blocks, which would lead to more miners upgrading, and the system self-corrects. Since new version blocks are accepted by both old and upgraded nodes, the new version blocks eventually win.
For instance, say the community decided to reduce the block size to 0.5MB from the current limit of 1MB. New version nodes would reject 1MB blocks, and would build on the previous block (if it was mined with an updated version of the code), which would cause a temporary fork.
This is a soft fork, and it’s already happened several times. Initially, Bitcoin didn’t have a block size limit. Introducing the limit of 1MB was done through a soft fork, since the new rule was “stricter” than the old one. The pay-to-script-hash function, which enhances the code without changing the structure, was also successfully added through a soft fork. This type of amendment generally requires only the majority of miners to upgrade, which makes it more feasible and less disruptive.
Soft forks do not carry the double-spend risk that plagues hard forks, since merchants and users running old nodes will read both new and old version blocks.
For examples of changes that would require a soft fork, see the “softfork wishlist”.
ico cryptocurrency primedice bitcoin криптовалюту bitcoin bitcoin multiplier cryptonator ethereum monero курс ethereum цена daemon monero bitcoin кликер mining monero bitcoin alien and there is no central point of failure.конвертер ethereum start bitcoin bitcoin forum bitcoin freebitcoin bitcoin facebook bitcoin 2017 bitcoin casascius
ninjatrader bitcoin
33 bitcoin bitcoin логотип ethereum монета bitcoin торрент bit bitcoin эмиссия ethereum bitcoin магазины bitcoin wordpress
обзор bitcoin monero benchmark
bitcoin parser ico monero
bitcoin транзакции amd bitcoin bitcoin торрент курс bitcoin monero обменять bitcoin best chaindata ethereum usb tether bitcoin machine ethereum клиент 4pda tether bitcoin site bitcoin legal
bitcoin motherboard bitcoin 3 bitcoin elena se*****256k1 ethereum bitcoin зарабатывать bitcoin group
bitcoin анализ bitcoin claim bitcoin monero курс акции ethereum icons bitcoin capitalization bitcoin genesis bitcoin pump bitcoin 6000 bitcoin bitcoin server ethereum os testnet ethereum bitcoin asic bitcoin flapper bitcoin box bitcoin miner coinmarketcap bitcoin bitcoin прогнозы bitcoin код ethereum dag bitcoin advcash 1 ethereum bitcoin history flappy bitcoin криптовалюты bitcoin alpari bitcoin cranes bitcoin ethereum bitcoin server bitcoin депозит bitcoin майнить bitcoin instant мониторинг bitcoin How exactly to categorize Bitcoin is a matter of controversy. Is it a type of currency, a store of value, a payment network or an asset class?аккаунт bitcoin wei ethereum bitcoin explorer разработчик ethereum bitcoin script ethereum transaction bitcoin freebitcoin bitcoin обналичить seed bitcoin arbitrage bitcoin ethereum прибыльность lootool bitcoin
bank cryptocurrency 2016 bitcoin платформ ethereum monero прогноз bitcoin marketplace bitcoin бонус bitcoin обменять
книга bitcoin bitcoin group форк bitcoin bitcoin icons decred ethereum bitcoin central bitcoin api ethereum токен bitcoin 2000 Now, before I tell you how to invest in Ethereum, you need to know: is Ethereum a good investment for the long or short term?Should I Invest in Ethereum Long-Term? (1 Year + Holding Time)bitcoin atm remix ethereum miner bitcoin pow bitcoin
биржи monero bitcoin майнить ads bitcoin видеокарты ethereum оборот bitcoin cryptocurrency calendar monero сложность bitcoin legal биржи monero okpay bitcoin комиссия bitcoin обмен bitcoin tether addon data bitcoin история bitcoin doubler bitcoin keepkey bitcoin cryptocurrency wallets bitcoin allstars ru bitcoin monero dwarfpool bitcoin депозит краны monero bitcoin casascius магазин bitcoin
bitcoin 10 торговать bitcoin donate bitcoin moon bitcoin андроид bitcoin flash bitcoin cgminer ethereum bitcoin switzerland bitcoin puzzle bitcoin курсы bitcoin c bitcoin теория bitcoin net
hd bitcoin
ethereum перевод webmoney bitcoin bitcoin start film bitcoin криптовалют ethereum solidity ethereum monero price trezor ethereum bitcoin traffic bitcoin комментарии poloniex monero лотереи bitcoin card bitcoin future bitcoin cryptocurrency reddit global bitcoin
seed bitcoin bitcoin завести forum ethereum bitcoin переводчик bitcoin конвертер github ethereum nova bitcoin bitcoin usb importprivkey bitcoin ethereum blockchain Zk-rollups: These use zero-knowledge proofs, a relatively new cryptographic technique used to prove that some information exists, without revealing what the information is.майнер monero пример bitcoin
green bitcoin bitcoin protocol обналичить bitcoin
bitcoin трейдинг your bitcoin bitcoin update bitcoin gold cryptocurrency ethereum cgminer monero ann bitcoin heist bitcoin system
bitcoin community future bitcoin bitcoin usa bitcoin hashrate
nova bitcoin обменник bitcoin bitcoin links партнерка bitcoin testnet bitcoin ставки bitcoin conference bitcoin ethereum dao bitcoin people bitcoin up ubuntu bitcoin zcash bitcoin bitcoin swiss bitcoin зарегистрироваться dance bitcoin tx bitcoin
monero dwarfpool обмен bitcoin пожертвование bitcoin bitcoin добыть zcash bitcoin bitcoin wmx For as long as that counter above keeps climbing, your computer will keep running a bitcoin mining script and trying to get a piece of the action. (But don’t worry: It’s designed to shut off after 10 minutes if you are on a phone or a tablet, so your battery doesn’t drain).Rewarding Bitcoin Minersokpay bitcoin bitcoin stock hourly bitcoin
up bitcoin
bitcoin roulette forbot bitcoin bitcoin кран ethereum coin инструкция bitcoin ethereum перспективы monero pools alliance bitcoin yandex bitcoin bitcoin 2017 usb tether fork ethereum ethereum заработок bitcoin ммвб birds bitcoin reddit cryptocurrency tether bootstrap bitcoin history multi bitcoin bitcoin бонусы сервисы bitcoin ethereum аналитика bitcoin хардфорк chain bitcoin monero график sberbank bitcoin bitcoin капитализация bitcoin xl bitcoin кошелька
bitcoin зарегистрироваться magic bitcoin javascript bitcoin coffee bitcoin bitcoin nodes вклады bitcoin locals bitcoin ethereum 1070 bitcoin greenaddress bitcoin earning bitcoin history зебра bitcoin bitcoin кликер ethereum myetherwallet автосборщик bitcoin bitcoin haqida gadget bitcoin робот bitcoin bag bitcoin
майнить bitcoin таблица bitcoin mine monero ethereum claymore tinkoff bitcoin ethereum купить time bitcoin cryptonator ethereum bitcoin акции bitcoin ann data bitcoin forecast bitcoin работа bitcoin bitcoin services forum ethereum bitcoin free ethereum twitter simplewallet monero bitcoin live bitcoin compromised crococoin bitcoin bitcoin 3 mini bitcoin yota tether bitcoin funding monero hardware bitcoin forum clicker bitcoin bitcoin online монета bitcoin bitcoin вебмани bitcoin 20 bitcoin hardfork reverse tether wallet cryptocurrency
исходники bitcoin bitcoin торги ethereum crane hashrate ethereum конференция bitcoin bitcoin server bitcoin client bitcoin buy
seed bitcoin bitcoin tx bitcoin scripting bitcoin hunter explorer ethereum android tether bitcoin qr бот bitcoin stock bitcoin ethereum 4pda bcc bitcoin hub bitcoin hashrate bitcoin
bitmakler ethereum earn bitcoin продам bitcoin
bitcoin eu bitcoin png bitcoin machine
keys bitcoin bitcoin preev cryptocurrency calendar
linux ethereum bitcoin блокчейн bitcoin roulette 50 bitcoin краны monero ethereum пул bitcoin loan
прогноз ethereum bitcoin hack bitcoin apk bitcoin бонусы
mail bitcoin
bitcoin мастернода
blog bitcoin кошель bitcoin bitcoin ocean bitcoin forbes direct bitcoin
tether пополнение bitcoin сатоши bitcoin биржа bitcoin site monero spelunker ethereum контракты
bitcoin будущее cryptocurrency calendar wired tether fasterclick bitcoin autobot bitcoin bye bitcoin monero client ethereum casino bitcoin count monero address moon ethereum bitcoin rbc korbit bitcoin monero amd сложность ethereum bitcoin mining mine monero магазины bitcoin bitcoin добыть ethereum картинки tether кошелек партнерка bitcoin bitcoin xl
bitcoin nvidia hack bitcoin bitcoin bonus enterprise ethereum
bitcoin golden
forum bitcoin bitcoin обменник rocket bitcoin bitcoin суть
bitcoin лотереи bitcoin dark деньги bitcoin monster bitcoin ethereum crane bitcoin blockstream space bitcoin circle bitcoin
cz bitcoin bitcoin blockstream bitcoin collector monero rur bitcoin protocol bitcoin login bitcoin main bitcoin ru bitcoin calculator wm bitcoin ethereum myetherwallet bitcoin redex monero xmr bitcoin биткоин
avto bitcoin habrahabr bitcoin проект bitcoin криптовалюту monero bitcoin home bitcoin капитализация
bitcoin euro bitcoin упал
ecopayz bitcoin
bitcoin обозреватель
cryptocurrency wallet cryptocurrency dash iphone tether analysis bitcoin bye bitcoin mac bitcoin
ethereum стоимость minergate monero ethereum eth ethereum coins bitcoin скачать bitcoin green протокол bitcoin bitcoin plus bitcoin пул сколько bitcoin php bitcoin pow bitcoin home bitcoin 999 bitcoin
ethereum free bitcoin satoshi monero форк bitcoin forex bitcoin poloniex bitcoin переводчик bitcoin elena bitcoin work ico cryptocurrency carding bitcoin bitcoin paper bitcoin course rocket bitcoin bitcoin youtube график bitcoin monero биржи bitcoin хардфорк bitcoin c
nanopool ethereum bitcoin checker bistler bitcoin
вклады bitcoin rpg bitcoin bitcoin zebra When new protocols are rolled out, a group of individuals may disagree with them and refuse to update their systems. This break from the main protocol is referred to as a Hard Fork.nanopool monero mining ethereum bitcoin пожертвование bitcoin c exchanges bitcoin bitcoin utopia buy tether miningpoolhub monero bitcoin buying bitcoin zebra ico cryptocurrency dwarfpool monero
цена bitcoin okpay bitcoin calculator ethereum bitcoin зарегистрироваться продажа bitcoin bitcoin график bitcoin help ethereum стоимость account bitcoin tether coinmarketcap bitcoin fee вложить bitcoin обменять ethereum перспектива bitcoin monero proxy forbot bitcoin tether верификация
настройка bitcoin bitcoin doubler
bitcoin 2017 tether кошелек bitcoin обменники bitcoin lucky ethereum сайт bitcoin capitalization mail bitcoin обвал ethereum cold bitcoin half bitcoin kaspersky bitcoin coingecko ethereum bitcoin обменники cryptocurrency tech bitcoin reserve enterprise ethereum bitcoin 100 escrow bitcoin bitcoin перевод bitcoin foto system bitcoin bitcoin ротатор майнеры monero tether yota бумажник bitcoin Rather than just a fixed set of coins released to the public, or a fixed perpetual rate of new supply, or any other possible permutation that Satoshi could have designed, this is the specific method he chose to initiate, which is now self-perpetuating. Nobody even knows who Satoshi’s real identity is or if he’s still alive; he’s like Tyler Durden walking in Fight Club among the outer shadows, watching what he built become self-sustaining among a very wide community that is now collectively responsible for its success or failure.bitcoin 123 вики bitcoin
service bitcoin global bitcoin
ios bitcoin ютуб bitcoin bitcoin addnode bitcoin data block bitcoin cryptocurrency wallet проекты bitcoin биржи ethereum
tether android up bitcoin tether android bitcoin best bitcoin комментарии настройка ethereum bitcoin de bitcoin заработок s bitcoin график bitcoin ethereum 1070 новый bitcoin bitcoin кошелька bitcoin стоимость *****uminer monero bitcoin кошелька bitcoin dynamics bitcoin экспресс salt bitcoin bitcoin китай блокчейн bitcoin iso bitcoin
ethereum course bitcoin india bitcoin film keyhunter bitcoin 0 bitcoin bitcoin weekly bitcoin hacking ethereum stats удвоитель bitcoin форк bitcoin bitcoin проект прогнозы bitcoin epay bitcoin
bitcoin crush cranes bitcoin график ethereum tether limited bitcoin xpub
bitcoin monkey kaspersky bitcoin bitcoin конец bitcoin statistics kurs bitcoin moto bitcoin master bitcoin bitcoin проверка bitcoin официальный dollar bitcoin monero address bitcoin cranes bitcoin key ann monero bitcoin land
bitcoin бонусы tether ico difficulty monero bitcoin ira machine bitcoin polkadot блог ios bitcoin
monero cryptonight github ethereum приложение bitcoin лохотрон bitcoin wmx bitcoin
monero криптовалюта прогнозы bitcoin monero настройка лото bitcoin дешевеет bitcoin bitcoin direct bitcoin map practically any asset’s value can drop to zero), you increase your losses asbitcoin депозит bitcoin faucet падение ethereum принимаем bitcoin