Главная - Криптовалюты - SegWit – решение проблемы масштабируемости Bitcoin

SegWit – решение проблемы масштабируемости Bitcoin

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

Принцип работы транзакций и проблемы Биткоина

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

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

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

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

Комиссии за транзакции могут быть довольно дорогими. В 2017 году пользователи платили 20 $, чтобы они подтверждались в течение 10-20 минут. Проблема масштабируемости Биткоина вышла на первый план. Никто не захочет платить 20 $ за пятидесятидолларовый перевод или чашку кофе. Говорить о массовом внедрении Биткоина в таком случае не приходится.

Справка! На базовом уровне Биткоин способен обрабатывать только 7-10 транзакций в секунду. Базовая технология Сатоши хоть и является революционной, но она имеет ряд проблем. Тем не менее, разработчики активно работают над их решением. Соединение технологий SegWit и Lightning Network значительно повысит пропускную способность сети Биткоин.

Решение

В 2015 году на конференции Scaling Bitcoin доктор Pieter Wuille предложил технологию для решения проблемы масштабируемости под названием SegWit. Понимая, что информация транзакции и цифровая подпись объединяются для формирования данных, Wuille предложил уменьшить объем данных, которые принимают участие в платежах. Для этого нужно вынести цифровую подпись за пределы транзакции в отдельную структуру.

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

Форк Bitcoin Cash

С предложением доктора Wuille согласились не все участники сообщества. Часть команды пошла другим путем, в результате чего состоялся форк Bitcoin Cash, который активно поддерживается Роджером Вером.

Размер блока Bitcoin Cash составляет 8 МБ, что позволяет обрабатывать максимум 61 TPS. Это значительное улучшение по сравнению с Биткоином, но оно не решает проблему полностью. Visa и Mastercard обрабатывают тысячи транзакций в секунду, в перспективе этот показатель может увеличиться на 65 000 TPS. На этом фоне показатели Bitcoin Cash – капля в море. Таким образом, увеличение размера блока не является единственным решением проблемы.

К тому же увеличение блока снижает безопасность и увеличивает общий вес сети.

Справка! В августе 2017 года, когда SegWit был развернут как программный форк на блокчейне Биткоин, часть сообщества отделилась от сети и создала собственный форк Bitcoin Cash. 

Проблемы, которые решает SegWit

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

SegWit совершенствует процесс транзакций, создавая условия для увеличения размера блока. Вот основные проблемы, которые позволяет решить обновление:

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

Таким образом, SegWit улучшает многие аспекты в сети Биткоин, в частности улучшает взаимодействие с новыми протоколами, улучшает масштабируемость и уровень защиты.

Основные преимущества технологии

Внедрение SegWit в Биткоин имеет ряд преимуществ:

  • Третьи стороны не смогут вносить какие-либо изменения в подписи транзакций, что упрощает разработку новых смарт-контрактов, подобных тем, которые используются в Lightning Network.
  • Размер транзакции уменьшается, но количество данных, передаваемых в процессе ее осуществления, не меняется. Это возможно за счет перемещения цифровых подписей. Блоки сегвит имеют размер 1.7-2 МБ. Такое решение значительно ускоряет пропускную способность сети.
  • Упрощается имплементация софт-форков и повышается безопасность системы. Подписи ECDSA будут заменены более надежным форматом Schnorr.
  • Функция sighash переформатируется с экспоненциальной в линейную. Это положительно отразится не только на безопасности транзакций, но и на скорости подтверждения блоков. Упростится взаимодействие с аппаратными кошельками, что откроет новые возможности для разработчиков данного сегмента.
  • Переводы в сети могут осуществлять и участники сегвит, и те, кто остался за пределами технологии. Разница будет только в комиссиях. Участники SegWit будут платить меньше.

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

Главные недостатки SegWit

Технология SegWit до сих пор не интегрирована в Биткоин в полной мере. Многие аналитики считают, что на это уйдут годы, поскольку количество нод в сети превышает 10 000.

Критики склоняются к мнению, что разработчики не смогут интегрировать в блокчейн все запланированные улучшения. Постепенное увеличение участников сети приведет к тому, что 2МБ размера блока будет недостаточно для удовлетворения потребностей экосистемы.

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

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

Некоторые разработчики заверяют, что внедрение SegWit обусловлено исключительно финансовой заинтересованностью компании Blockstream. По техническим причинам Lightning Network невозможно внедрить без SegWit, поэтому разработчики так активно агитировали за обновление.

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

Таким образом, недостатки SegWit заключаются в следующем:

  • Протокол может негативно отразиться на безопасности сети. Поскольку проверку валидности транзакций смогут осуществлять только ноды, принявшие SegWit, количество проверяющих резко сократится.
  • Протокол SegWit нельзя отменить. При его откате или отмене segwit-выходы станут общедоступными.
  • SegWit – это софтфорк, поэтому обновятся не все клиенты. Это значит, что в сети одновременно будут находиться 2 группы UTXO. Важные изменения сети не смогут применяться не к сегвитовским выходам. Таким образом, риск атак, основанных на неизменяемых id транзакциях, не только сохраняется, но и увеличивается.
  • Протокол пытается решить все проблемы сразу, в результате меняется огромная часть кода. Это приводит к затруднению работы сети и повышает вероятность багов, которые будет сложно устранить.

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

SegWit2x – что это такое

В Нью-Йоркских соглашениях, подписанных в 2017 году, был подпункт, который предусматривал проведение жесткого форка SegWit2x. После него размер блока в сети Биткоин должен был увеличиться до 2 мегабайт.

Жесткая вилка (хардфорк) – это обновление ПО, которое подразумевает введение новых правил. Сеть становится несовместима со старым программным обеспечением. Мягкая вилка (софтфорк) – это обратно совместимые изменения. То есть новые транзакции будут по-прежнему действительными для не обновленных узлов. 

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

Внедрение Segwit2x привело бы к изменению правил, которые регулируют Биткоин. Тем не менее, он отличался от вилок Bitcoin Cash и Bitcoin Gold. В этих случаях пользователи не ожидали снижения стоимости транзакций, просто во время разветвления владельцы BTC получали новую криптовалюту.

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

В отличие от Bitcoin Cash, где разработчики планировали создать полностью новый блокчейн, сторонники Segwit2x не были уверены в конечном результате.

За и против

Майнеры и стартапы были ярыми приверженцами Segwit2x. Но команду разработчиков одолевали сомнения.

Segwit2x решал проблему масштабируемости, но ставил под угрозу безопасность сети. Технология не предусматривала механизма защиты от двойного расходования, к тому же жесткая вилка могла негативно отразиться на инвесторах. 8 ноября 2017 года один из инициаторов Segwit2x Макл Белш заявил, что хардфорк отменен.

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

Чуть позже разработчики прокомментировали ситуацию с отменой форка.

«После отмены Segwit2x мы облегченно вздохнули, ведь наша цель заключается в объединении сообщества. Мы заинтересованы в том, чтобы сохранить как можно больше участников на одной ветке» – сказал глава Blockchain.info Питер Смит, который изначально был сторонником Segwit2x.

UASF

Сложившаяся ситуация вокруг Segwit2x грозила вылиться в тупик, но все разрешилось силами членов сообщества, которые поддержали софтфорк UASF.

Идея была озвучена в феврале 2017 года неким Shaolinfry (это ник, настоящее имя неизвестно). В Сети есть информация лишь о том, что данный программист занимался разработкой сети Litecoin.

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

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

Основные дискуссии по поводу концепции UASF велись на Slack-канале Bitcoin Core. Там же была предложена первая дата активации софтфорка – 1 октября 2017 года, которая впоследствии перенеслась на 1 августа.

Тем временем Shaolinfry разработал предложение, которое отвечало за активацию UASF. Технический документ назывался BIP148. Для продвижения идеи был запущен информационный ресурс.

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

Активация SegWit в криптовалютах

Пока разработчики Bitcoin спорили и подготавливались к обновлению SegWit, другие проекты уверенно начали применять данную технологию. Первопроходцем стал Groestlcoin, затем его примеру последовали Syscoin, Viacoin, DigiByte, Monacoin и т. д. Но самой известной криптовалютой, которая активировала SegWit, на тот момент стал Litecoin. Вместе с тем создатель проекта Чарли Ли на практике доказал эффективность UASF. Именно через него разработчик внедрил SegWit в блокчейн Litecoin.

Что такое BIP91

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

Ни одну из сторон такой подход не устраивал. Первым решение проблемы нашел Джеймс Хиллиард – инженер компании Bitmain Technologies. Он озвучил идею модифицированной версии SegWit2x в сочетании с надежным выполнением SegWit, которая называлась BIP 91. Вероятность разделения сети на 2 отдельные цепочки в данном случае сводилась к нулю.

При разработке BIP91 учитывали две другие идеи, направленные на повышение масштабируемости сети Биткоин:

  1. BIP148 – софтфорк UASF.
  2. BIP141 – оригинальный план по интеграции SegWit, который был разработан еще в ноябре 2016 года.

Реализация BIP91 состоялась в июле 2017 года. Через неделю был имплементирован активируемый пользователями софтфорк UASF. Таким образом, разработчики смогли избежать разделения сети.

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

Чуть ранее многие майнеры пропустили первый контрольный период UASF. Это отразилось нервозностью рынка: графики демонстрировали обвал курса до на 600 $ за 1 неделю.

После активации BIP91 ждать стабилизации ситуации не пришлось. Курс начал понемногу подниматься. А после реализации UASF Биткоин принял решительную восходящую тенденцию: за 2 недели курс монет вырос на 1000 $.

8 августа 2017 года состоялась долгожданная фиксация SegWit, а 24 августа на блоке № 481 824 свершилось эпохальное для Биткоина событие – протокол был активирован.

Буквально на следующий день майнинг-пул Bitfury добыл первый SegWit-блок, размером более 1 мегабайта.

Но параллельно с важными обновлениями, случались менее приятные события. Разногласия в сообществе и неприятие обновлений отдельной его частью привели к расколу сети и появлению новой криптовалюты Bitcoin Cash.

Что с Биткоином после SegWit

После активации протокола прошло уже почти 2 года. За это время можно сделать некоторые выводы и оценить, как изменилась сеть Биткоин.

В первую очередь стоит обратить внимание на уровень принятия протокола. Сегодня он достигает практически 50 %. Результат мог быть и лучше, если бы протокол был интегрирован в более крупные сервисы, например, Blockchain. Сами разработчики не называют причины, которые мешают более глубокой имплементации протокола. Отмечу, что использование софтфорка не является обязательным. Другое дело, что остальные компании, которые реализовали SegWit в свои проекты, сделали это в знак заботы о собственных клиентах. Потому что положительные изменения в первую очередь могут оценить участники сети. Речь идет о снижении комиссий за транзакции.

Тем не менее, положительные сдвиги есть. Зимой 2017 года уровень принятия протокола равнялся 10 %, а курс валюты пробивал все ценовые рекорды. Комиссии за транзакции в тот момент достигли недопустимо высоких отметок. Сегодня ситуация поменялась кардинальным образом.

Согласно Bitcoin Core Fees, транзакции в сети Биткоин обходятся пользователям в среднем 0.08 $ (при подтверждении в течение 20 минут).

Добавлю, что снижение комиссий обусловлено не только интеграцией SegWit. Параллельно с этим разработчики занимались реализацией батчинга и Lightning Network, который открыл доступ к офчейн-транзакциям. Также нельзя не заметить прекращение спам-атак, которые регулярно совершались представителями всем известного конкурирующего лагеря. Это также приводило к росту комиссий в сети Биткоин.

Справка! Батчинг – это объединение нескольких транзакций в одну.

Я уже неоднократно говорил, что размер блоков после интеграции будет увеличен. Но это были теоретические допущения. Однако в 2018 году BitMex провела исследование, которое подтвердило увеличение блоков в сети Биткоин. Сегодня они весят в пределах 1.06-2 MБ, а некоторые выходят за пределы 2 мегабайт. Приведенные цифры со временем могут только увеличиваться.

После активации SegWit, сеть Биткоин готовится к реализации новых универсальных решений, таких как Lightning Network или подписи Шнорра. Это открывает для платформы новые перспективы, которые уже совсем скоро можно будет оценить на практике.

Заключение

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

Но путь к активации протокола оказался тернистым. Затяжные споры по внедрению SegWit стали причиной многих драматичных событий, которые впоследствии привели к расколу сети и появлению Bitcoin Cash.

Возможно, для решения проблем Биткоина есть более элегантные подходы, но SegWit – это самый оптимальный на данный момент способ повысить масштабируемость сети и внедрить инновационные технологии, такие как Lightning Network.

Источники

https://www.iqmonitor.ru/investicii/bitcoin-invest/segwit.html#aktivacia

https://habr.com/ru/post/349812/

https://prostocoin.com/blog/segwit

https://cryptor.net/bitkoin-dlya-chaynikov/chto-takoe-segwit-segregated-witness

Сохранить статью

о Дмитрий Шустов

Автор популярных материалов на различных криптовалютных и блокчейн площадках. Интересуюсь данной сферой с 2015 года. Трейдер-аналитик. Junior-программист. Окончил Московскую школу экономики. Работаю в АНО "Рейтинговое агентство оценки проектов цифровой экономики".