Как работает протокол SegWit у Биткоина
Надежность технологии блокчейн обусловлена децентрализованным хранением данных, криптографическим шифрованием и алгоритмом консенсуса. Сложное взаимодействие этих характеристик обеспечивает защиту от внешних и внутренних угроз. Однако эксперты обнаружили, что некоторые части кода можно изменить не криптографическими способами (без взлома приватных ключей). Это ставит под угрозу данные, хранящиеся в системе. Вторая проблема связана с масштабируемостью. Она возникла из-за ограниченного размера блока. В нем можно разместить относительно небольшой объем информации. Чтобы решить эти проблемы, разработчики предложили обновить протокол и активировать Bitcoin SegWit (Сегвит). Благодаря софт форку удалось ускорить транзакции и снизить комиссии без серьезных изменений программного кода. Также увеличилась безопасность переводов.
- Что такое SegWit простыми словами
- Как работает технология
- SegWit vs Legacy
- Основные преимущества протокола
- Недостатки технологии
- История создания SegWit в сети Bitcoin
- Подготовка
- Разногласия
- Последствия активации
- SegWit и другие криптовалюты
- Какие кошельки поддерживают технологию
- Перспективы развития
- Резюме
- Часто задаваемые вопросы
Что такое SegWit простыми словами
Segregated Witness — это обновление сети Bitcoin, разработанное для решения следующих проблем:
- Масштабируемость. В блокчейне BTC один блок генерируется примерно раз в 10 минут. Пропускная способность сети зависит от количества транзакций, которые вмещает ячейка. Размер блока ограничен 1 МБ — это условие жестко прописано в коде криптовалюты. С ростом количества запросов майнеры сначала подтверждают транзакции с большей комиссией. Поэтому увеличиваются издержки. До обновления некоторые транзакции выполнялись несколько дней.
- Пластичность. Криптовалютные операции — это зашифрованные строки программного кода, одна из частей которого — идентификатор транзакции (Transaction ID, TXID). Показатель формируется из электронной подписи отправителя (вычисляется при расшифровке приватного ключа), количества монет и данных об участниках сделки. Зная TXID, любой пользователь может получить информацию о статусе операции. Подтверждение сделки занимает время, за которое злоумышленники могли изменить идентификатор без отмены транзакции. Для этого не нужно иметь доступ к приватным ключам. Получатель перевода может изменить TXID после зачисления активов и запросить у отправителя повторный платеж. Этим пользовались мошенники, заставляя криптобиржи совершать множественные транзакции. Эксперты по безопасности предполагают, что так были украдены 64 564 BTC у популярной в 2014 году биржи MtGox.
Основная идея SegWit Биткоина — отделить подписи (доказательство владения криптовалютой) от данных о переводе (количество монет и участники сделки). Это увеличивает пропускную способность системы за счет экономии места в блоке и решает проблему пластичности.
BTC SegWit реорганизует данные, исключая двойную трату средств. Активация обновления проводилась в несколько этапов из-за возникших сложностей. Некоторые разработчики так и не приняли SegWit. Это привело к созданию хардфорков биткоина. Один из самых популярных — Bitcoin Cash.
Как работает технология
В блокчейне Bitcoin нет списка кошельков с остатками по счетам. Вместо этого система представляет собой набор входящих и исходящих транзакций для отдельного адреса. До софтфорка запись об операции включала обязательную часть — идентификатор. Если в криптографическую подпись вносились малейшие коррективы (например, изменяли формат или добавляли необязательные служебные символы), менялась TXID.
Модифицированная операция относилась к тому же кошельку, что и оригинальная. Эти сделки могли конкурировать при подтверждении. Если майнеры обрабатывали копию раньше основной записи, то исходная отклонялась.
Поле scriptSig теперь оставляют пустым. Информация о подписи находится в отдельной структуре Witness data. Это нововведение решает проблему пластичности и экономит место в блоке. Дело в том, что цифровая подпись занимает до 65% от объема транзакции.
Исключив пластичность сделок, разработчики начали создавать блокчейны 2 уровня, построенные поверх основной сети. У биткоина таким протоколом является Lightning Network (оффчейн-сеть микроплатежей). Алгоритм собирает и хранит множество мелких одинаковых переводов вне основной цепочки. После закрытия платежного шлюза они объединяются в одну транзакцию и попадают в базовый протокол. Это увеличивает скорость обработки сделок.
После активации SegWit для проверки операций узел должен загрузить дополнительную структуру. Блок подписей связывается с основным блокчейном через хеш-дерево в заголовке.
SegWit vs Legacy
В протоколе BTC работают несколько типов адресов:
- Legacy (P2pKH). Этот формат предложил Сатоши Накамото в 2010 году. Публичный ключ начинается с цифры 1. В него входят 25-34 символов. Есть исключения. Заглавные буквы O, I, строчная l и число 0 не применяются, чтобы предотвратить визуальную неоднозначность. Недостатки адреса — чувствительность к регистру, высокие комиссии, больший вес в QR-кодах, неудобство записи.
- P2SH. Формат создан в 2012 году для решения проблем блокчейна и внедрение более сложных функций. Структура публичного ключа идентична Legacy, но начинается с числа 3. Для получения платежа нужен скрипт, совместимый с хешем. Технология снижает сетевые сборы. Она переводит оплату за сделки на получателя и позволяет формировать открытые ключи с мультиподписью. Кошельки P2SH поддерживают софтфорк, но не являются его нативным решением. Из хранилища P2SH можно переводить BTC на P2PKH и Bench32. Адрес в виде QR-кода занимает меньше места по сравнению с Legacy.
- Bench32 (SegWit, P2WPKH). Решение предложили Питер Вилле и Грег Максвелл в обновлении BIP-0173 на конференции в 2016 году. Протокол разработан для увеличения эффективности блокчейна. Решение позволяет еще больше сократить комиссии. В формате применяются только строчные буквы. Адрес начинается с bc1 и может содержать до 90 знаков (чаще 42). В 2023 году не все сервисы поддерживают отправку монет на кошельки этого типа. Чтобы избежать ошибок, рекомендуется использовать P2SH-хранилище. Если при написании адреса допущено до 4 неточностей, контрольная сумма будет неверна. Благодаря примененному коду Боуза-Чоудхури -Хоквингема (БЧХ) система автоматически исправит ошибки.
Основные преимущества протокола
Технология Bitcoin SegWit значительно улучшила сеть. Главные плюсы софтфорка:
- Решение проблемы пластичности. По статистике, она затронула более 50% операций в блокчейне BTC.
- Масштабируемость. Благодаря удалению подписей из блока и отдельному хранению удалось повысить пропускную способность сети с 3 до 7 операций в секунду и снизить комиссии с $20-30 до $5-10.
- Обратная совместимость. Переводы можно делать на старые и новые адреса. Участники, поддержавшие обновление, работают с меньшими комиссиями.
- Внедрение инноваций. Благодаря софтфорку разработчики начали строить блокчейны 2 уровня.
- Поддержка большинством нод. В 2023 году свыше 90% переводов в сети BTC проходит через SegWit-адрес.
- Высокая надежность кошельков с мультиподписью. Если злоумышленникам станет известен хотя бы 1 ключ P2SH-транзакции, то количество решений можно сократить до 280. Для SegWit-адресов это значение составляет 2126.
Криптовалютный рынок привлекает людей возможностью заработать. Существуют разные способы делать...
Рынок цифровых активов находится на подъеме. Экосистема включает более 7000 монет и . Не все из...
Недостатки технологии
Один из главных аргументов противников софтфорка — невозможность его отмены. При активации обновления нужно откатить программный код до последней версии. Но это приведет к тому, что все SegWit-коды окажутся в свободном доступе.
Обновление имеет недостатки:
- Кратковременное решение проблемы масштабируемости. Число сделок в блокчейне постоянно растет. Нужны более значительные изменения в размере блока и способе обработки переводов.
- Разногласия в сообществе. Из-за невозможности прийти к компромиссу произошло несколько хардфорков в сети Bitcoin (BCH, BTG, BCD).
- Сложная проверка операций. Из-за подгрузки дополнительной структуры узлам требуется больше ресурсов.
История создания SegWit в сети Bitcoin
C 2012 года участники профильных форумов и конференций поднимали вопрос о проблеме пластичности. Решение предложил в 2015 году соучредитель компании Blockstream Питер Вилле. В отличие от других способов модернизации Bitcoin SegWit не требовал проведения хардфорка, поэтому был воспринят сообществом позитивно.
Hardfork — это обновление программного кода, не совместимое с прежним софтом. Так возникают 2 или больше криптовалют со схожим названием (Bitcoin и Bitcoin Cash).
Подготовка
Для принятия новых правил требовалось одобрение 95% майнеров. Однако не все поддержали идею. Поэтому обновление протокола проводилось в несколько этапов.
Дата | Мероприятие |
---|---|
Январь 2016 | Запущена тестовая сеть BIP141 |
Март 2016 | К тестированию подключились больше разработчиков, компаний и майнеров |
Июнь 2016 | Прошли конференции с участием влиятельных в криптосообществе лиц. На одной из них одобрено повсеместное внедрение технологии. |
Сентябрь 2016 | Доработан код. Вышла новая версия Bitcoin Core 0.13.1. |
Октябрь 2016 | Разработчики презентовали протокол. Условием активации названо участие 95% майнеров. |
Ноябрь 2016 | Пользователи BTC массово обновляли блокчейны. Некоторые продолжали высказывать недовольства внедрением технологии. |
Январь-апрель 2017 | Большинство майнеров поддержали софтфорк |
Май 2017 | На конференции в Нью-Йорке подписано соглашение об увеличении размера блока до 2 Мб (SegWit2x). Новую версию так и не внедрили. Но благодаря конференции большинство майнеров приняли софтфорк. |
Август 2017 | Протокол активирован в сети Bitcoin |
Разногласия
Несмотря на плюсы новой технологии, не все поддержали предложение. Одни разработчики считали, что софтфорк не решит проблемы масштабируемости и пластичности или устранит их на время. Другие утверждали, что исходный код, предложенный Сатоши Накамото, не нужно оптимизировать и дорабатывать.
Противники софтфорка заявляли, что обновление централизует систему. Из-за увеличения числа транзакций вырастет количество неподтвержденных переводов в блоке. Это сделает сеть уязвимой к хакерским атакам.
За активацию обновления выступали учредители Bitcoin Core (переименована в Blockstream). Противники связывали поддержку компании с разработкой Lightning Network. Для ее внедрения требовалось устранить проблему пластичности. Однако SegWit поддержали и другие проекты:
- BitGo.
- Xapo.
- Bitmain.
- Bloq.
- Shapeshift.
Последствия активации
Устранив проблему пластичности, разработчики смогли создать блокчейн 2 уровня Lightning Network. Основная цель протокола — увеличить пропускную способность сети и уменьшить комиссии. Надстройка позволяет совершать переводы без записи транзакций в блоках.
Для входа в блокчейн 2 уровня нужно создать особую транзакцию (разновидность смарт-контракта). При этом образуется платежный шлюз, в котором пользователи могут обмениваться криптовалютой без подтверждения в основной цепочке.
Эти операции не видны в блокчейне BTC. В любое время участник канала может его закрыть и опубликовать состояние кошельков. В этот момент все микроплатежи будут объединены в одну транзакцию и записаны в ближайший блок. Алгоритм распределит остатки на каждой стороне канала по адресам.
SegWit и другие криптовалюты
Противники внедрения технологии начали проводить хардфорки и создавать новые монеты. Так появилась криптовалюта Bitcoin Cash с размером блока 8 Мб. Из-за повышенной скорости операций и низких комиссий разработчики предложили использовать BCH для ежедневных расчетов, а BTC — для инвестиций.
В 2023 году SegWit популярен. Многие разработчики внедряют технологию в проекты. Наиболее известные монеты с поддержкой обновления:
- Litecoin.
- Groestlcoin.
- Vertcoin.
- Syscoin.
- Digibyte.
Какие кошельки поддерживают технологию
В 2023 году большинство крупных бирж работают с новыми форматами адресов (Binance, Bybit, BitMex). Постепенно растет число криптовалютных хранилищ, совместимых с SegWit. Среди них:
- Armory.
- Electrum.
- Wasabi Wallet.
- BRD.
- Trezor.
- Ledger.
- Coinomi.
- Coinb.
Перспективы развития
В мае 2017 года более 50 компаний подписали Нью-Йоркское соглашение об активации Segwit2x. После внедрения технологии размер блока мог увеличиться до 2 МБ. Новая версия решала проблему масштабируемости, но Bitcoin разделился бы на 2 сети.
В назначенный срок один из организаторов хардфорка Майл Белш заявил, что из-за неразрешимых разногласий обновление переносится на неопределенный срок. Разработчик и его союзники сказали, что когда-нибудь активируют 2 версию. Сторонники обновления считают, что рост популярности Bitcoin Cash может привести к одобрению хардфорка Segwit2x большинством участников в будущем.
Резюме
Segregated Witness — обновление протокола Bitcoin, предложенное в 2015 году Питером Вилле для повышения безопасности и скорости операций. Активация сопровождалась разногласиями в сообществе. Не все пользователи поддержали нововведение. Это привело к хардфоркам. Были созданы новые монеты. Однако технология получила признание. В 2023 году крупные цифровые сети и платформы поддерживает биткоин-адреса нового формата.
Часто задаваемые вопросы
Софтфорк делает транзакции безопаснее. Поэтому с адресами формата Bench32 работает большинство крупных бирж — Binance, Bybit, BitMex и другие.
SegWit — это софтфорк, который обратно совместим c предыдущими версиями.
Технология реализована в Bench32 и P2SH-кошельках. Адрес должен начинаться с цифры 3 или bc1.
В хардфорке разработчики предложили увеличить размер блока до 2 Мб. Это позволило бы повысить пропускную способность сети. Старт планировался в 2017 году. Однако обновление отменили из-за отсутствия поддержки.
Многие другие сети также активировали софтфорк (например, Litecoin, Groestlcoin, Vertcoin).