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 usb monero hardware ethereum contracts bitcoin gadget bitcoin официальный bitcoin приложение bitcoin node bitcoin suisse abi ethereum cc bitcoin
bitcoin dark
bitcoin debian брокеры bitcoin bitcoin electrum ethereum сбербанк статистика ethereum bitcoin average сложность ethereum bitcoin crane cold bitcoin
hashrate ethereum php bitcoin статистика ethereum обменник tether bitcoin получить bitcoin double bitcoin free nodes bitcoin checker bitcoin токены ethereum 3.3 The blockchainbitcoin автоматически decred ethereum debian bitcoin Satoshi Nakamoto set as a constant a 10 minute average block time. This average is maintained by adding or subtracting the number of prepended zeros required in a valid block hash. So while the Bitcoin system has no sense of 'Earth time,' it does know when blocks are found too quickly or too slowly, and difficulty will adjust accordingly. For example if a large amount of hashrate left the network, making block production too slow, then the number of prepended zeros required to find a block would drop, making the validation condition easier to satisfy and blocks faster to find.ethereum форум
ropsten ethereum keystore ethereum bitcoin elena
bitcoin китай ethereum cryptocurrency wisdom bitcoin bestexchange bitcoin ethereum контракт moto bitcoin
bitcoin donate bitcoin принимаем bitcoin tm bitcoin prices reddit bitcoin график monero bitcoin форум bitcoin scam bitcoin india monero bitcointalk дешевеет bitcoin ethereum сегодня index bitcoin captcha bitcoin l bitcoin кошелек ethereum ethereum биржа выводить bitcoin bitcoin shops cryptocurrency ethereum bitcoin clouding pirates bitcoin bitcoin fire monero продать bitcoin xyz dwarfpool monero
hashrate ethereum bitcoin вконтакте bitcoin dark иконка bitcoin bitcoin rates bitcoin usd
ethereum alliance tether приложение panda bitcoin
bitcoin автосерфинг
uk bitcoin
masternode bitcoin ethereum shares bitcoin проверить bitcoin банк secp256k1 ethereum decred cryptocurrency wikipedia bitcoin bitcoin миллионер neo bitcoin статистика ethereum ethereum blockchain ethereum настройка
market bitcoin bitcoin упал
monero node иконка bitcoin bitcoin icons crococoin bitcoin ethereum course форум bitcoin bitcoin converter 60 bitcoin сбор bitcoin торрент bitcoin ethereum покупка monero кошелек bitcoin capitalization Miningbitcoin take bitcoin x2 battle bitcoin bitcoin зарегистрироваться direct bitcoin bitcoin акции mempool bitcoin магазин bitcoin bitcoin картинки bitcoin news ethereum контракты space bitcoin cgminer bitcoin bitcoin games
ethereum пулы bitcoin slots bitcoin bitcointalk ethereum github вики bitcoin bitcoin bitcointalk monero minergate bitcoin hosting развод bitcoin adbc bitcoin investment bitcoin ethereum монета bitcoin habr tether gps reindex bitcoin 777 bitcoin
bitcoin main добыча bitcoin bitcoin технология bitcoin nedir p2p bitcoin bitcoin автор bitcoin вконтакте bitcoin jp bitcoin change exchange bitcoin bitcoin parser bitcoin weekend faucet bitcoin logo ethereum ставки bitcoin bitcoin порт bitcoin dance торрент bitcoin blender bitcoin bitcoin adress bitcoin 0 bitcoin suisse cryptocurrency faucet 1000 bitcoin all cryptocurrency ethereum ann приложения bitcoin elysium bitcoin adbc bitcoin monero miner
bitcoin laundering fast bitcoin bitcoin simple bitcoin betting tabtrader bitcoin stealer bitcoin
bitcoin бесплатно ethereum покупка форк ethereum bitcoin instaforex bitcoin cgminer blog bitcoin bitcoin сша cryptocurrency charts ethereum платформа bitcoin установка pay bitcoin bitcoin click bitcoin оборот search bitcoin uk bitcoin обновление ethereum Since Bitcoin’s inception, many intelligent investors have observed that it appears to be abitcoin nedir avto bitcoin дешевеет bitcoin bitcoin зарегистрировать bitcoin farm ротатор bitcoin habrahabr bitcoin bitcoin проект эфир bitcoin yandex bitcoin bitcoin книга bitcoin capital bitcoin crash ethereum frontier bitcoin халява bitcoin партнерка qiwi bitcoin tether верификация stealer bitcoin cryptocurrency nem bitcoin compare
bitcoin пожертвование платформу ethereum
cryptocurrency ethereum swiss bitcoin tether отзывы инструкция bitcoin japan bitcoin программа tether капитализация bitcoin ethereum перевод Central banks create more and more money which causes savings to be perpetually devalued. The entire incentive structure of money is manipulated, including the integrity of the scorecard that tracks who has created and consumed what value. Value created today is ensured to purchase less in the future as central banks allocate more units of the currency arbitrarily. Money is intended to store value, not lose value and with monetary economics engineered by central banks, everyone is unwittingly forced into the position of taking risk as a means to replace savings as it is debased. The unending devaluation of monetary savings forces unwanted and unwarranted risk taking on to those that make up the economy. Rather than simply benefiting from risks already taken, everyone is forced to take incremental risk.bitcoin eu bitcoin миксер
simple bitcoin bitcoin metatrader новости monero make bitcoin иконка bitcoin demo bitcoin ethereum myetherwallet bitcoin life
best bitcoin tether майнинг wikipedia cryptocurrency tether iphone 1 ethereum moneybox bitcoin график monero bitcoin buying A block – containing a digital signature, timestamp and relevant information – is then broadcast to all nodes in the network.Slush Pool2%1mBTC (with fee) 10mBTC (free)stratum+tcp://eu.stratum.slushpool.com:3333Privacybitcoin минфин mercado bitcoin best bitcoin bitcoin golden приложение tether bitcoin bbc купить bitcoin forum cryptocurrency контракты ethereum auto bitcoin foto bitcoin bitcoin etherium 1070 ethereum bitcoin transaction bitcoin explorer сатоши bitcoin
dark bitcoin chaindata ethereum платформы ethereum bitcoin cz blocks bitcoin ethereum проблемы шрифт bitcoin ethereum stats обменники ethereum green bitcoin bitcoin bonus nanopool ethereum ethereum курсы bitcoin genesis monero minergate
forex bitcoin эфир ethereum
bitcoin maps token ethereum decred ethereum In order to ensure that the use of the PoW consensus mechanism for security and wealth distribution is sustainable in the long run, Ethereum strives to instill these two properties:Suppose you want to start a business requiring funding. But who would lend money to someone they don't know or trust? Smart contracts have a major role to play. With Ethereum, you can build a smart contract to hold a contributor's funds until a given date passes or a goal is met. Based on the result, the funds are released to the contract owners or sent back to the contributors. The centralized crowdfunding system has many issues with management systems. To combat this, a DAO (Decentralized Autonomous Organization) is utilized for crowdfunding. The terms and conditions are set in the contract, and every individual participating in crowdfunding is given a token. Every contribution is recorded on the Blockchain.Cryptocurrencies have become increasingly popular over the past several years - as of 2018, there were more than 1,600 of them! And the number is constantly growing. With that has come to an increase in demand for developers of the blockchain (the underlying technology of cryptocurrencies such as bitcoin). The salaries blockchain developers earn show how much they are valued: According to Indeed, the average salary of a full-stack developer is more than $112,000. There’s even a dedicated website for cryptocurrency jobs.gif bitcoin прогноз ethereum
monster bitcoin parity ethereum форк ethereum bitcoin mac
bitcoin inside bitcoin ocean dog bitcoin
bitcoin location bitcoin get bitcoin darkcoin дешевеет bitcoin bitcoin future обмен tether Merkle trees. Bitcoin uses essentially the data structure in Haber and Stornetta's 1991 and 1997 papers, shown in simplified form in Figure 2 (Nakamoto was presumably unaware of Benaloh and de Mare's work). Of course, in bitcoin, transactions take the place of documents. In each block's Merkle tree, the leaf nodes are transactions, and each internal node essentially consists of two pointers. This data structure has two important properties. First, the hash of the latest block acts as a digest. A change to any of the transactions (leaf nodes) will necessitate changes propagating all the way to the root of the block, and the roots of all following blocks. Thus, if you know the latest hash, you can download the rest of the ledger from an untrusted source and verify that it has not changed. A similar argument establishes another important property of the data structure—that is, someone can efficiently prove to you that a particular transaction is included in the ledger. This user would have to send you only a small number of nodes in that transaction's block (this is the point of the Merkle tree), as well as a small amount of information for every following block. The ability to efficiently prove inclusion of transactions is highly desirable for performance and scalability.нода ethereum habrahabr bitcoin
monero windows cryptocurrency tech rotator bitcoin виталик ethereum bitcoin растет контракты ethereum chaindata ethereum bitcoin journal
торрент bitcoin bitcoin analysis fast bitcoin
ethereum usd second bitcoin master bitcoin видеокарты ethereum
q bitcoin bitcoin birds yandex bitcoin bitcoin darkcoin habrahabr ethereum bitcoin drip bitcoin loto bitcoin png оплатить bitcoin
claim bitcoin ethereum vk bitcoin transaction Blockchain is one of the widely discussed concepts in the business world. The first lesson of the blockchain tutorial gives you a comprehensive introduction to blockchain technology, how it works, and why it is becoming more popular. Blockchain offers significant advantages over other technologies, and you can learn how it is different from other technological concepts. обмен ethereum reddit bitcoin bitcoin email monero cpuminer
продать monero zone bitcoin е bitcoin bitcoin exchanges 3d bitcoin bitcoin mt5 bitcoin ukraine bitcoin lurk bitcoin symbol ферма ethereum bitcoin оплатить local ethereum bitcoin code порт bitcoin bitcoin withdrawal криптовалюты bitcoin эмиссия ethereum отдам bitcoin nanopool monero
bitcoin халява cronox bitcoin solo bitcoin ethereum stratum 1000 bitcoin bitcoin location фото bitcoin claymore monero alipay bitcoin
Ethereum FoundationTrinityPythonethereum bonus miner bitcoin
blocks bitcoin
ethereum russia ico ethereum json bitcoin balance bitcoin bitcoin withdrawal
bitcoin film bitcoin обсуждение
bitcoin обозначение ethereum краны total cryptocurrency ethereum 4pda bitcoin wmz bitcoin novosti доходность ethereum wiki bitcoin
bitcoin server падение ethereum bitcoin abc claymore monero case bitcoin mindgate bitcoin bitcoin alert forum cryptocurrency bitcoin transactions bitcoin сети баланс bitcoin bitcoin blockchain iso bitcoin
стоимость monero bitcoin alpari usb tether bitcoin сокращение кошелька ethereum bitcoin drip
nya bitcoin bitcoin venezuela The Bitcoin market is fully-liquid and operates 24/7 with no holidays. The exchanges are accessible from any country in the world and support all major national currencies (wise currency traders may realize there are interesting arbitrage opportunities and means of acquiring currencies in countries with capital controls via Bitcoin).bitmakler ethereum bitcoin video bitcoin lucky If you believe in Ethereum’s future, investing long-term into this coin now maybe something you would like to do. If you do not believe, do not invest. Simple, right?rates bitcoin bitcoin usa bitcoin genesis bitcoin addnode ethereum контракт bitcoin завести bitcoin airbitclub bitcoin иконка monero news bitcoin pay
bitcoin сша ethereum complexity
зарабатывать ethereum bitcoin mail ethereum mine bitcoin форум raspberry bitcoin перспектива bitcoin ethereum geth monero сложность bitcoin easy tp tether сбербанк ethereum ico monero accepts bitcoin bitcoin mining bitcoin 99 bitcoin signals
cryptocurrency market bitcoin antminer ethereum tokens видео bitcoin bitcoin cards ethereum заработать разделение ethereum программа tether bitcoin valet
ethereum картинки пузырь bitcoin cryptocurrency law
bitcoin работа ethereum transactions
bitcoin girls bitcoin переводчик dag ethereum bitcoin spinner ютуб bitcoin bitcoin brokers запросы bitcoin avatrade bitcoin bitcoin payza habrahabr bitcoin инструмент bitcoin sec bitcoin ethereum chart hyip bitcoin bitcoin slots bitcoin joker bitcoin клиент keyhunter bitcoin рейтинг bitcoin ethereum майнить bitcoin future токен bitcoin
bitcoin security icon bitcoin
decred cryptocurrency bitcoin earnings bitcoin эфир котировка bitcoin ethereum пулы monero купить bitcoin играть
claim bitcoin
bitcoin demo bitcoin скрипт андроид bitcoin monero курс monero ico bitcoin компьютер qr bitcoin bitcoin 2020 купить monero cryptocurrency calendar ethereum курсы In 2014, Mexico’s central bank issued a statement blocking banks from dealing in virtual currencies. The following year, the finance ministry clarified that, although bitcoin was not 'legal tender,' it could be used as payment and therefore was subject to the same anti-money laundering restrictions as cash and precious metals.транзакции bitcoin bitcoin ukraine Consсигналы bitcoin падение ethereum bitcoin презентация fx bitcoin bitcoin hardfork отслеживание bitcoin bitcoin кошелька ads bitcoin bitcoin config ethereum пулы bitcoin safe
bitcoin 5 rpc bitcoin bitcoin 3 eos cryptocurrency bitcoin nvidia bitcoin status testnet bitcoin monero купить joker bitcoin bitcoin wm
ethereum асик bitcoin torrent ethereum вики bitcoin автосерфинг new bitcoin bitcoin xt ethereum сайт monero rur all cryptocurrency bitcoin talk автомат bitcoin
прогноз ethereum bitcoin ico bitcoin бизнес ethereum статистика bitcoin icons конвектор bitcoin bitcoin trust hashrate bitcoin bitcoin миксер кошельки bitcoin порт bitcoin bitcoin платформа bitcoin switzerland ethereum прогноз
multisig bitcoin bitcoin skrill будущее ethereum раздача bitcoin bitcoin darkcoin bitcoin торговать coinmarketcap bitcoin monero miner gas ethereum habrahabr bitcoin rx580 monero bitcoin segwit2x bitcoin транзакции electrum bitcoin auto bitcoin plasma ethereum
логотип bitcoin tcc bitcoin
wiki bitcoin bitcoin anonymous bitcoin venezuela bitcoin кошелька monero майнить day bitcoin bitcoin security доходность ethereum cryptocurrency calendar
автомат bitcoin gek monero bitcoin buying фарм bitcoin
математика bitcoin bitcoin stellar bitcoin compromised
bitcoin get lottery bitcoin bitcoin доходность bitcoin лохотрон
spend bitcoin local bitcoin криптовалюту bitcoin ethereum install bitcoin 2016 bot bitcoin tether usd
bitcoin форекс bitcoin clicks майн bitcoin
bitcoin калькулятор майнинг bitcoin ethereum charts bitcoin оборудование nicehash bitcoin bitcoin api bitcoin проверка
bitcoin forbes таблица bitcoin перевод ethereum bitcoin оплатить drip bitcoin bitcoin frog bitcoin mine перспективы bitcoin bitcoin x2 bitcoin 4
monero 1070 claim bitcoin bonus bitcoin php bitcoin bitcoin пул moneybox bitcoin monero форк bitcoin cc bitcoin masternode api bitcoin
puzzle bitcoin kinolix bitcoin bitcoin video bitcoin world ферма ethereum bitcoin валюта airbit bitcoin игра bitcoin bitcoin landing форк bitcoin криптовалюты bitcoin exchanges bitcoin withdraw bitcoin youtube bitcoin
ethereum создатель ethereum blockchain poloniex bitcoin ethereum акции chaindata ethereum ethereum пул
map bitcoin bitcoin algorithm калькулятор ethereum ethereum контракт bitcoin сервисы bitcoin перспектива remix ethereum tor bitcoin bitcoin purse dogecoin bitcoin alien bitcoin bitcoin pro bitcoin doubler bitcoin обменники форекс bitcoin tether bootstrap ethereum bonus api bitcoin bitcoin stealer ethereum ico ethereum cgminer пулы monero simple bitcoin bitcoin course bitcoin ads sgminer monero bitcoin wallet
купить monero bitcoin bitcointalk асик ethereum
стратегия bitcoin telegram bitcoin bitcoin maps bitcoin анонимность ethereum упал ethereum stratum ethereum info
ethereum pool bitcoin xpub bitcoin tx ropsten ethereum bitcoin конвертер bitcoin stock monero криптовалюта bitcoin автомат bitcoin book bitcoin рейтинг криптовалют ethereum joker bitcoin
курс bitcoin bitcoin установка баланс bitcoin bitcoin daily bitcoin x bitcoin map верификация tether monero продать карты bitcoin
ethereum geth ethereum сайт bitcoin обозреватель live bitcoin armory bitcoin bot bitcoin bitcoin транзакции цена ethereum bitcoin registration bitcoin анимация boom bitcoin обновление ethereum
bitcoin wmx ethereum nicehash monero gpu tether майнинг bitcoin книга
количество bitcoin token bitcoin продам ethereum кошельки bitcoin
bitcoin example вирус bitcoin kurs bitcoin ann monero
cryptocurrency market часы bitcoin
bitcoin io
bitcoin переводчик bitcoin мониторинг