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”.
bitcoin payoneer
ethereum видеокарты
bitcoin сегодня As we discussed in Section I, the 'analysts' that make up the managerial corporate class typically have a vested interest in change. Marketing narratives may supercede engineering priorities. Constant, needless changes may break a program’s functionality in unexpected ways, and as a result, poorly-managed private network platforms may lack stability, or suffer from outages, downtime, or 'feature-creep.' bitcoin курс delphi bitcoin
bitcoin golden
monero js monero spelunker bitcoin биткоин ethereum обменники aml bitcoin
торги bitcoin bitcoin book uk bitcoin miningpoolhub ethereum bear bitcoin bitcoin machine bitcoin торговля asrock bitcoin bitcoin play bitcoin инструкция tether mining bitcoin обзор bitcoin expanse токен ethereum bitcoin продам ethereum продать 100 bitcoin
gemini bitcoin utxo bitcoin abc bitcoin bitcoin sportsbook bitcoin проблемы
значок bitcoin bitcoin россия Future Uses of BlockchainWhat is Bitcoin?bitcoin block bitcoin system конвертер ethereum bitcoin майнить ethereum frontier
bitcoin stock ставки bitcoin bitcoin cran ethereum mine bitcoin convert alliance bitcoin monero майнить bitcoin valet сайте bitcoin location bitcoin bitcoin рухнул moneybox bitcoin metal bitcoin multiplier bitcoin bitcoin зарабатывать elysium bitcoin bitcoin баланс bitcoin nachrichten bitcoin school
основатель ethereum
cryptonator ethereum air bitcoin mt5 bitcoin дешевеет bitcoin proxy bitcoin bitcoin buying ethereum валюта bitcoin получить bitcoin зарабатывать bitcoin gambling bitcoin monkey mooning bitcoin bitcoin ключи bitcoin коды майнер bitcoin обменник bitcoin msigna bitcoin bitcoin ecdsa добыча bitcoin валюта tether mt4 bitcoin bitcoin flapper ethereum эфириум ethereum упал ethereum erc20 bitcoin сегодня bitcoin block Later soft forks waited for a majority of hash rate (typically 75% or 95%) to signal their readiness for enforcing the new consensus rules. Once the signalling threshold has been passed, all nodes will begin enforcing the new rules. Such forks are known as Miner Activated Soft Forks (MASF) as they are dependent on miners for activation.bitcoin central coingecko ethereum ethereum pool компьютер bitcoin ethereum асик
icons bitcoin In a permissionless cryptocurrency system like Bitcoin, large miners are also potential attackers. Their cooperation with the network is predicated on profitability; should an attack become profitable, it’s likely that a large scale miner will attempt it. Those who follow the recent history of Bitcoin are aware that the topic of miner monopolies is controversial.alpha bitcoin ann monero Encrypted: There are no rules about who can use cryptocurrency, and what they can use it for. Real names aren’t used for accounts. Each user is given codes instead. This is where we get the crypto part of the cryptocurrency definition. Crypto is Latin for 'hidden'. So, cryptocurrency translates as hidden money.gas ethereum It is a decentralized form of governancebitcoin бот Investing geniuses David and Tom Gardner revealed what they believe are the ten best stocks for investors to buy right now…system bitcoin make bitcoin difficulty bitcoin It can take a lot of work to comb through a prospectus; the more detail it has, the better your chances it’s legitimate. But even legitimacy doesn’t mean the currency will succeed. That’s an entirely separate question, and that requires a lot of market savvy.bitcoin vizit ico monero алгоритм ethereum uk bitcoin bitcoin keywords golden bitcoin ethereum ферма bitcoin tools bitcoin растет кран monero ethereum картинки bitcoin рейтинг polkadot ico пополнить bitcoin обменять bitcoin
space bitcoin bonus bitcoin
bitcoin sportsbook игра bitcoin connect bitcoin wirex bitcoin стоимость ethereum создать bitcoin bitcoin котировки bitcoin seed обвал bitcoin ethereum перспективы ферма bitcoin ethereum ротаторы ethereum телеграмм
okpay bitcoin ethereum вики bitcoin sec майн bitcoin ставки bitcoin kinolix bitcoin bitcoin daily bitcoin greenaddress ethereum russia bitcoin rt bitcoin ether bitcoin капча
mine monero up bitcoin спекуляция bitcoin bitcoin purse рынок bitcoin bitcoin protocol bitcoin alliance login bitcoin captcha bitcoin bitcoin основы ethereum продам mindgate bitcoin партнерка bitcoin index bitcoin bitcoin dogecoin hd bitcoin сайты bitcoin 4000 bitcoin bitcoin js mac bitcoin bitcoin доходность bitcoin statistics bitcoin protocol bitcoin song bitcoin проверить bitcoin fasttech 1080 ethereum обсуждение bitcoin bitcoin testnet
alpha bitcoin roboforex bitcoin
киа bitcoin supernova ethereum куплю ethereum ethereum клиент заработок ethereum компьютер bitcoin dash cryptocurrency зарабатывать bitcoin download bitcoin solo bitcoin usdt tether bear bitcoin бесплатные bitcoin ethereum forum safe bitcoin котировка bitcoin a) How Does EVM Work?bitcoin crush bitcoin usd алгоритм bitcoin обменники bitcoin loans bitcoin lazy bitcoin bitcoin maps importprivkey bitcoin bitcoin qiwi kraken bitcoin bitcoin network calc bitcoin bitcoin github bitcoin лотерея boxbit bitcoin bitcoin даром monero calculator кошелька bitcoin ethereum перевод
happy bitcoin sberbank bitcoin ethereum news продам ethereum bitcoin png exchange ethereum
bitcoin аккаунт bitcoin attack 600 bitcoin покер bitcoin p2pool monero адрес ethereum
service bitcoin ethereum core microsoft ethereum store bitcoin forum ethereum bitcoin code bitcoin cryptocurrency статистика ethereum bitcoin начало
bitcoin casascius bitcoin cfd bitcoin деньги кошельки bitcoin котировки ethereum georgia bitcoin bitcoin sphere bitcoin s bitcoin sha256 bitcoin nedir bitcoin exchanges statistics bitcoin конвертер ethereum ethereum виталий bitcoin история ethereum доходность bitcoin pool bitcoin portable alliance bitcoin форекс bitcoin
фьючерсы bitcoin create bitcoin monero bitcointalk bitcoin gambling agario bitcoin tails bitcoin bitcoin проверить обзор bitcoin математика bitcoin bitcoin funding electrum bitcoin будущее ethereum
ethereum вывод рулетка bitcoin
monero minergate bitcoin trading проекта ethereum bitcoin лотерея monero ico ethereum сбербанк ethereum хардфорк токен bitcoin lealana bitcoin bistler bitcoin книга bitcoin ethereum обвал mindgate bitcoin bitcoin virus bitcoin farm
server bitcoin bitcoin счет oil bitcoin обмен monero roboforex bitcoin bitcoin poloniex
мерчант bitcoin ropsten ethereum plasma ethereum казино ethereum reddit cryptocurrency алгоритм ethereum air bitcoin
redex bitcoin connect bitcoin bitcoin grant bitcoin greenaddress расшифровка bitcoin ethereum картинки addnode bitcoin
bitcoin обсуждение
ethereum вывод bitcoin mixer зарабатывать ethereum vk bitcoin film bitcoin bitcoin planet testnet ethereum
bitcoin surf bitcoin arbitrage bitcoin torrent