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”.
ethereum 1070 ethereum pool supernova ethereum frog bitcoin bitcoin reward bitcoin python
ethereum курс
обмен monero bitcoin lucky bitcoin 30 автомат bitcoin coinder bitcoin bitcoin banks bitcoin usa cryptocurrency calculator проект ethereum
bitcoin captcha скачать tether chain bitcoin ethereum supernova
bitcoin euro bitcoin надежность surf bitcoin monero transaction bitcoin ebay bitcoin synchronization блокчейн bitcoin bitcoin реклама roboforex bitcoin in bitcoin bitcoin database отзыв bitcoin ethereum статистика bitcoin автосерфинг bitcoin основы ethereum torrent bitcoin mercado bitcoin nedir
удвоить bitcoin ethereum обменники приложения bitcoin
bitcoin клиент monero gpu mineable cryptocurrency bitcoin carding вики bitcoin bitcoin комиссия mining bitcoin падение ethereum tether 2
free ethereum tether wallet bitcoin хабрахабр е bitcoin keepkey bitcoin bitcoin обменник bitcoin forbes monero обменять mastering bitcoin bitcoin testnet системе bitcoin rise cryptocurrency
полевые bitcoin bitcoin карты tether wallet bitcoin fake miningpoolhub monero обмен tether bitcoin фарм bitcoin казино компиляция bitcoin bitcoin комиссия bitcoin лого ethereum wallet ферма ethereum best bitcoin yota tether Cost-EffectiveFACEBOOKkraken bitcoin bitcoin fpga хайпы bitcoin accepts bitcoin робот bitcoin ava bitcoin tether майнить
Other virtual currencies such as Ethereum are being used to create decentralized financial systems for those without access to traditional financial products.local bitcoin pow bitcoin purse bitcoin bitcoin skrill майн bitcoin ethereum покупка instant bitcoin bitcoin комбайн bitcoin png gain bitcoin polkadot cadaver bittrex bitcoin bitcoin girls bitcoin server bitcoin создатель статистика ethereum ethereum microsoft chaindata ethereum япония bitcoin bitcoin links tether комиссии alpari bitcoin new cryptocurrency wechat bitcoin 6000 bitcoin Democratic changes: Investors can change the rules of a DAO by voting on new proposals.Rewards are usually divided between the individuals who contributed, according to the proportion of each individual's processing power or work relative to the whole group. In some cases, individual miners must show proof of work in order to receive their rewards.ethereum заработок Litecoin has a much smaller market cap than bitcoin, but is still one of the most traded cryptocurrencies.шифрование bitcoin bitcoin purse адрес bitcoin monero обмен ethereum faucet bitcoin withdraw keystore ethereum blacktrail bitcoin сеть bitcoin bitcoin forex пул monero lazy bitcoin ethereum supernova bitcoin mail bitcoin motherboard debian bitcoin кошель bitcoin Since Bitcoin is both a currency and a protocol, capitalization can be confusing. Accepted practice is to use Bitcoin (singular with an upper case letter B) to label the protocol, software, and community, and bitcoins (with a lower case b) to label units of the currency.bitcoin purchase bitcoin captcha заработок ethereum monero github rise cryptocurrency брокеры bitcoin bitcoin mmgp opencart bitcoin bitcoin symbol bitcoin валюты tcc bitcoin monero кошелек bitcoin уязвимости Completeness—the design must cover as many important situations as is practical. All reasonably expected cases should be covered. Completeness can be sacrificed in favor of any other quality. In fact, completeness must be sacrificed whenever implementation simplicity is jeopardized. Consistency can be sacrificed to achieve completeness if simplicity is retained; especially worthless is consistency of interface.bitcoin кошелька bitcoin ключи майнить bitcoin bitcoin мерчант ultimate bitcoin
bitcoin knots bitcoin конвертер
монет bitcoin abi ethereum ethereum алгоритм p2p bitcoin free monero bitcoin icons byzantium ethereum 60 bitcoin отдам bitcoin 2016 bitcoin
bitcoin книга раздача bitcoin dark bitcoin bitcoin отзывы dark bitcoin bitcoin hardfork cc bitcoin bitcoin koshelek autobot bitcoin bitcoin обменники 2 bitcoin pos ethereum
raiden ethereum tether 4pda How do you store cryptocurrency?exchange ethereum Setting up the Gearbazar bitcoin bitcoin фермы 100 bitcoin дешевеет bitcoin падение ethereum bitcoin dark bitcoin торги bit bitcoin supernova ethereum
bitcoin average hub bitcoin bitcoin pools bitcoin capital
bear bitcoin bitcoin goldman bitcoin token bitcoin выиграть bitcoin changer майнер monero mine ethereum payable ethereum
bitcoin london bitcoin torrent get bitcoin investment bitcoin ethereum pool bitcoin hesaplama cryptocurrency nem bitcoin вклады monero dwarfpool cryptocurrency nem ethereum decred bitcoin список
x2 bitcoin bitcoin moneybox bitcoin tor bitcoin grafik bitcoin mixer bitcoin today шифрование bitcoin bitcoin бизнес ethereum addresses bitcoin падает ava bitcoin пулы ethereum бесплатные bitcoin bitcoin etherium monero hashrate alien bitcoin сайты bitcoin халява bitcoin цены bitcoin bitcoin hype advcash bitcoin ethereum бесплатно сложность bitcoin ethereum addresses monero logo
bitcoin xpub bitcoin технология usd bitcoin bitcoin segwit status bitcoin bitcoin кости kinolix bitcoin
monero bitcointalk bitcoin instaforex Bitcointrade cryptocurrency торги bitcoin
стоимость monero ethereum install
monero algorithm ethereum faucets On-chain miner ‘voting’ (BIP 16)minergate ethereum таблица bitcoin But, not everyone thinks investing in cryptocurrency is a good idea — at least not for the average investor. The reward systems used by mining pools can be roughly subdivided into two categories: proportional systems and pay-per-share systems.genesis bitcoin gemini bitcoin
инвестиции bitcoin bitcoin сбор bitcoin 10000 fake bitcoin swiss bitcoin yandex bitcoin bitcoin count
cold bitcoin q bitcoin bitcoin java bitcoin play bitcoin pay
dash cryptocurrency habrahabr bitcoin site bitcoin ethereum homestead
ethereum news bitcoin london инструмент bitcoin ethereum install bitcoin datadir bitcoin maps bitcoin conference A house fan to blow cool air across your mining computer. Mining generates substantial heat, and cooling the hardware is critical for your success.While Bitcoin uses private key encryption to verify owners and register transactions, fraudsters and scammers may attempt to sell false bitcoins. For instance, in July 2013, the SEC brought legal action against an operator of a Bitcoin-related Ponzi scheme.13 There have also been documented cases of Bitcoin price manipulation, another common form of fraud.bitcoin hype bitcoin etherium ethereum платформа bitcoin block биржи ethereum monero hardware
goldmine bitcoin bitcoin buying wikileaks bitcoin nova bitcoin bitcoin planet mine monero ethereum платформа стоимость monero ethereum ротаторы обменники bitcoin ethereum geth хардфорк ethereum эпоха ethereum
bitcoin vip bitcoin balance форумы bitcoin bitcoin capital bitcoin гарант bitcoin trading удвоить bitcoin kinolix bitcoin
00 : As more people get interested in cryptocurrency, scammers are finding more ways to use it. For example, scammers might offer investment and business 'opportunities,' promising to double your investment or give you financial freedom.This database is typically shared across a large network containing many computers (known as 'nodes') and it is completely public. I say 'typically' because it can technically be formed by any number of nodes. To get blockchain explained fully, it is important to know that the more nodes there is, the more secure it is — that’s why it’s good to have a large number of nodes running the blockchain!ethereum android обновление ethereum казино ethereum algorithm ethereum monero bitcointalk bitcoin роботы eth ethereum ethereum calc ethereum настройка ethereum exchange bitcoin mixer
charts bitcoin bitcoin ocean bitcoin earn withdraw bitcoin sec bitcoin bitcoin зарегистрировать bitcoin slots
ethereum видеокарты курс ethereum bitcoin 15 bitcoin форки q bitcoin bitcoin 4 bitcoin reward tor bitcoin bitcoin mac bitcoin бумажник доходность ethereum earn bitcoin bitcoin луна bitcoin etf bitcoin раздача bitcoin node download tether курс ethereum ethereum *****u bitcoin 10 bitcoin donate форекс bitcoin
bitcoin investment monero 1070 bitcoin blocks stake bitcoin project ethereum ico cryptocurrency cms bitcoin бесплатно bitcoin bitcoin обмен monero ann tether addon обозначение bitcoin cryptocurrency wallet bitcoin hesaplama monero spelunker cryptocurrency faucet tether обменник nanopool ethereum
bitcoin status cryptocurrency faucet trust bitcoin bitcoin пулы bitcoin payment ethereum news bitcoin script monero hashrate bitcoin терминалы брокеры bitcoin цена ethereum bitcoin перевод ethereum доллар blue bitcoin bitcoin xt bitcoin boom bitcoin forbes
plasma ethereum bitcoin advcash scrypt bitcoin bitcoin картинки bitcoin aliexpress flappy bitcoin bitcoin пицца bitcoin алгоритм
bitcoin datadir ethereum продам вывод ethereum cryptocurrency tech wordpress bitcoin
wikileaks bitcoin monero вывод биржи ethereum wallet tether bitcoin icons
bitcoin фарм сбербанк bitcoin ethereum habrahabr ethereum dao bitcoin evolution simple bitcoin seed bitcoin wisdom bitcoin bitcoin landing locate bitcoin bitcoin nonce bitcoin алгоритм adc bitcoin lealana bitcoin ethereum faucet bitcoin novosti cryptocurrency faucet bitcoin биржа fork ethereum satoshi bitcoin bitcoin зарегистрировать tether download bitcoin x2 bitcoin tools прогноз bitcoin little bitcoin bitcoin fasttech
conference bitcoin bitcoin развитие accepts bitcoin ethereum перевод bio bitcoin ethereum алгоритмы bank cryptocurrency blocks bitcoin
bitcoin терминалы 2016 bitcoin bitcoin symbol ethereum mist monster bitcoin
цена bitcoin математика bitcoin bitcoin fpga bitcoin nodes
bitcoin book bitcoin poloniex masternode bitcoin bitcoin map start bitcoin
bitcoin solo