Что такое СегВит?
Segregated Witness (SegWit) — это обновленный протокол, разработанный в 2015 году. Эта концепция была введена для решения проблем масштабируемости, с которыми в настоящее время сталкиваются сети блокчейнов.
В среднем сеть Биткойн проверяет новые блоки каждые 10 минут, и каждый блок содержит несколько транзакций. Таким образом, размер блока напрямую влияет на количество транзакций, которые могут быть подтверждены в каждом блоке. В настоящее время блокчейн Биткойна способен обрабатывать примерно 7 транзакций в секунду.
Основная идея Segregated Witness — реорганизовать данные блока так, чтобы подписи больше не хранились вместе с данными транзакций. Другими словами, обновление SegWit включает в себя изоляцию валидаторов (подписей) от данных транзакций. Это позволяет хранить больше транзакций в одном блоке, тем самым увеличивая пропускную способность сети.
Поскольку в секунду может обрабатываться только около 7 транзакций, транзакции Биткойн иногда могут занимать много времени. Гораздо медленнее, чем традиционные платежные решения и финансовые сети, которые могут обрабатывать тысячи транзакций в секунду.
Segregated Witness был разработан и модернизирован в 2015 году разработчиком Биткойна Питером Вуйлем и другими участниками Bitcoin Core. В августе 2017 года обновление Segregated Witness было реализовано как софт-форк в сети Биткойн.
Сегодня существует несколько криптовалютных проектов, использующих протокол Segregated Witness, включая Bitcoin и Litecoin. Обновление протокола дает множество преимуществ, таких как увеличение скорости транзакций и емкости блоков. Кроме того, SegWit решает так называемую проблему гибкости транзакций (обсуждаемую ниже).
Каковы основные преимущества SegWit?
увеличить мощность
Одним из самых больших преимуществ Segwit является увеличенная емкость блока. Удалив данные подписи из входных транзакций, в блоке можно сохранить больше транзакций.
Транзакция состоит из двух основных частей: ввода и вывода. По сути, входные данные содержат публичный адрес отправителя, а выходные данные содержат публичный адрес получателя. Однако отправитель должен доказать, что он перевел средства, и использовать цифровую подпись.
Без SegWit данные подписи могут занимать до 65% блока. При использовании Segregated Witness данные подписи удаляются из входных данных транзакции. Это увеличивает эффективный размер блока с 1 МБ до примерно 4 МБ.
Обратите внимание, что Segwit — это не просто увеличение размера блока. Скорее, это инженерное решение, позволяющее увеличить эффективный размер блока без увеличения предельного размера блока (что потребует хард-форка). Точнее, фактический размер блока по-прежнему составляет 1 МБ, но эффективный размер блока ограничен 4 МБ.
Кроме того, Segregated Witness также вводит концепцию веса блока. Мы можем рассматривать вес блока как альтернативу размеру блока. По сути, вес блока — это единица измерения, включающая все данные блока: включая данные транзакций (1 МБ) и данные подписи (максимум 3 МБ), которые больше не являются частью полей ввода.
Повышенная скорость транзакций
Помимо возможности хранить больше блоков транзакций, Segregated Witness также может увеличить скорость транзакций благодаря большому объему данных транзакций, которые могут храниться в блокчейне. Даже если время генерации блока одинаковое, в блоке может разместиться больше транзакций, поэтому TPS будет выше.
Увеличение скорости транзакций также может помочь снизить транзакционные издержки в сети Биткойн. До внедрения Segwit комиссия за каждую транзакцию в основном превышала 30 долларов. Однако с внедрением SegWit транзакционные издержки значительно сократились до 1 доллара за транзакцию.
Исправления гибкости транзакций
Еще одна серьезная проблема, с которой сталкивается Биткойн, — это подделка подписей транзакций. Если подпись подделана, это может привести к компрометации транзакции между двумя сторонами. Поскольку данные, хранящиеся в блокчейне, фактически неизменяемы, недействительные транзакции постоянно хранятся в блокчейне.
Благодаря SegWit подпись больше не является частью данных транзакции, что исключает возможность изменения этих данных. Это исправление поддерживает дальнейшие инновации в сообществе блокчейнов, включая протоколы уровня 2 и смарт-контракты.
SegWit и Lightning Network
Для решения проблем масштабируемости транзакций необходимо разработать протоколы уровня 2. Проще говоря, протокол уровня 2 — это новая платформа или продукт, построенный на основе блокчейна, такого как Биткойн. Одним из наиболее популярных протоколов уровня 2 является Lightning Network, автономная платежная сеть.
Lightning Network — это протокол второго уровня, который работает в сети Биткойн. Основная цель Lightning Network — поддерживать подтверждение большего количества транзакций за более короткий период времени, тем самым обеспечивая более быстрые транзакции для пользователей. Транзакции собираются вне цепочки, эффективно буферизуя их для окончательной обработки в сети Биткойн.
Сеть Lightning изначально была разработана для Биткойна. Однако несколько других криптовалютных и блокчейн-проектов также работают над внедрением этой технологии. Это не только сократит время проверки, но и облегчит разработку решений проблем масштабируемости.
СегВит и СегВит2x
SegWit — это обновление софт-форка, что означает, что он поддерживает обратную совместимость. Другими словами, узлы Биткойн, которые не обновили SegWit, все еще могут обрабатывать транзакции. Однако существует еще одна реализуемая версия SegWit под названием SegWit2x (S2X), которая требует хард-форка.
Основное различие между SegWit и SegWit2x заключается в том, что последний будет включать не только изменения в пакетной обработке транзакций, но и увеличение размера блока (с 1 МБ до 2 МБ). Тем не менее, большие размеры блоков увеличивают нагрузку на операторов узлов и майнеров, поскольку им приходится обрабатывать больше данных.
Еще одним существенным отличием является то, что предложение SegWit поддерживается и реализуется сообществом Биткойн. Это также привело к появлению концепции UASF, что означает софт-форк, активируемый пользователем.
SegWit2x, с другой стороны, предлагает существенные изменения в базовых правилах, регулирующих Биткойн. Но SegWit2x в конечном итоге был приостановлен, поскольку разработчики не смогли достичь консенсуса по его принятию и реализации.
Разница между вложенным SegWit и собственным SegWit (bech32)
Проще говоря, собственный SegWit (также известный как bech32) — это обновленная версия вложенного SegWit. Адреса bech32 увеличивают скорость транзакций, обеспечивают лучшие механизмы обнаружения ошибок и даже снижают комиссию за транзакции. Кроме того, адреса bech32 написаны строчными буквами, что облегчает их чтение. Обратите внимание, что транзакции между адресами, отличными от SegWit (т. е. исходными биткойн-адресами, также известными как Legacy), вложенными адресами SegWit и SegWit (bech32) полностью совместимы. Но не все биржи и криптокошельки поддерживают SegWit, поэтому вы не можете отправить средства напрямую на адрес, который не поддерживает SegWit. Binance уже поддерживает адреса SegWit для ввода и вывода BTC. Для получения дополнительной информации обратитесь к FAQ по SegWit.
Подведем итог
Реализация SegWit знаменует собой серьезное обновление протокола Биткойн, который также поддерживается и реализуется распределенным сообществом, что делает его еще более привлекательным.
Запуск SegWit может эффективно решить проблемы, связанные с Биткойном и другими сетями блокчейнов, особенно это важный шаг в области масштабируемости. Благодаря сочетанию SegWit и протоколов второго уровня сети блокчейнов могут обрабатывать большие объемы транзакций с большей эффективностью и меньшими затратами.
Хотя SegWit — мощное и инновационное решение, оно еще не реализовано полностью. В настоящее время примерно 53% адресов Биткойн используют протокол SegWit.

