Хардфорк Bitcoin Cash и другие известные попытки улучшить биткоин и эфириум

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

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

Первым хардфорком биткоина Bitcoin Cash, впрочем, не был. Подобные прецеденты, в том числе и у нескольких других криптовалют, уже происходили. Наиболее значимые из них ForkLog предлагает вспомнить в этом обзоре.

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

Генезис-блок

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

Этот первый клиент вышел под версией 0.1.0, то есть Сатоши Накамото с самого начала предполагал, что ПО будет совершенствоваться и будут выходить новые релизы.

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

Основные характеристики оригинального ПО биткоина

Размер блока: 1 Мб
Алгоритм: Proof-of-Work (на основе Sha-256)
Скорость добычи блоков: 10 минут
Изменение сложности: каждые 2096 блоков (примерно 2 недели)
Количество транзакций в секунду: максимум 7 (в среднем 4,4).

Апгрейды

Биткоин прекрасен тем, что любой разработчик может внести BIP (Bitcoin Improvement Proposal), то есть предложение по улучшению биткоина. После этого команда наиболее популярного на сегодняшний день клиента Bitcoin Core (а это как минимум несколько десятков работающих независимо друг от друга специалистов) приступает к его изучению и рецензированию. Если предложение одобрено, соответствующий код может быть включен в следующий релиз, после чего майнеры и операторы сетевых нод (узлов) решают, хотят ли они сделать апгрейд до новой версии или нет.

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

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

Хардфорк Bitcoin Cash и другие известные попытки улучшить биткоин и эфириум

Хардфорк: ноды, на которых не было обновлено ПО, отвергают новые правила, в результате чего происходит разделение блокчейна на две цепи

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

Хардфорк Bitcoin Cash и другие известные попытки улучшить биткоин и эфириум

Софтфорк: блоки, не поддерживающие новые правила, отторгаются новой версией ПО

Bitcoin XT

Первый в истории биткоина хардфорк под названием Bitcoin XT был представлен в декабре 2014 Майком Херном и был нацелен на увеличение пропускной способности до 24 транзакций в секунду. С этой целью предлагалось увеличить размер блока до 8 Мб.

На первоначальном этапе Bitcoin XT получил поддержку части сообщества, и к концу лета насчитывалось более 1000 нод с имплементацией этого клиента. Этому во многом способствовало включение в клиент BIP 101, который несколько ранее разработал Гэвин Андресен. Это предложение предусматривало агрессивное увеличение размера блока – с 1Мб до 8 Мб с начала 2016 года с последующим удвоением каждые два года.

В планах разработчиков было получить поддержку 75% майнеров, однако реализовать эти намерения они не смогли. Уже через несколько месяцев проект потерял прежнюю поддержку и оказался фактически мертв. В феврале 2016 года Андресен отозвал BIP 101, число нод Bitcoin XT к тому времени также начало заметно снижаться. Технически в сети биткоина Bitcoin XT доступен и сегодня, однако, как показывают данные Coindance, клиент имплементирован всего одной нодой. В то же время клиент с тем же названием присутствует в сети Bitcoin Cash, где его имплементировали около 1% нод.

Хардфорк Bitcoin Cash и другие известные попытки улучшить биткоин и эфириум

Bitcoin Classic

Несмотря на спад интереса к Bitcoin XT, часть сообщества по-прежнему считала, что лучшим способом масштабирования биткоина будет увеличение размера блока. В качестве альтернативного решения в начале 2016 года все тот же Гэвин Андресен предложил Bitcoin Classic, главное отличие которого от XT заключалось в увеличении размера блока до 2Мб.

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

Тем не менее Bitcoin Classic также ждало забвение — через три месяца после того, как от сети биткоина откололся Bitcoin Cash, проект был закрыт. Одновременно с этим работавшие над этим клиентом разработчики заявили, что цели, которые он изначально преследовал, осуществимы именно при помощи Bitcoin Cash.

Bitcoin Unlimited

Проект Bitcoin Unlimited впервые громко заявил о своем существовании в октябре 2016 года, выделив гранты в размере нескольких сотен тысяч долларов на финансирование исследований, результатом которых должно стать «восстановление сети биткоина в том виде, в каком ее представлял Сатоши Накамото». Также разработчики заявили, что будут добиваться увеличения пропускной способности за счет изменений в консенсусе.

Название проекта говорит само за себя: майнерам было предложено самим определять размер добываемых блоков в пределах 16 Мб. Несмотря на проблемы, выявленные на ранних этапах существования проекта, уже в марте 2017 свой первый блок Bitcoin Unlimited добыл поддерживаемый Bitmain пул Antpool. Также достаточно быстро стало понятно, что этот хардфорк поддерживают те же лица, которые впоследствии организовали проект Bitcoin Cash.

Bitcoin Unlimited был, наверное, ближе других, чтобы действительно оформиться в отдельную цепь, но в итоге реализовал себя в сети Bitcoin Cash, где по состоянию на 13 ноября на его долю приходилось почти 35% всех нод. Вплоть до сегодняшнего дня это делало его вторым по величине клиентом проекта.

Хардфорк Bitcoin Cash и другие известные попытки улучшить биткоин и эфириум

Bitcoin Cash

Хардфорк Bitcoin Cash появился в ответ на софтфорк Segregated Witness (SegWit), когда часть влиятельных игроков индустрии заявила, что ее не устраивает ни дальнейший путь биткоина в имплементации Bitcoin Core, ни попытки увеличить размер блока до 2Мб посредством SegWit2x. Его активация состоялась 1 августа 2017 года — с этого дня созданные для новой сети кошельки стали отвергать транзакции и блоки первой криптовалюты.

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

Важно отметить, майский апгрейд сети был полностью запланированным — в его преддверии майнеры и полные ноды обновили свои клиенты до необходимых версий. Однако выход новой версии клиента Bitcoin ABC (v. 0.18.0) в августе был принят не всеми сторонниками Bitcoin Cash, после чего и появились первые разговоры о возможном расколе сети.

Именно тогда «самопровозглашенный Сатоши Накамото» Крейг Райт объединился с предпринимателем и создателем новостного ресурса о криптовалютах и пула CoinGeek Келвином Эйром, предложив свою версию Bitcoin Cash под названием Bitcoin SV с увеличением размера блока до 128 Мб. Более того, как настаивают сторонники Bitcoin SV, будущие апгрейды клиента сделают его по своим характеристикам максимально близким к тому самому оригинальному протоколу биткоина под версией 0.1.0.

Bitcoin Gold

В ноябре 2017 года состоялся запуск Bitcoin Gold — еще одного хардфорка биткоина, разработчики которого решили выделиться в отдельный проект. Заявленной целью Bitcoin Gold стало создание по-настоящему «децентрализованного биткоина», в то время как использование алгоритма Equihash было призвано сделать более простой добычу монет с помощью графических карт. Размер блока был сохранен на уровне 1 Мб, однако 100 тыс монет, сгененированных сразу после форка, были направлены в специальный фонд и на оплату труда разработчиков.

Несмотря на то что проект, можно сказать, состоялся, и сегодня эта криптовалюта занимает 20-е место по капитализации, не все складывалось гладко. Так, в мае 2018 года Bitcoin Gold подвергся атаке 51%, из-за чего разработчики были вынуждены провести уже собственный внутрисетевой хардфорк. В его результате был активирован модифицированный алгоритм Equihash-BTG, не поддерживающийся классическими ASIC-майнерами. Еще одним неприятным последствием майской атаки стало снятие BTG с торгов на бирже Bittrex.

Другие известные хардфорки

Среди других известных форков в более широкой экосистеме криптовалют следует в первую очередь назвать состоявший летом 2016 года хардфорк Ethereum. Тогда, решив спасти средства инвесторов фонда The DAO, разработчики Ethereum приняли решение о проведении хадфорка. Понимания такой шаг нашел не у всех, и как следствие появился проект Ethereum Classic, оставшийся в оригинальной цепи, в то время как Ethereum фактически стал новой цепью.

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

В качестве примера можно привести несколько других хардфорков в сети Ethereum, а также планы разработчиков по дальнейшему улучшению сети. Также собственный хардфорк был проведен в сети Ethereum Classic. Другие известные примеры включают в себя активацию протоколов Bulletproofs в Monero и Sapling в Zcash.

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

Andrew Asmakov

Подписывайтесь на канал Forklog в YouTube!

Нашли ошибку в тексте? Выделите ее и нажмите CTRL+ENTER

forklog.com

Добавить комментарий

Ваш e-mail не будет опубликован.

восемнадцать − шесть =