Не все, что franky1 верно говорит.
Он затронул некоторые темы, и в разумный пределах обзора, но у него есть свое личное понимание об ограничениях жестких вилок и мягких вилок и у него есть планы, которые он пытается подтолкнуть: пресекать мягкие вилки и поощрять жесткие вилки. Таким образом, он оставил важные детали, и он включен некоторые пропаганду в своем ответе.
В качестве примера, когда Фрэнки сделал ошибку ...
Softfork не "совместимый" в-с со старыми узлами, потому что старые узлы DonT продолжают проверять данные в softfork.
Softfork использует флаг, указывающий, что определенный тип транзакции не должен быть проверен. Вместо того, чтобы сделка вслепую передается любым узлом, который не работает новое программное обеспечение. Этот прием позволяет затем что-то случилось, просто используя флаг, который говорит старые узлы не проверить все данные, появляется после него.
Softforks абсолютно может быть полностью совместим со старыми узлами. Общее правило состоит в том, что мягкая вилка требует достаточно hashpower согласиться с изменением, что они могут преодолеть любые конкурирующие блоки, сгенерированных шахтерами, которые не согласны. Технически это требует только 51% мирового hashpower, но чаще срабатывает с гораздо большим процентом (чтобы сохранить изменения стабильным и предсказуемым поведением).
Вот теоретический пример разницы между мягкой вилкой и жесткой вилкой:
В настоящее время блок субсидия 12,5 BTC. Однако протокол не требует, чтобы шахтер или бассейн собрать полный 12,5 BTC, если они не хотят. Шахтер может просто собрать 10 новых BTC от решаемой блока, а вся сеть будет совершенно счастлив. Протокол только предотвращает шахтер собирать больше, чем сумма блочной субсидии плюс транзакционных сборов всех операций в блоке.
Таким образом, если мы хотим
увеличение блок субсидия от 12,5 BTC до 15 BTC ...
Это было бы ЖЕСТКИЙ FORK. Каждый узел на всей сети (как шахтеры, так и не-шахтеров) отвергнет эти блоки как недействительный. Если есть только один узел, и один горняк остался в рабочем состоянии старое программное обеспечение, то старые правила будут применяться на практике к тому 1 узла и 1 шахтер. Blockchain расколется и там будет 2 blockchains с 2-х новых типов блоков (те, с 12,5 BTC субсидии и те, с 15 BTC субсидий).
Обе цепи разделит общую историю, так как новое программное обеспечение будет по-прежнему принимать старую (предварительно вилку) блоки, которые имели меньше, чем 15 BTC субсидии. Так как шахтеры, работающих под управлением нового программного обеспечения имеют больше энергии, чем хеш-шахтера, который работает старое программное обеспечение, "новый тип блока" Цепь всегда будет больше. Это более длинная цепь означает, что даже при том, что 12,5 BTC блоки могут быть рассмотрены "действительный" по новым правилам, они будут сиротами, и игнорируются в пользу более длинной цепи. В то же время, так как шахтер работает старое программное обеспечение видит новые блоки от других шахтеров, как "инвалид", Они никогда не будут добавлять эти блоки в свою собственную сеть, независимо от того, как долго конкурирующей цепи становится. Длинная цепь недействительных блоков по-прежнему недействительна.
Единственный способ предотвратить беспорядок Эфира будет иметь такое подавляющее количество поддержки для новых правил, что несколько узлов и несколько шахтеров, которые отказываются перейти становятся бессмысленными и бессильными. У них есть свои собственные монеты, что остальной мир не волнует, и не будет принимать. Это подавляющее отсутствие интереса к "старый Bitcoin" приводит к полному краху его стоимости, и он становится одним из тех миллионов игнорируемых и бесполезных altcoins, в то время как "новый Bitcoin" становится монетку, что мир признает, как "реальный" Bitcoin.
С другой стороны, если мы хотим, чтобы уменьшить блок субсидию от 12,5 до 10 BTC BTC ...
Это было бы SOFT FORK. Все существующие узлы и шахтеры, работающие старое программное обеспечение будут просто увидеть его как решение вполне приемлемо (хотя глупо) платить себя меньше, чем максимум. В то же время узлы и шахтеры, работающие на новое программное обеспечение будет отказываться принимать любые блоки с дотацией больше, чем 10 BTC. Пока новое программное обеспечение имеет менее 51% хэш мощности, шахтеры, работающие старое программное обеспечение будет иметь возможность продолжать создавать блоки с 12,5 BTC и blockchain будет раскошелиться. Шахтеры, работающие новое программное обеспечение может игнорировать эти блоки, но так как они имеют меньше половины хеш мощности, в "старый тип блока" цепь будет достаточно долго для старых шахтеров по-прежнему признают его "действительный", После того, как новое программное обеспечение имеет более чем 51% хэш мощности их blockchain будет больше, чем blockchain созданного старым программным обеспечением. Так как новый blockchain создают блоки, ОБА новое и старое программное обеспечение признать "действительный" блоки, это уже цепь победит на обеих вилок и вся сеть будет располагаться в на этой цепочке. Даже если ни один из недобывающих узлов не обновление, а 49% хеш власти не обновляет. Все блоки, созданные шахтеров, работающих под управлением старого программного обеспечения будет в конечном итоге получить осиротел, и шахтеры с новым программным обеспечением (и 51% hashpower) будет эффективно применять новые правила по всей сети.
нет Как вы можете видеть, нет "флаг" и нет "операции" участие в этом. Это просто вопрос:
Если изменение правил консенсуса может быть сделано таким образом, что старое программное обеспечение не возражает, то это мягкая вилка и требует только 51% мирового hashpower для обеспечения, если вы хотите, чтобы предотвратить раскол цепь.
Если изменение правил консенсуса не является приемлемым для старого программного обеспечения, то это трудно вилка и требует подавляющего большинства экономики (узлы, торговцы, шахтеры и т.д.) для обеспечения, если вы хотите, чтобы предотвратить раскол цепь.