Софт-форк и хард-форк:объяснение различий

Криптовалюты, такие как Биткойн ( BTC) и Ethereum (ETH) работают на децентрализованном программном обеспечении с открытым исходным кодом, называемом блокчейн. Форк - это изменение протокола, лежащего в основе блокчейна. Форк блокчейна является важным обновлением сети и может представлять собой радикальное или незначительное изменение и может быть инициирован разработчиками или членами сообщества.

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

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

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

Что такое хард-форки

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

Хард-форк - это, по сути, постоянное отклонение от последней версии блокчейна, приводящее к разделению блокчейна, поскольку некоторые узлы больше не достигают консенсуса, и две разные версии сети работают отдельно.

/ P>

По сути, это означает, что в блокчейне создается вилка, в которой один путь следует текущему набору правил, а второй путь следует новому набору правил. Хард-форк не имеет обратной совместимости, поэтому старая версия больше не видит новую как действительную.

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

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

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

Почему случаются хард-форки?

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

  • Добавить функциональность
  • Устранение угроз безопасности
  • Разрешение разногласий в сообществе криптовалюты.
  • Обратные транзакции в цепочке блоков

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

Случайный хард-форк

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

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

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

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

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

Разница между хард-форками и софт-форками

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

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

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

Известные примеры хард-форка

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

SegWit2x и Bitcoin Cash

SegWit2x был предложенным обновлением, предназначенным для масштабирования Биткойн. Он был настроен на реализацию Segregated Witness (SegWit) и увеличение предельного размера блока с одного МБ до двух МБ в сети криптовалюты.

Решение о внедрении SegWit2x было принято в спорном Нью-Йоркском соглашении, достигнутом 23 мая 2017 года. Согласно соглашению, ряд владельцев биткойн-бизнеса и майнеров, представляющих более 85% хешрейта сети, решили, что будущее BTC за закрытыми дверями.

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

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

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

Пользователи Биткойна в то время вели кампанию за активированный пользователем софт-форк в ответ на закрытое собрание, диктующее будущее Биткойна и предотвращение создания прецедента. Они призвали к реализации предложения по улучшению биткойнов (BIP) 148, в котором была предпринята попытка внедрить SegWit в сети биткойнов, и утверждали, что SegWit2x был спорным хард-форком, который сделал сеть уязвимой для повторной атаки. Он был выпущен в марте 2017 года и должен был быть реализован 1 августа 2017 года.

Опасаясь того, что план SegWit2x не будет выполнен, и увидев, что сообщество поддерживает SegWit, некоторые сторонники большого блока 1 августа 2017 года решили форкнуть блокчейн Биткойн. Результатом стало создание Bitcoin Cash ( BCH). Его сторонники не рассматривали раскол как создание конкурирующей сети, а скорее как продолжение первоначального видения Сатоши Накамото.

Блокчейн Bitcoin Cash был создан с размером блока 8 МБ, который с тех пор увеличился до 32 МБ. По сей день сторонники Bitcoin Cash утверждают, что его низкие комиссии за транзакции помогут ему масштабировать и банкировать небанковских клиентов, полагая, что BTC останется позади из-за более высоких комиссий за транзакции.

Хард-форк Bitcoin Cash показал, что возможность хард-форка оказалась в центре внимания, и вскоре после этого было создано множество других биткойн-форков. К ним относятся Bitcoin Gold (BTG), Bitcoin Diamond (BTCD) и другие.

Взлом DAO

Другой важный исторический хард-форк был связан с децентрализованной автономной организацией (DAO), которая была запущена в 2016 году в сети Ethereum. Ethereum запускает набор смарт-контрактов, которые, по сути, представляют собой фрагменты кода, которые автоматически выполняются при выполнении набора критериев. Эти контракты делают деньги программируемыми и лежат в основе децентрализованных финансовых приложений (DApps).

В то время DAO привлекла ETH на сумму 150 миллионов долларов в рамках одного из самых ранних краудфандинговых проектов в сфере криптовалют, еще до массового предложения монет (ICO) в 2017 году. По сути, это была ранняя итерация модели децентрализованного управления, которые используют протоколы DeFi, в которых держатели токенов голосуют за будущее протокола.

После запуска DAO был взломан на 60 миллионов долларов ETH от 11 000 инвесторов. В то время Ethereum торговался ниже 10 долларов, поэтому около 14% всего циркулирующего эфира было инвестировано в DAO, и взлом стал серьезным ударом по доверию к сети.

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

Злоумышленник или кто-то, выдающий себя за них, ответил сообществу, утверждая, что средства были получены «законным» способом и в соответствии с правилами смарт-контракта. Они заявили, что готовы подать в суд на любого, кто пытался завладеть денежными средствами. Напряженность усилилась, поскольку злоумышленник заявил, что будет пресекать попытки софт-форка, подкупив майнеров ETH деньгами.

Споры снова продолжались, пока не был предложен хард-форк. В конечном итоге был реализован хард-форк, и он откатил историю сети Ethereum до того, как произошла атака DAO, перераспределив украденные средства в смарт-контракт, по которому инвесторы могли вывести свои средства.

Этот шаг был чрезвычайно спорным и, по мнению некоторых, повлиял на устойчивость и неизменность блокчейна к цензуре:в их глазах инвесторы были спасены. Те, кто смотрел на вещи таким образом, отвергли хард-форк и поддержали более раннюю версию сети, теперь известную как Ethereum Classic (ETC).

Войны за хешрейт:ABC против SV

Bitcoin Cash был создан посредством хард-форка блокчейна Биткойн в августе 2017 года, а позже разделился на две сети, когда группы внутри его сообщества враждовали. С одной стороны, была Bitcoin Cash ABC (BCHA), команда разработчиков, пытающаяся улучшить лежащую в ее основе технологию. С другой стороны, была команда Bitcoin Cash SV (BSV), поддерживаемая самопровозглашенным «Сатоши Накамото» Крейгом Райтом, которая пыталась увеличить размер блока с 32 МБ до 128 МБ.

В блоке 556 767 блокчейн разделился на две части, и началась битва за тикерный символ BCH. Майнеры с обеих сторон использовали все ресурсы, которые могли, чтобы иметь преимущество в скорости хеширования над другими. Многие призывали к атаке 51% на другую сеть, чтобы реорганизовать ее блоки, чтобы ее сторонники были вынуждены перейти на их сторону.

Криптовалютные биржи и другие предприятия показали, что они будут связывать тикер BCH с блокчейном, который оказался на первом месте. Некоторые пулы для майнинга перенаправили все свои ресурсы на хэш-войны, при этом Bitcoin Cash ABC в конечном итоге имеет большую часть скорости хеширования и отражает любые попытки атаки 51%. Позже она потребовала тикер BCH на биржах и других сервисах, а другая сеть выбрала BSV в качестве тикера.


Блокчейн
  1. Блокчейн
  2. Биткойн
  3. Ethereum
  4. Обмен цифровой валюты
  5. Добыча полезных ископаемых