Софтфорк и хардфорк. В чем отличия?

 

Что такое форк?

Софтфорк (soft fork).

Для чего проводится софтфорк.

Виды софтфорка. Активированный пользователем софтфорк (UASF).

Примеры софтфорков.

Плюсы и минусы софтфорков.

Xардфорк (hard fork).

Для чего нужен хардфорк.

Проведение хардфорка.

Плюсы и минусы хардфорков.


Что такое форк?


Форк (англ. fork — развилка, вилка) — это модификация (изменение) исходного кода, в результате которой происходит разделение блокчейна на две ветви, в результате которого участникам сети приходится решать, какую ветвь предпочитать.

Форк проводиться целенаправленно. Например, разработчики могут поменять правила, определяющие действительность транзакции. Когда блок содержит недействительные транзакции, он игнорируется сетью, и участник сети, сгенерировавший его, теряет вознаграждение. Некоторые ветвления проходят относительно гладко, другие, связанные с серьезными противоречиями в сообществе, приводят к тому, что сеть раскалывается надвое. В результате возникают два блокчейна — и две отдельные криптовалюты.

Таким образом существует два вида форка софтфорк (soft fork) и хардфорк (hard fork) .

 

Софтфорк (soft fork).


Soft fork менее радикальный и заключается в уточнении правил. После его введения обновленные узлы обрабатывают блоки сформированные как по новым так и по старым правилам, а необновленные узлы - только сформированные по старым правилам .

Софтфорк — это внесение изменений в программный код криптовалютной системы, при котором не происходит разделение блокчейна на 2 ветви. Данный вид форка проводится в целях улучшения функциональных качеств платёжной системы. Новые криптовалюты в таком случае не появляются. Сеть просто проходит процедуру модернизации. Софтфорк не подразумевает внедрения глобальных изменений в работу системы.


Для чего проводится софтфорк.


Основной целью любого софтфорка является улучшение существующей сети. Модернизация касается следующих составляющих:

  • Увеличение проходимости сети (ускорение переводов между пользователями). Например, путем увеличением размера блока, чтобы в один элемент сети помещалось большее колличество транзакций. Это в целом повышает привлекательность платёжной системы.
  • Внедрение новых протоколов защиты для более надежной защиты от взлома криптовалютных кошельков и различных хакерских атак.
  • Повышение анонимности в сети. Достигается путем изменения формата публичных адресов. При этом старые и новые адреса могут получать монеты друг от друга без затруднений.
  • Внесение изменений в правила выставления комиссии. Например, установить фиксированный сбор, не зависящего от суммы перевода. Сеть становится более прибыльной для рядовых пользователей, но снижается привлекательность для майнеров.
  • Изменение алгоритма майнинга. Нужно с осторожностью относиться к данному параметру, так как это может привести к хардфорку (создению новой криптовалюты).

Чтобы начать пользоваться внедрёнными решениями после проведения софт форков пользователям нужно обновить программное обеспечение . Однако такой переход происходит на добровольной основе. Если человека не устраивают нововведения, он продолжает использовать сеть, функционирующую по старым правилам. Как мы уже говорили выше, после софтфорков старые и новые алгоритмы сосуществуют в одном блокчейне, поэтому принимать новшества в ультимативной форме не нужно.

 

Виды софтфорка. Активированный пользователем софтфорк (UASF).


В криптовалютных сетях периодически проводится широко распространенный классический софтфорк. Инициаторами такого софтворка выступают разработчики платформы, а также майнинг-пулы, концентрирующие у себя большую часть вычислительных мощностей.

Недавно в криптовалютном мире появилось новое понятие — активированный пользователем софтфорк (UASF), предусматривающий обновление блокчейна, без участия узлов с основной вычислительной мощностью сети. Инициаторами таких изменений являются биржи, компании или даже отдельные пользователи, имеющие статус полного узла.

АПС проходит следующие этапы внедрения:

  1. Поддержка изменений большинством крупных бирж.

  2. Редактирование кода (алгоритмов) криптовалюты , затрагивающего основы функционирования системы.

  3. Установка обновленного ПО полными узлами,участвующими в софтворке.

На приготовления к АПС может уйти год или более. Нужно договориться с биржами, объединить усилия мастернодов, написать рабочий код с новыми алгоритмами. Кроме того, если большинству майнеров не понравятся нововведения, они могут жестко разделить сеть, воспользовавшись подавляющей вычислительной мощностью. Пока эта спорная идея с АПС остается лишь в теории и ни разу не была реализована на практике.

 

Примеры софтфорков.

 

  • Летом 2018 года Bitcoin Gold перешёл на алгоритм Equihash 144,5. Майнинг BTG на асиках стал невозможен и пользователи стали применять обычные видеокарты. Таким образом, Bitcoin Gold стал более привлекательным для майнеров в плане сроков окупаемости оборудования (а также изначальных затрат).
  • Внедрение протокола SegWit , который повысил пропускную способность транзакций, при этом сохранив совместимость новой сети со старыми версиями ПО. Его приняли такие популярные криптовалютные сети, как Биткоин и Лайткоин.
  • Появление эмблемы технологии SegWit на фоне монеты Биткоина.
  • Обновление BIP 66 — софтфорк Биткоина, изменивший правила проверки подписей при совершении переводов.
  • Обновление P2SH — «мягкое» разветвление блокчейна Биткоин, изменившее формат адресов.

 

Плюсы и минусы софтфорков.


Процесс обновления блокчейна может иметь как позитивные, так и негативные последствия.

Положительные качества софтфорка:

  • Софтфорк способствует улучшению функциональных качеств конкретной блокчейн-сети (популярности площадки).
  • Улучшения в криптовалютных системах стимулируют конкуренцию на рынке.
  • Новые алгоритмы продолжают взаимодействовать со старыми правилами, что даёт пользователям право выбора. Переходить или не переходить на новое ПО, решать самим людям.
  • Систематические улучшения криптовалютных сетей позволяют расширить сферу их применения, способствуют развитию проектов на базе блокчейна.
  • Внедренные изменения можно отменять, если они не приживаются или приводят к проблемам в работе системы.
  • Устраняются недостатки и ошибки в работе платёжной системы. 

Не все участники платформы могут принять изменения, что чревато «жесткой развилкой».

 

Xардфорк (hard fork).


Противоположностью софт форка является хардфорк («жесткая развилка»). Во время данной процедуры в исходный код криптовалютной сети вносятся глобальные изменения, которые кардинально меняют принципы функционирования системы. В итоге одни узлы остаются верными старым правилам, другие принимают новые условия работы. Когда большинство пользователей принимают хардфорк, операция считается успешной. Блоки, которые были найдены по старому алгоритму, уже не принимаются новым протоколом и отбрасываются как неправильные.

Результат хардфорка может стать раскол системы на две параллельные. Существование продолжают оба сегмента блокчейна, соответственно появляются две криптовалюты, каждая со своим блокчейном. Подобные ситуации уже неоднократно возникали с некоторыми цифровыми валютами. Примерами хардфорка выступают такие коины, как Bitcoin Cash, Bitcoin Gold, Ethereum Classic.

Обычно все пользователи, у которых на момент разделения на кошельках хранилось какое-то количество монет, получают точно такое же их количество в обоих криптовалютах. Примером этого является самый известный хардфорк Биткоина – Биткоин Кэш, все те, у кого на кошельке хранились биткоины, получили после хардфорка такое же количество биткоин кэш.

 

Для чего нужен хардфорк.


Причин для проведения «жесткой развилки» может быть много. Они связаны с проявлением недостатков системы, снижающими быстродействие.

При проведении хардфорка, как правило, затрагиваются следующие моменты:

  • Максимальная эмиссия криптовалюты. В первую очередь это касается монет с ограниченным выпуском. Так, у Биткоина установлен лимит в 21 млн. монет, у Лайткоина — 84 млн. Это фундаментальный параметр, который нельзя менять. У криптовалют, которые изначально имеют неограниченную эмиссию, ситуация несколько иная. Данные системы могут проводить софт форки, выставляющие ограничения на выпуск. Например, в конце 2017 года на Ethereum Classic был установлен лимит в 230 млн. коинов.
  • Время добычи блоков. Ещё один ключевой параметр, регулирующий темпы эмиссии. Изменение данного интервала, зачастую, может происходить только при хардфорках.
  • Награда за блок и динамика её изменения. Этот момент, опять-таки, больше касается коинов с ограниченной эмиссией. Алгоритм выдачи вознаграждения и его изменения прописываются изначально. Внесение изменений с огромной вероятностью приведёт к «жесткой развилке».


Проведение хардфорка.

 

Инициировать Hard Fork может кто угодно. В том числе, авторы криптовалюты, добытчики монет или просто активные пользователи. Инициатор модификации системы собирает сторонников и убеждает криптовалютное сообщество в необходимости хардфорка.

Если разница во взглядах на будущее платформы станет критичным, это приведет к расколу. Подобные случаи были.

Разработчиками хардфорка иногда популярные в мире криптовалют люди. Но авторами нововведений становятся и анонимные программисты. Яркий пример — хардфорк, в результате которого появились новые цифровые деньги — Bitcoin Diamond.

Проблемы возникают, когда мнения в сообществе разделяются, и часть решает придерживаться старых правил. Скорость хеширования или вычислительная мощность старой сети не имеют значения. Важно то, что ее данные и набор правил по-прежнему считаются ценными, именно поэтому некоторые майнеры продолжают ее обслуживать, а разработчики — поддерживать. Хардфорк DAO в сети Ethereum служит примером раскола криптосообщества из-за правил. В настоящее время существуют два блокчейна, работающие на своих версиях ПО.


Плюсы и минусы хардфорков.


Проведение хардфорков оказывает на развитие криптовалютных систем положительное или негативное влияние.

К плюсам хардфорков можно отнести:

  • Качественно реализованные хардфорки устраняют имеющиеся дефекты в работе платформы, снижающие скорость работы.
  • Шанс для пользователей повысить капитал. Юзеры в дополнение к токенам получают дополнительные монеты из появившегося ответвления сети.
  • Как правило, хардфорк направлен на значительное улучшение характеристик криптовалюты (скорости обработки транзакций и, соответственно, снижении комиссии, устранение ранее обнаруженных критических уязвимостей в коде, улучшение защиты криптовалюты и др.).

Минусы хардфорков:

  • Во время «жесткой развилки» никто не знает, как нововведения повлияют на качество функционирования системы, и какая из двух веток станет основной.
  • Подобные операции часто становятся причиной раскола в сообществе криптовалюты.
  • Необратимые изменения в блокчейне, после хардфорка назад откатиться невозможно, можно только выбрать поддержку старой сети, потеряв все возможные достоинства новой.
  • Внедрение хардфорков повышает показатель волатильности цифровых денег. Это может привести к потере инвестиций со стороны участников сети.