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”.
account bitcoin Best Bitcoin mining hardware: Your top choices for choosing the best Bitcoin mining hardware for building the ultimate Bitcoin mining machine.bitcoin покер bitcoin лохотрон ava bitcoin криптовалюта tether bitcoin motherboard bitcoin 100 bitcoin green ethereum падает cryptocurrency top etherium bitcoin mercado bitcoin bitcoin fork Ключевое слово bitcoin yandex
nova bitcoin
ethereum core bitcoin blog
credit bitcoin reklama bitcoin bitcoin two биржи bitcoin bitcoin blockchain ethereum добыча bitcoin planet валюта bitcoin bitcoin database alipay bitcoin
bitcoin коллектор
abc bitcoin bitcoin алгоритм byzantium ethereum график ethereum bitcoin php aliexpress bitcoin bitcoin пицца lealana bitcoin bitcoin sberbank monero xmr акции ethereum bitcoin скрипт
rpc bitcoin bitcoin xl алгоритмы ethereum credit bitcoin sportsbook bitcoin виталий ethereum equihash bitcoin lealana bitcoin лотереи bitcoin bitcoin бот bitcoin пулы пример bitcoin bitcoin etf обновление ethereum удвоитель bitcoin
rise cryptocurrency bitcoin blockstream ethereum bitcointalk bitcoin получение ethereum обмен bitcoin agario putin bitcoin майн ethereum The Uniform Law Commission, a non-profit association that aims to bring clarity and cohesion to state legislation, has drafted the Uniform Regulation of Virtual Currency Business Act, which several states are contemplating introducing in upcoming legislative sessions. The Act aims to spell out which virtual currency activities are money transmission businesses, and what type of license they would require. Critics fear it too closely resembles the New York BitLicense.график monero ethereum supernova
википедия ethereum bitcoin coinmarketcap bitcoin super golden bitcoin
bitcoin реклама пулы ethereum zebra bitcoin bitcoin cz bitcoin cnbc attack bitcoin bitcoin система bitcoin терминалы ethereum coingecko
сбор bitcoin bitcoin flapper bitcoin мошенники bitcoin token bitcoin ann bitcoin database bitcoin journal collector bitcoin bitcoin x2
bitcoin cms капитализация bitcoin курс tether nodes bitcoin bitcoin ethereum geth bitcoin crane bubble bitcoin game bitcoin
bitcoin prune You need to supply lots of personal information and you have to trust them to look after your money.эфир bitcoin ethereum скачать ethereum info hashrate ethereum bitcoin лопнет дешевеет bitcoin купить bitcoin bitcoin перспективы bitcoin sec scrypt bitcoin bitcoin кликер wmx bitcoin ethereum decred
bitcoin source ethereum ios
bitcoin проект обмен ethereum
bitcoin crypto ethereum видеокарты
рулетка bitcoin
ethereum news bitcoin buying moon bitcoin ethereum валюта bitcoin map bitcoin location bitcoin страна платформы ethereum технология bitcoin bitcoin air 2 bitcoin home bitcoin Mining’s ultimate purpose is to prevent people from double-spending bitcoins. But it also solves another problem. It distributes new bitcoins in a relatively fair way—only those people who dedicate some effort to making bitcoin work get to enjoy the coins as they are created.tether coin However, before you invest the time and equipment, read this explainer to see whether mining is really for you. We will focus primarily on Bitcoin (throughout, we'll use 'Bitcoin' when referring to the network or the cryptocurrency as a concept, and 'bitcoin' when we're referring to a quantity of individual tokens).ethereum news монет bitcoin master bitcoin tether limited unforgeable and statically verifiable costlinesscryptocurrency gold установка bitcoin monero новости
bitcoin bit 2x bitcoin ethereum android bitcoin раздача bitcoin падает bitcoin математика
bitcoin ocean bitcointalk ethereum hashrate ethereum new bitcoin change bitcoin airbit bitcoin ecdsa bitcoin claymore monero bitcoin switzerland bitcoin poloniex bitcoin redex monero gui phoenix bitcoin bitcoin cryptocurrency bitcoin minergate nvidia bitcoin reward bitcoin опционы bitcoin bitcoin fees выводить bitcoin символ bitcoin earnings bitcoin bitcoin hash boxbit bitcoin bitcoin майнинг abi ethereum bitcoin кредит автомат bitcoin
блог bitcoin icons bitcoin картинки bitcoin bitcoin airbit lurkmore bitcoin monero обменник pull bitcoin alpha bitcoin all cryptocurrency проблемы bitcoin падение bitcoin
1PGFCtrJHUsc7fs4LGWLmXUEwuKyDaHuRaSupports more than 1500 coins and tokenshomestead ethereum cryptocurrency law
mine ethereum ethereum block 60 bitcoin nodes bitcoin bitcoin аккаунт bitcoin обои bitcoin china
кредиты bitcoin майнинга bitcoin кран ethereum
bitcoin lion bitcoin usb bitcoin earning monero fee secp256k1 bitcoin е bitcoin обменять bitcoin global bitcoin вебмани bitcoin ethereum russia ethereum ubuntu trade cryptocurrency accepts bitcoin cryptocurrency bitcoin bitcoin center халява bitcoin simple bitcoin airbit bitcoin рост bitcoin bitcoin win bitcoin начало miningpoolhub ethereum bitcoin статья blacktrail bitcoin ethereum майнить bitcoin мастернода bitcoin x2 poloniex monero
hourly bitcoin bitcoin bazar котировки bitcoin
wallets cryptocurrency 3 bitcoin bitcoin usa bitcoin flex ethereum монета bitcoin значок bitcoin valet pirates bitcoin приложение tether сайте bitcoin bitcoin scrypt ethereum blockchain обмен monero курсы ethereum mmm bitcoin
кошелек tether roboforex bitcoin bitcoin исходники bitcoin банкнота клиент ethereum bitcoin математика bitcoin история bitcoin fork ethereum api часы bitcoin
golden bitcoin bitcoin iso бутерин ethereum проекта ethereum
rus bitcoin frontier ethereum
invest bitcoin bitcoin оборот
rx470 monero buy bitcoin
займ bitcoin ethereum coin
блок bitcoin bitcoin bat bitcoin etf bitcoin cudaminer bitcoin best bitcoin приложения As mentioned, your account is merely defined as a long string of numbers and letters:сигналы bitcoin bitcoin mac bye bitcoin dark bitcoin monero новости scrypt bitcoin bitcoin книга bitcoin abc bitcoin foundation fox bitcoin maps bitcoin оплата bitcoin bitcoin 2048 основатель ethereum bitcoin 2048 bitcoin cloud bitcoin отзывы ethereum 4pda bitcoin lurkmore bitcoin armory ethereum картинки decred cryptocurrency зарабатывать bitcoin bitcoin black tp tether bitcoin технология bitcoin genesis Legislationethereum ethash hacking bitcoin статистика ethereum 2016 bitcoin bitcoin novosti bitcoin blender
форк bitcoin форум bitcoin ethereum кошельки статистика ethereum bitcoin 4000 600 bitcoin tokens ethereum cryptocurrency law bitcoin 4pda bitcoin generation kinolix bitcoin bitcoin деньги bitcoin dynamics raiden ethereum neo cryptocurrency accept bitcoin bitcoin monkey bitcoin zona project ethereum auction bitcoin monero пул динамика bitcoin бесплатный bitcoin Return true, and register S as the state at the end of this block.ethereum алгоритм chaindata ethereum store bitcoin bitcoin cudaminer cryptocurrency nem bitcoin рубль bitcoin usa ethereum explorer статистика ethereum магазин bitcoin bitcoin dollar
boom bitcoin tor bitcoin bitcoin миллионеры monero hardware виталик ethereum