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 evolution tabtrader bitcoin
equihash bitcoin
bitcoin venezuela bitcoin maining hit bitcoin настройка ethereum
акции bitcoin If you do decide to buy DragonMint units, you’re also supporting decentralisation of mining by giving your custom to a company that isn’t Bitmain. For some, this could also be a deal breaker!chaindata ethereum dwarfpool monero bitcoin выиграть ethereum browser bitcoin lion bitcoin abc картинки bitcoin bitcoin links курс ethereum подтверждение bitcoin
биржи ethereum ethereum хешрейт btc bitcoin ethereum icon daemon monero sgminer monero bitcoin сборщик
bitcoin xbt tether mining bitcoin greenaddress bitcoin компьютер bitcoin котировки bitcoin математика rx560 monero bitcoin magazin bitfenix bitcoin ethereum обмен
история ethereum bitcoin kurs новости bitcoin bitcoin accelerator avto bitcoin bitcoin 2020 client ethereum lurkmore bitcoin cryptocurrency prices bitcoin work topfan bitcoin q bitcoin bear bitcoin bitcoin quotes рост bitcoin bitcoin trezor Ethereum was proposed in 2013 by programmer Vitalik Buterin. Development was crowdfunded in 2014, and the network went live on 30 July 2015, with 72 million coins premined. The Ethereum Virtual Machine (EVM) can execute Turing-complete scripts and run decentralized applications. Ethereum is used for decentralized finance, and has been utilized for many initial coin offerings.A Major Tesla Investor Has Predicted Bitcoin Will Be Worth More Than $1 Trillion In Under 10 Yearsbitcoin ютуб *****uminer monero магазин bitcoin ethereum swarm bitcoin часы верификация tether magic bitcoin bitcoin kaufen ethereum chaindata invest bitcoin
bitcoin boxbit bitcoin etf electrum bitcoin ethereum forks акции bitcoin video bitcoin skrill bitcoin price bitcoin bitcoin биржи These currencies are volatile, their market share is fickle, and updates can result in split currencies, which has happened to both Ethereum and Bitcoin. However, historically when this happens to these major networks, the original network maintains the vast majority of the market share.bitcoin мерчант bitcoin бизнес блоки bitcoin bitcoin бизнес bitcoin future kraken bitcoin agario bitcoin amazon bitcoin bitcoin msigna amazon bitcoin суть bitcoin bitcoin алгоритм bitcoin переводчик ethereum токены bitcoin jp ethereum network bitcoin арбитраж coffee bitcoin bitcoin обозреватель
кошель bitcoin кредит bitcoin simple bitcoin bitcoin scam bitcoin hardfork
bitcoin frog bitcoin ваучер bye bitcoin bitcoin 999 bitcoin казино ethereum calc pools bitcoin bitcoin информация monero address bitcoin instagram
vteA Bitcoin transaction cannot be reversed, it can only be refunded by the person receiving the funds. This means you should take care to do business with people and organizations you know and trust, or who have an established reputation. For their part, businesses need to keep track of the payment requests they are displaying to their customers. Bitcoin can detect typos and usually won't let you send money to an invalid address by mistake, but it's best to have controls in place for additional safety and redundancy. Additional services might exist in the future to provide more choice and protection for both businesses and consumers.bitcoin продать bitcoin pools bitcoin шахта bitcoin conference bitcoin tor bitcoin qazanmaq блоки bitcoin enterprise ethereum ethereum forum заработать monero bitcoin растет bitcoin habr
bitcoin сервисы ethereum poloniex bitcoin virus bloomberg bitcoin почему bitcoin casper ethereum
bitcoin блокчейн bitcoin registration bitcoin lottery bitcoin ios bitcoin blockstream trade cryptocurrency ethereum ubuntu
ethereum programming
акции bitcoin bitcoin магазины bitcoin carding instant bitcoin bitcoin fast paypal bitcoin значок bitcoin bitcoin traffic bitcoin steam the ethereum bitcoin сша fire bitcoin cryptocurrency logo ethereum логотип ethereum игра
миллионер bitcoin monero amd ethereum прогноз
tether майнинг обменять ethereum bitcoin форум
торговать bitcoin bitcoin knots технология bitcoin торги bitcoin simplewallet monero андроид bitcoin bitcoin zona loans bitcoin bitcoin gpu mac bitcoin base bitcoin cryptonight monero cryptocurrency dash
bitcoin gift solo bitcoin компьютер bitcoin bitcoin кошелька mt5 bitcoin bitcoin принцип ethereum телеграмм скачать bitcoin cryptocurrency capitalization bitcoin дешевеет рубли bitcoin лотереи bitcoin
bitcoin bow
bitcoin платформа приват24 bitcoin bitcoin сети
bitcoin goldman 1:29On 10 January 2017, the privacy of Monero transactions was further strengthened by the adoption of Bitcoin Core developer Gregory Maxwell's algorithm Confidential Transactions, hiding the amounts being transacted, in combination with an improved version of Ring Signatures.bitcoin 999 исходники bitcoin cryptocurrency charts
app bitcoin ethereum заработать loco bitcoin
обменять monero bitcoin farm анонимность bitcoin bitcoin advcash
tether download ethereum crane cryptocurrency forum ethereum russia bitcoin payza rx560 monero zona bitcoin
1080 ethereum алгоритм bitcoin connect bitcoin bitcoin carding ethereum cryptocurrency ethereum testnet bitcoin торрент bitcoin weekend скачать bitcoin captcha bitcoin titan bitcoin chaindata ethereum bitcoin me ethereum проекты your bitcoin moneypolo bitcoin bitcoin торговля bitcoin switzerland bitcoin legal форекс bitcoin bitcoin шахта лото bitcoin bitcoin moneypolo bitcoin ads bitcoin film bitcoin mempool bitcoin скрипт explorer ethereum bitcoin key bitcoin center tether android golang bitcoin byzantium ethereum ethereum windows bitcoin shops account bitcoin bitcoin список
index bitcoin bitcoin ishlash san bitcoin bitcoin conf bitcoin zona roll bitcoin bitcoin rub bitcoin escrow bitcoin valet перевод ethereum
график bitcoin хардфорк monero bitcoin миллионеры 20 bitcoin simplewallet monero Blockchain is the digital ledger where all transactions involving a virtual currency are stored. If you buy bitcoin, sell bitcoin, use your bitcoin to buy a Subway sandwich, and so on, it'll be recorded, in an encrypted fashion, in this digital ledger. The same goes for other cryptocurrencies.