SoftFork Софтфорк
Что такое софт-форк?
В технологии блокчейн софт-форк - это изменение программного протокола, при котором недействительными становятся только ранее действительные блоки транзакций. Поскольку старые узлы будут распознавать новые блоки как действительные, софт-форк имеет обратную совместимость. Этот вид форка требует обновления только большинства майнеров для обеспечения соблюдения новых правил, в отличие от хард-форка, который требует, чтобы все узлы обновились и согласились с новой версией.
Понимание использования софт-форков
Новые типы транзакций часто могут быть добавлены в виде софт-форков, требуя только того, чтобы участники (например, отправитель и получатель) и майнеры понимали новый тип транзакции. Это достигается за счет того, что новая транзакция будет отображаться для старых клиентов как транзакция с оплатой всем (специальной формы) и получить согласие майнеров на отклонение блоков, включая эти транзакции, если транзакция не будет подтверждена в соответствии с новыми правилами. Вот как хеш Pay-to-Script (P2SH) был добавлен в биткойн
Софт-форк также может иногда происходить из-за временного расхождения в цепочке блоков, когда майнеры, использующие не обновленные узлы, нарушают новое правило консенсуса, о котором их узлы не знают.
Софт-форки не требуют обновления каких-либо узлов для поддержания консенсуса, поскольку все блоки с новыми правилами мягкого форка также следуют старым правилам, поэтому старые клиенты принимают их. Софт-форк не может быть отменен без хард-форка, поскольку софт-форк по определению позволяет только набору допустимых блоков быть правильным подмножеством того, что было действительным пре-форком. Если пользователи обновятся до клиента после софт-форка и по какой-то причине большинство майнеров вернутся к клиенту до софт-форка, пользователи клиента после софт-форка нарушат консенсус, как только появится блок, который не последовал новые правила своих клиентов. Для того, чтобы софт-форк работал, на большей части майнинговых мощностей должен быть запущен клиент, распознающий форк. Чем больше майнеров принимает новые правила, тем более безопасна сеть после форка. Если у вас есть 3/4 майнеров, распознающих форк, 1/4 созданных блоков не будет гарантированно соответствовать новым правилам. Эти 25% блоков будут действительны для старых узлов, которые не знают о новых правилах, но они будут игнорироваться новыми узлами.
Софт-форки использовались в блокчейнах биткойнов и эфириума, среди прочего, для реализации новых и обновленных функций, которые имеют обратную совместимость.