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”.
ad bitcoin
bitcoin государство
bitcoin mainer bitcoin galaxy прогнозы bitcoin autobot bitcoin рулетка bitcoin дешевеет bitcoin monero fork bitcoin fasttech ethereum проекты bitcoin ферма bitcoin spinner alpari bitcoin
bitcoin shops moon ethereum ethereum android monero free bitcoin nvidia bitcoin bitcoin valet ethereum проект monero кошелек moneypolo bitcoin конференция bitcoin monero freebsd bitcoin проверка bitcoin вывод polkadot ico bitcoin реклама wei ethereum explorer ethereum cubits bitcoin bitcoin game bitcoin trojan bitcoin galaxy bitcoin reindex tx bitcoin настройка ethereum bitcoin tx jax bitcoin monero криптовалюта bitcoin freebitcoin доходность ethereum bitcoin индекс my ethereum bitcoin monkey bitcoin etherium ethereum видеокарты
up bitcoin system bitcoin ethereum node bitcoin инструкция ethereum calc monero hardware bitcoin зарабатывать box bitcoin bitcoin faucet bitcoin количество bitcoin rub
bitcoin investing flypool ethereum check bitcoin
ethereum cryptocurrency краны monero алгоритм bitcoin вики bitcoin
bitcoin stock moneypolo bitcoin bank bitcoin coinder bitcoin pump bitcoin bitcoin accelerator reklama bitcoin rpg bitcoin
bitcoin loan форумы bitcoin компиляция bitcoin bitcoin ротатор
токены ethereum bitcoin symbol ethereum прогнозы takara bitcoin bitcoin withdrawal системе bitcoin вывод ethereum amd bitcoin ethereum заработок цена ethereum bitcoin сокращение by bitcoin bitcoin kurs
erc20 ethereum ethereum os captcha bitcoin mastercard bitcoin bitcoin play криптовалюта monero bitcoin разделился green bitcoin monero краны tether программа bitcoin hype bitcoin расчет ethereum asic
bitcoin prominer bitcoin alliance bitcoin rotator сборщик bitcoin bitcoin mixer system bitcoin bitcoin анонимность nodes bitcoin bitcoin рублях wallets cryptocurrency bitcoin pizza стоимость ethereum bitcoin форки all bitcoin отзыв bitcoin эмиссия ethereum bitcoin программирование bitcoin виджет
habrahabr bitcoin bitcoin фото вывод monero mmm bitcoin doubler bitcoin bitcoin png bitcoin linux bitcoin зебра bitcoin strategy bitcoin qr bitcoin vector monero miner
Rigged votes is an illegal activity that occurs during most traditional voting systems. Also, citizens who want to vote to wait a little longer in a queue and cast their votes to a local authority, which is a very time-consuming process.tether usd Shareethereum перевод bitcoin masters bitcoin metal copay bitcoin bitcoin ads excel bitcoin баланс bitcoin ios bitcoin magic bitcoin
moto bitcoin tether usb bitcoin x2 india bitcoin hit bitcoin click bitcoin ethereum сайт bitcoin funding bitcoin playstation bitcoin store разделение ethereum bitcoin шахты cryptocurrency chart bitcoin часы bitcoin бот bitcoin motherboard вход bitcoin tether bitcointalk bitcoin stellar bitcoin ru форк bitcoin bitcoin hesaplama moto bitcoin siiz bitcoin 2016 bitcoin обменник ethereum tether limited Lee designed Litecoin based on the Bitcoin code and protocol, with some modifications that he believed addressed certain barriers to its wider adoption. Firstly, the block confirmation time is 4 times lower on Litecoin compared to Bitcoin (2.5 min vs. 10 min) which allows Litecoin to confirm transactions much faster. Another difference is the limit on the maximum amount of coins: for Bitcoin it is 21M, while for Litecoin – 84M. Finally, some technical elements of Litecoin make it less susceptible to centralization of mining operations and more attractive to smaller-scale miners.лото bitcoin bitcoin бесплатные total cryptocurrency bitcoin brokers check bitcoin
bitcoin брокеры сколько bitcoin bitcoin legal monero hardware space bitcoin bitcoin tails reindex bitcoin
mine bitcoin escrow bitcoin boxbit bitcoin
ethereum обозначение bitcoin значок виталик ethereum ethereum контракты
платформы ethereum bitcoin rotator контракты ethereum ethereum логотип wallets cryptocurrency
boxbit bitcoin price bitcoin
india bitcoin история ethereum bitcoin таблица
bitcoin 4 bitcoin конвектор tp tether кошелька ethereum
bitcoin talk neo cryptocurrency bitcoin weekend cryptocurrency price alpha bitcoin cryptocurrency это auction bitcoin *****a bitcoin bitcoin cache bitcoin mining alipay bitcoin технология bitcoin bitcoin основы panda bitcoin 2 bitcoin ethereum описание bitcoin лотереи bitcoin proxy
bitcoin обменник rpc bitcoin bitcoin adress bitcoin отзывы bitcoin capitalization
bitcoin презентация bitcoin matrix Bitcoin miners run complex computer rigs to solve complicated puzzles in an effort to confirm groups of transactions called blocks; upon success, these blocks are added to the blockchain record and the miners are rewarded with a small number of bitcoins.Bitcoin cashbest cryptocurrency bitcoin 5 bitcoin lurk bitcoin расчет x2 bitcoin
bitcoin бесплатные unconfirmed monero bitcoin fpga
bitcoin surf bitcoin bitcointalk rub bitcoin биржи bitcoin bitcoin описание cryptocurrency gold
bitcoin пулы analysis bitcoin ethereum доходность
capitalization bitcoin bitcoin пирамиды robot bitcoin home bitcoin bitcoin novosti ethereum icon de bitcoin bitcoin co bitcoin purse cfd bitcoin ethereum forks
bitcoin депозит bitcoin аналитика ethereum fork bitcoin видеокарты The major caveat, though, is that many developers are skeptical oracles can be used in a decentralized way. Users have to trust that the data feed is providing the correct data, and not gaming the data for their own financial interest.ethereum casper
truffle ethereum bitcoin 2018 monero bitcointalk bitcoin usa monero сложность ферма ethereum кошелек tether 22 bitcoin bitcoin earnings калькулятор ethereum протокол bitcoin вложить bitcoin вебмани bitcoin cryptocurrency gold ethereum mining EXPANDсимвол bitcoin разработчик bitcoin сервисы bitcoin новости ethereum bitcoin сокращение bitcoin конвертер Before we can understand cold storage, we must first explore the concept of a bitcoin wallet. For the cryptocurrency user, wallets function in a somewhat similar way to physical wallets which hold cash. They can be thought of as a storage device for cryptocurrency tokens. However, in most cases wallets are not physical items, and neither are the bitcoin they hold. Rather, they are digital storage tools which have both a public key and a private key. These keys are strings of cryptographic characters which are necessary in order to complete transfers of bitcoin to or from the wallet in question. The public key, analogous to a username, identifies the wallet so that other parties know where to transfer coins during a transaction. The private key, similar to a password, is the wallet's owner's special access code and acts as a security device to help ensure others cannot access the bitcoin stored within.red bitcoin 600 bitcoin форки ethereum master bitcoin казино bitcoin сложность ethereum hd7850 monero bitcoin group bitcoin кэш connect bitcoin транзакции monero vip bitcoin
вывод monero cryptocurrency bitcoin all bitcoin 4 email bitcoin bitcoin dollar
r bitcoin bitcoin вирус nanopool ethereum bitcoin рубли bitcoin marketplace seed bitcoin bitcoin motherboard bitcoin strategy blocks bitcoin казино ethereum bitcoin now ethereum tokens plasma ethereum bitcoin мошенничество hacking bitcoin pow bitcoin bitcoin 2048
buy tether основатель bitcoin ethereum course оборот bitcoin
bitcoin update The institutions of the day, corporations and governments, Mumford called megamachines. Megamachines, he said, are comprised of many human beings, each with a specialized role in a larger bureaucracy. He called these individuals 'servo units.' Mumford argued that for these people, the specialized nature of the work weakened psychological barriers against questionable commands from leadership, because each individual was responsible for only one small aspect of the machine’s overall goal. At the top of a megamachine sat a corporate scion, dictator, or commander to whom god-like attributes were attributed. He cited the lionization of Egyptian Pharaohs and Soviet dictators as examples.Coinmap suggests that some 75 businesses in New York City currently accept bitcoin payments. Some of these work exclusively with bitcoin, even going so far as to house their own bitcoin ATMs.4bitcoin pizza ethereum os