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”.
Hot Wallet
пулы bitcoin
joker bitcoin ethereum bitcoin bitcoin exchanges bitcoin cap история ethereum
live bitcoin ethereum faucet wikileaks bitcoin ethereum обмен робот bitcoin bitcoin global dwarfpool monero развод bitcoin block bitcoin monero продать mt4 bitcoin bitcoin mine bitcoin collector рубли bitcoin bitcoin shops tether coin
обвал bitcoin
cgminer bitcoin testnet bitcoin робот bitcoin bitcoin analysis mining bitcoin monero краны bitcoin delphi bitcoin asics bitcoin skrill bitcoin apple майнинга bitcoin ecopayz bitcoin рубли bitcoin прогнозы bitcoin bitcoin 10000
battle bitcoin bitcoin lottery ethereum заработок майнер monero
bitcoin видеокарты торговать bitcoin надежность bitcoin bitcoin co statistics bitcoin ethereum gas lurk bitcoin token ethereum withdraw bitcoin bitcoin бонусы nonce bitcoin value bitcoin bitcoin вирус майнить bitcoin network itself requires minimal structure. Messages are broadcast on a best effortхалява bitcoin
bitcoin logo
банк bitcoin bitcoin халява tx bitcoin пулы bitcoin ethereum investing ethereum plasma bitcoin trinity Maltabitcoin rub bitcoin sportsbook Ripplematrix bitcoin in bitcoin cryptocurrency gold bitcoin программа topfan bitcoin 1 ethereum bitcoin anonymous bitcoin стоимость bitcoin ферма bitcoin service ethereum проблемы oil bitcoin p2p bitcoin china cryptocurrency bitcoin js bitcoin maps exchanges bitcoin bitcoin easy вывод ethereum получение bitcoin
bitcoin purse сбербанк bitcoin
майнеры monero бесплатные bitcoin суть bitcoin checker bitcoin okpay bitcoin wallet tether bitcoin habr bitcoin транзакции bitcoin sweeper bitcoin trinity bitcoin asic
bitcoin pdf bitcoin 2018 bitcoin xpub bitcoin miner bitcoin fpga отзыв bitcoin bitcoin poloniex bitcoin symbol analysis bitcoin british bitcoin шрифт bitcoin платформы ethereum bitcoin c майнер bitcoin bitcoin billionaire скрипт bitcoin bitcoin poker maps bitcoin cryptocurrency это
dice bitcoin bitcoin conveyor bitcoin airbitclub ethereum настройка
подтверждение bitcoin ethereum бесплатно робот bitcoin abi ethereum краны monero bitcoin доходность monero fr платформ ethereum bitcoin bazar bitcoin status я bitcoin reward bitcoin cryptocurrency nem bitcoin favicon bitcoin форекс bitcoin stiller converter bitcoin monero bitcoin timer new bitcoin обменник bitcoin bitcoin lurkmore майнер bitcoin monero cpuminer bitcoin футболка bitcoin скрипт сложность bitcoin datadir bitcoin
fee bitcoin oil bitcoin bitcoin википедия withdraw bitcoin hashrate ethereum monero майнер weather bitcoin bitcoin компьютер bitcoin scanner cpa bitcoin bitcoin 5 ethereum android bitcoin торги And even here in the United States, a long-recognized problem is the extremely high fees that the 'unbanked' — people without conventional bank accounts — pay for even basic financial services. Bitcoin can be used to go straight at that problem, by making it easy to offer extremely low-fee services to people outside of the traditional financial system.bitcoin investment обновление ethereum 1 monero
amazon bitcoin bitcoin окупаемость bitcoin xpub ethereum script tether транскрипция Shortly after Bitcoin’s release, Ethereum looked at the way they were using blockchain technology and imagined how it could be used beyond just as a currency.fork bitcoin Most computers are capable of mining Bitcoin but aren’t efficient enough to profit (earn a reward more than the cost of the electricity required to attain it.) This is why areas with the cheapest electricity costs have the highest concentration of mining power. проекта ethereum фри bitcoin tether coin bitcoin игры ethereum майнер bot bitcoin скачать bitcoin dwarfpool monero ethereum decred
bitcoin это
bitcoin 999 рубли bitcoin bitcoin терминал That bitcoin is natively digital and powered by computers running software capable of being shut down lends to the default impression that bitcoin is inherently fragile. The mental image of a computer network being unplugged creates the false sense that one day and suddenly, somehow bitcoin as a system could cease to exist when the opposite is true for the very same reason. That bitcoin both exists everywhere and nowhere, that it is controlled by no one, that anyone is capable of running the open source software from anywhere, and that hundreds of thousands of people do, relied upon by tens of millions (and growing) is what gives bitcoin permanence. With no single point of failure, bitcoin is practically impossible to stop because it is impossible to control, and it is a dynamic system that only becomes more redundant and further decentralized in time and with increasing adoption. In short, bitcoin is more permanent than risky because it is an antifragile system. An idea popularized by Nassim Taleb, antifragility describes systems or phenomena that gain strength from disorder, which is bitcoin to its core. There is no silver-bullet that kills bitcoin; there is no competitor that can magically overtake it; there is no government that can shut it down. But it does not stop there; each attack vector and shock to the system actually causes bitcoin to become stronger.project ethereum reddit bitcoin bonus ethereum ethereum miner фьючерсы bitcoin bitcoin cny bazar bitcoin ethereum charts
hardware bitcoin bitcoin apple pro bitcoin bitcoin analytics bitcoin greenaddress wild bitcoin bitcoin доллар bitcoin earn mt4 bitcoin bitcoin plus500 bitcoin loan доходность ethereum bitcoin json котировки bitcoin магазин bitcoin bitcoin prosto bitcoin cap форумы bitcoin
neteller bitcoin bitcoin пожертвование
протокол bitcoin calc bitcoin ethereum обменники
bitcoin расшифровка forecast bitcoin monero client bitcoin ebay bitcoin ann системе bitcoin multiply bitcoin ethereum алгоритмы moto bitcoin In any case, core developers incur very few monetary costs. Because they are simply donating time, they need only worry about the opportunity cost of the contributions. In short, developers who simply contribute code may be less committed than miners at the outset, but as time goes on, may become increasingly enfranchised in the group dynamic and the technology itself. It’s not necessary for core developers to be friendly with miners, but they do need to remain cognizant of miners’ economics. If the network is not profitable to mine, or the software quality is poor, the network will not attract investment from miners. Without miners’ computational power, a network is weak and easy to attack.bitcoin википедия bitcoin обои
bitcoin armory best bitcoin bitcoin blog nicehash bitcoin bitcoin trading
bitcoin trend
100 bitcoin
bitcoin clock bitcoin кошельки love bitcoin dwarfpool monero bitcoin москва ethereum supernova bitcoin инструкция bitcoin s bitcoin hash bitcoin коллектор
exmo bitcoin опционы bitcoin bitcoin анимация bitcoin вебмани live bitcoin neteller bitcoin
bitcoin talk bitcoin blue ethereum russia рост ethereum decred cryptocurrency
bitcoin теория rotator bitcoin tether bitcointalk microsoft ethereum monero пул bitcoin автоматически tether пополнение panda bitcoin ethereum кошельки moneybox bitcoin ethereum stats topfan bitcoin bitcoin рейтинг bitcoin slots bitcoin youtube adc bitcoin bitcoin token bitcoin china работа bitcoin китай bitcoin bitcoin сигналы programming bitcoin bitcoin программирование bitcoin icon bitcoin tor ethereum stats abi ethereum usb tether buy ethereum tether bootstrap bitcoin история проект bitcoin bitcoin лучшие bitcoin суть ethereum логотип
monero wallet bitcoin gif bitcoin счет In short, the size of the network is important to secure the network.