Состоялся официальный релиз Segregated Witness

bitcoinscience03
bitcoinscience03

Разработчик Bitcoin Core Питер Велле завершил долгожданный апгрейд протокола биткоина Segregated Witness. Таким образом, вскоре майнеры также смогут сделать апгрейд своего софта, чтобы включить туда софтфорк SegWit.

Впервые представленный на конференции Scaling Bitcoin в Гонконге в декабре прошлого года, SegWit изменяет основной процесс самого протокола, делая его более эффективным. В частности, функция, получившая название Separated Signatures, удаляет часть каждой транзакции биткоина, которая содержит цифровую подпись, помещая её рядом с блокчейном.

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

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

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

Примечательно, что именно эта проблема была упомянута Марком Карпелесом в начале 2014 года, когда он пытался списать на неё огромное количество пропавших средств печально известной биржи MtGox. SegWit же устраняет цель атаки, поэтому предстоящий апгрейд означает и полное решение этой проблемы.

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

По сути, единственным крупным препятствием, не дающим пока SegWit стать полноценной частью биткоина, является то, что подавляющему большинству майнеров необходимо сделать апгрейд до той версии клиента ноды Bitcoin Core, которая сможет его узнать. Сами ноды апгрейда не требуют, однако этот процесс займёт около 95% майниговой мощности сети. Только после этого обновление можно будет считать завершённым, и сеть сможет почувствовать возросшую эффективность.

Каких-либо веских причин отказаться от принятия «мягкой развилки» SegWit у майнеров быть не должно, поскольку нет риска ни для самой сети биткона, ни риска потери средств пользователей.

Код SegWit размещён на GitHub и доступен к скачиванию. Как говорится в описании, в финальную версию SegWit включены следующие предложения по улучшению:

BIP141 — оптимизирует процесс верификации сделок, содержит сценарии и подписи транзакций;

BIP143 — определяет новый алгоритм верификации подписей при совершении транзакций;

BIP144 — оптимизирует формат распространения операций и блоков;

BIP145 — описывает изменения в протоколе getblocktemplate JSON-RPC (BIP22) в соответствии с требованиями BIP141 и SegWit.

 

Подписывайтесь на ForkLog в социальных сетях

Telegram (основной канал) Discord Instagram
Нашли ошибку в тексте? Выделите ее и нажмите CTRL+ENTER

Рассылки ForkLog: держите руку на пульсе биткоин-индустрии!

*Ежедневная рассылка — краткая сводка наиболее важных новостей предыдущего дня. Чтение занимает не больше двух минут. Выходит в рабочие дни в 06:00 (UTC)
*Еженедельная рассылка — объясняем, кто и как изменил индустрию за неделю. Идеально подходит для тех, кто не успевает за новостным потоком в течение дня. Выходит в пятницу в 16:00 (UTC).

Мы используем файлы cookie для улучшения качества работы.

Пользуясь сайтом, вы соглашаетесь с Политикой приватности.

OK