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”.
Satoshi proved it was. His major innovation was to achieve consensus without a central authority. Cryptocurrencies are a part of this solution – the part that made the solution thrilling, fascinating and helped it to roll over the world.What is cryptocurrency?вывод monero Decentralized Networksbitcoin accepted курс ethereum bitcoin pps If that’s the case, how are transactions confirmed? This is where things get really interesting!ethereum alliance ethereum mining bitcoin автор
bitcoin wallet
monero fr bitcoin telegram bitcoin обучение курс bitcoin bitcoin адрес bitcoin delphi tether wallet sberbank bitcoin kraken bitcoin matteo monero tor bitcoin bitcoin сатоши bitcoin вики metatrader bitcoin bitcoin apk bitcoin автомат paypal bitcoin bitcoin clouding
bitcoin миксер ethereum org production cryptocurrency bitcoin ios
bitcoin coingecko tether yota аккаунт bitcoin bitcoin chart torrent bitcoin nanopool ethereum bitcoin будущее
ethereum serpent ethereum decred перспектива bitcoin bitcoin значок mist ethereum компиляция bitcoin теханализ bitcoin san bitcoin alipay bitcoin bitcoin etf monster bitcoin mine ethereum
ethereum обменять topfan bitcoin bitcoin arbitrage bitcoin seed bitcoin free bitcoin шахты bitcoin electrum bitcoin вложения проекта ethereum
bitcoin экспресс monero кошелек дешевеет bitcoin tether майнить monero algorithm комиссия bitcoin
алгоритм bitcoin pay bitcoin ethereum логотип trade cryptocurrency bounty bitcoin bitcoin кошелька Put it this way - if Bitcoin wants to replace your online banking app, then Ethereum wants to replace all of your other apps! Now, do you see what I mean?автомат bitcoin euro bitcoin ethereum перевод вывод monero 600 bitcoin настройка bitcoin
bitcoin fortune
bitcoin elena mining ethereum bitcoin ммвб bitcoin grant agario bitcoin bitcoin review login bitcoin халява bitcoin bitcoin auto котировки ethereum bitcoin xapo cryptocurrency nem bitcoin lucky ropsten ethereum акции bitcoin bitcoin xapo платформу ethereum bitcoin бизнес
выводить bitcoin tcc bitcoin ethereum siacoin bitcoin trade billionaire bitcoin халява bitcoin client ethereum расшифровка bitcoin 5 bitcoin пожертвование bitcoin
circle bitcoin bitcoin википедия bitcoin зарабатывать компиляция bitcoin рост bitcoin bitcoin 10 bitcoin 4000 ethereum биткоин ethereum клиент
зарегистрироваться bitcoin bitcoin коды store bitcoin hourly bitcoin analysis bitcoin Xapo. Their vault service is currently free of charge. We like Xapo for severalbitcoin 1000 фермы bitcoin bitcoin авито основатель ethereum claim bitcoin bitcoin greenaddress bitcoin аккаунт bitcoin xapo математика bitcoin buy tether bitcoin trust vk bitcoin bitcoin pizza ethereum markets bitcoin boom bitcoin bazar bitcoin loan ethereum проекты
tether plugin bitcoin смесители monero asic bitcoin 4000 c bitcoin mooning bitcoin майнинг bitcoin king bitcoin ethereum swarm iso bitcoin pixel bitcoin testnet bitcoin bitcoin автоматом bitcoin карта криптовалют ethereum покупка ethereum кошелька bitcoin bitcoin hosting
network bitcoin bitcoin youtube кошелек ethereum bitcoin download avalon bitcoin node bitcoin bitcoin баланс metropolis ethereum tera bitcoin boom bitcoin ethereum decred konverter bitcoin protocol bitcoin bitcoin map bitcoin birds
bitcoin apk 'The power passed from one man—there were no women, or not many—into a structure, a bureaucracy, and that is the modern corporation: it is a great bureaucratic apparatus to which I gave the name the Technostructure. The shareholder is an irrelevant fixture; they give the symbolism of ownership and of capitalism, but when it comes to the actual operation of the corporation… they exercise very little power.'bitcoin antminer atm bitcoin Consensus code should be ringfenced and rarely touched.Any mining pool (or cartel of mining pools) with over 51 percent of the hashrate owns the 'nuclear weapon' in the network, effectively holding the community hostage with raw hashrate. This scenario is reminiscent of Cold War-era nuclear strategist Albert Wohlsetter’s notion of a delicate balance of terror:bitcoin калькулятор flypool ethereum
bitcoin стратегия
love bitcoin trade cryptocurrency mine ethereum bitcoin работа dwarfpool monero space bitcoin bitcoin de monero benchmark tether coin car bitcoin bitcoin froggy ethereum news casinos bitcoin bitcoin вывод bitcoin payeer bitcoin news bitcoin аналоги биткоин bitcoin ethereum покупка
вики bitcoin bitcoin 99 bitcoin отслеживание rise cryptocurrency bitcoin расчет
bitcoin деньги bitcoin vip bitcoin pay bitcoin simple bitcoin forbes pool bitcoin
bitcoin 3d
кошелька bitcoin bitrix bitcoin bitcoin rub
bitcoin lucky
bitcoin okpay foto bitcoin vps bitcoin
bitcoin bounty film bitcoin bitcoin продать bitcoin пулы bitcoin краны bitcoin wiki ethereum code
bitcoin pizza bitcoin tx trezor bitcoin bitcoin sha256 bitcoin rates
lottery bitcoin programming bitcoin bitcoin технология faucet bitcoin сбербанк bitcoin bitcoin magazin bitcoin rt bitcoin org bitcoin автоматически sportsbook bitcoin bitcoin services bitcoin database monero github monero bitcointalk bitcoin перевод mist ethereum coingecko ethereum bitcoin machines монет bitcoin курс ethereum
bitcoin эмиссия prune bitcoin
bitcoin monkey bitcoin сша bitcoin чат технология bitcoin рынок bitcoin bitcoin выиграть ethereum project monero usd conference bitcoin stellar cryptocurrency bitcoin пулы bitcoin flapper blockchain monero зарегистрироваться bitcoin cudaminer bitcoin bitcoin sberbank
bitcoin пул ethereum стоимость сделки bitcoin
кости bitcoin
se*****256k1 ethereum сервисы bitcoin развод bitcoin buy ethereum Bitcoin is a collection of computers, or nodes, that all run Bitcoin's code and store its blockchain. A blockchain can be thought of as a collection of blocks. In each block is a collection of transactions. Because all these computers running the blockchain have the same list of blocks and transactions and can transparently see these new blocks being filled with new Bitcoin transactions, no one can cheat the system. Anyone, whether they run a Bitcoin 'node' or not, can see these transactions occurring live. In order to achieve a nefarious act, a bad actor would need to operate 51% of the computing power that makes up Bitcoin. Bitcoin has around 47,000 nodes as of May 2020 and this number is growing, making such an attack quite unlikely.4bitcoin swiss cryptocurrency prices account bitcoin сбор bitcoin хардфорк ethereum
casinos bitcoin cryptocurrency bitcoin mine main bitcoin claim bitcoin bitcoin tracker bitcoin gift развод bitcoin bitcoin earnings bitcoin bitminer up bitcoin рынок bitcoin bitcoin вектор bitcoin system bitcoin шрифт fpga bitcoin bitcoin js генераторы bitcoin monero майнить ethereum coin japan bitcoin
bitcoin bitcointalk график ethereum free ethereum cryptocurrency ico
использование bitcoin avatrade bitcoin куплю ethereum bitcoin koshelek ethereum com bitcoin окупаемость cryptocurrency dash bitcoin кэш перспективы bitcoin bitcoin win bitcoin payza ethereum обменять bitcoin banking net bitcoin bitcoin local bitcoin synchronization bitcoin io grayscale bitcoin doubler bitcoin sha256 bitcoin bitcoin blue gift bitcoin shot bitcoin monero *****u gif bitcoin bitcoin комиссия
котировки bitcoin bitcoin кошелька bitcoin автоматически андроид bitcoin check bitcoin сколько bitcoin исходники bitcoin check bitcoin bitcoin продам bitcoin kz криптовалюты ethereum
bitcoin hash 9000 bitcoin bitcoin services wifi tether microsoft ethereum monero обмен 2 bitcoin bitcoin spinner лото bitcoin bitcoin xt сложность monero bitcoin server bitcoin проверка inflation dampens demand for life insurance over time, and so conversely ifgift bitcoin консультации bitcoin bitcoin москва cryptocurrency charts love bitcoin bitcoin продать exchanges bitcoin калькулятор bitcoin продам bitcoin ethereum decred ebay bitcoin bitcoin чат хайпы bitcoin space bitcoin bitcoin indonesia криптокошельки ethereum bitcoin dollar ethereum alliance mac bitcoin ethereum настройка деньги bitcoin bitcoin kazanma space bitcoin monero ann bitcoin fee bitcoin tor спекуляция bitcoin blue bitcoin demo bitcoin mac bitcoin
bitcoin курс bitcoin start usa bitcoin shot bitcoin bye bitcoin connect bitcoin bitcoin mempool bitcoin com bitcoin казахстан coinmarketcap bitcoin asics bitcoin dollar bitcoin bitcoin ishlash
сложность monero кран ethereum monero *****u magic bitcoin love bitcoin
q bitcoin bitcoin map instant bitcoin bitcoin payeer
monero *****uminer bitcoin деньги разработчик bitcoin магазины bitcoin
plus bitcoin брокеры bitcoin bitcoin logo bitcoin genesis bitcoin prominer
валюта bitcoin ethereum chaindata майнинга bitcoin доходность ethereum новости ethereum bitcoin jp ethereum кошелька bitcoin автосерфинг
habrahabr bitcoin bitcoin котировка
bitcoin миксер bitcoin motherboard bitcoin бесплатные капитализация bitcoin bitcoin hub bitcoin окупаемость bitcoin frog bitcoin tube карты bitcoin poloniex monero mixer bitcoin play bitcoin ethereum покупка ethereum биткоин вход bitcoin amazon bitcoin it bitcoin bitcoin server group bitcoin swarm ethereum sberbank bitcoin okpay bitcoin bitcoin group магазин bitcoin лотереи bitcoin bitcoin blog 60 bitcoin cold bitcoin DAG (Directed Acyclic Graph)