В то время как биткойн остается самой крупной и наиболее известной криптовалютой на данный момент, он не без своей доли проблем. Среди наиболее проблемных проблем, с которыми сталкивается самая большая криптовалюта по рыночной капитализации, является масштабируемость. Поскольку блоки в блокчейне биткойнов ограничены размером в 1 мегабайт, количество транзакций, которые может обработать сеть, ограничено.
Поскольку криптовалюты в более широком смысле и, в частности, биткойн, становятся все более популярными, этот эффект узкого места поставил под угрозу успех виртуальной валюты. Это могло способствовать увеличению комиссии за транзакции и времени ожидания для обработки.
Разработчики и энтузиасты криптовалюта работали, чтобы решить эту проблему, но споры о том, как добиться эффективного масштабирования сети было трудным и спорным один. В последние годы было предложено несколько обновлений программного обеспечения, предназначенных для обновления предельного размера блока и улучшения общей обработки транзакций. SegWit2x был одним из предложенных обновлений.
Твердые и мягкие вилки
Чтобы понять SegWit2x, сначала необходимо изучить различие между жесткими и мягкими форками, поскольку они связаны с блокчейном. Хард-форк относится к пересмотру правил, управляющих блокчейном. Это серьезное изменение в дизайне, так что новые блоки не считаются действительными старым сетевым программным обеспечением.
Результатом хард-форка является то, что затронутая цепочка блоков постоянно распадается на две части. Жесткие вилки могут даже разделить сеть на две части, если они не полностью приняты; если есть достаточное участие среди пользователей, предлагаемый хард-форк может все еще разделить цепочку блоков. Это был тот случай, когда эфириум раскололся в результате взлома DAO. (См. Подробнее: почему DAO Ethereum является революционным.)
Мягкие вилки, с другой стороны, влекут за собой изменение сетевых правил, которое создает блоки, которые распознаются предыдущим программным обеспечением. В этом смысле они обратно совместимы.
SegWit в качестве фона для SegWit2x
До того, как появилось предложение SegWit2x, существовал Segregated Witness (SegWit). Это был предложенный программный форк, целью которого было решение проблемы масштабируемости биткойнов. Это было предложено в конце 2015 года разработчиком по имени Питер Уилль.
Механизм Segregated Witness был разработан, чтобы позволить отделять данные подписи от различных других частей данных транзакции, в результате чего данные будут по-разному храниться в блоках. Целью SegWit было увеличение общей пропускной способности транзакции с помощью механизма программной вилки, который не вызвал бы разделения.
За время, прошедшее с момента предложения SegWit, были и другие дискуссии и разветвления сети биткойнов. Например, хард-форк, который состоялся в августе 2017 года, вызвал создание биткойн-денег. В результате этого хард-форка размер блока был увеличен в 8 раз без использования протокола SegWit. В конечном итоге SegWit был активирован 24 августа 2017 года, хотя многие транзакции с биткойн-сетями за это время не использовали обновление.
SegWit2x как предложение Hard Fork
Принимая во внимание, что SegWit был предложением мягкого форка, SegWit2x был предложением жесткого форка. В то время, когда SegWit был представлен в сети в августе 2017 года, он был фактически только первым из двухэтапного процесса, известного специалистам и разработчикам по масштабируемости как «Нью-Йоркское соглашение».
Второй этап - это так называемый протокол SegWit2x, который увеличит размер блока с 1 мегабайта до 2 мегабайт. Увеличив размер блока, сторонники SegWit2x надеялись, что они смогут смягчить увеличение платы, в результате чего пользователи платят майнерам за транзакции. С другой стороны, увеличение размера блока также увеличило бы нагрузку на операторов узлов, которые затем должны были бы хранить больше данных.
Процесс внедрения SegWit2x привел бы к изменению правил, регулирующих биткойн. Тем не менее, он отличался от вилок, которые привели к биткойн-наличности и биткойн-золоту. В этих случаях пользователи ожидали, что на сами транзакции это не сильно повлияет; скорее, те пользователи, которые уже держали биткойны, просто получали новую криптовалюту во время разветвления, при этом две сети продолжали расходиться.
Как и эти более ранние форки, SegWit2x был альтернативным программным протоколом, который привел бы к хард-форку и попытке увеличить размер блока. В отличие от более ранних форков, SegWit2x стремился удержать всех существующих пользователей биткойнов в одной блокчейне.
В отличие от биткойн-наличности - где разработчики надеялись создать новый блокчейн и сеть целиком - сторонники SegWit2x не были полностью уверены в конечном результате. Это могло означать изменение в правилах, регулирующих биткойны, создание двух отдельных биткойнов или очень незначительные изменения, в зависимости от того, сколько майнеров решили принять новое программное обеспечение.
Причины за и против
В преддверии принятия SegWit2x майнеры и стартапы, как правило, были самыми активными сторонниками нового протокола. Они часто утверждали, что бездействие Биткойна приводило к тому, что конкурирующие криптовалюты обгоняли ведущую цифровую валюту, и что существующих обновлений было недостаточно для смягчения проблемы.
Разработчики и операторы узлов, с другой стороны, часто выступали против принятия. Они предположили, что биткойн должен быть средством сохранения стоимости, а не платежной системой, и что рискованность нового протокола перевешивает потенциальные выгоды. Некоторые также считали, что майнеры и предприятия получат непропорционально большую пользу от протокола.
SegWit2x был весьма спорным, отчасти из-за его статуса «хард-форка», и разработчики не смогли прийти к консенсусу по поводу принятия протокола. Хард-форк изначально планировалось на 16 ноября 2017 года. Однако 8 ноября 2017 года лидеры движения SegWit2x приостановили хард-форк в результате продолжающихся боев и отсутствия более широкого консенсуса среди участников.
В конце 2017 года был анонсирован еще один предложенный хард-форк под названием SegWit2x, хотя, похоже, он не имеет никакого отношения к более раннему SegWit2x, за исключением названия.
