После долгожданной активации обновления SegWit в сети биткоина немедленно возникли вопросы о том, когда и как пользователи смогут воспользоваться своими преимуществами.
С новым форматом SegWit блоки в блокчейне теоретически могут увеличиваться до 4 мегабайт каждый. Однако по словам разработчиков, на практике с большей вероятностью можно увидеть блоки размером от 1,7 до 2,1 мегабайт. Среди 137 организаций, перечисленных на сайте bitcoincore.org, 80 разработчиков кошельков, биржи, пулы и другие биткоин-проекты; все они показали, что были готовы к SegWit еще до его активации.
Первый блок, превышающий первоначальный размер в 1Мб, был добыт 25 августа и ‘весил’ 1032,119 килобайт. ‘Большие’ блоки продолжали появляться, и сегодня мы как правило видим до шести блоков подряд, размер которых превышает ранее установленный лимит. На SegWit-транзакции теперь приходится чуть более одного процента из всех, это связано с тем, что, вероятно, не все обновили ПО биткоина должным образом.
В то время как большие блоки стали реальностью, едва ли можно сказать, что комиссии при переводах биткоинов резко упали на глазах. Сейчас комисия порой достигает $9 за транзакцию, и более крупные блоки по своей задумке должны снизить такие значения. Для того, чтобы снизились комиссии, так называемый мемпул (mempool), в котором хранятся незавершённые транзакции до их добавления в блоки, должен быть освобождён на более чем 100 Мб ‘увязших’ транзакций, которые имели место непосредственно перед активацией SegWit.
Однако количество транзакций в мемпуле начало резко уменьшаться только 29 августа, и с тех пор его размер составляет около 4 мегабайт. Таким образом, процесс очистки просроченных платежей сделал средний размер биткоин-блоков намного меньшим. Начиная с воскресенья, от блока 483286, многие блоки были заполнены наполовину или меньше, а размеры комиссий упали до самого низкого уровня за последний год.
Первоначальная цель SegWit заключалась в том, чтобы исправить уязвимость под названием Transaction Malleability (TxMal), о которой впервые стало известно, когда Марк Карпелес назвал этот дефект кода ключевым при взломе MtGox в 2013 году. Патч, который исправляет TxMal, также добавляет код, который помогает масштабировать биткоин другими способами, а именно путём упрощения реализации приложений второго уровня, таких как Lightning Network или сайдчейны.
Есть ещё 8 различных изменений, которые проявляются в разное время по-разному. Но только одно из них повлияло на ограничение размера блока, в то время как другие призваны повысить эффективности системы, – так, что теперь количество транзакций, которые сеть биткоина может обрабатывать, увеличивается, но при этом пока не увеличивается размер блока. Остальные изменения сфокусированы на улучшении безопасности цифровой валюты.
Одно из изменений, называемое «линейное масштабирование sighash-операций» (linear scaling of sighash operations), — это повышение эффективности, которое меняет расчет хэша транзакции для подписей. «Каждый байт транзакции нужно хэшировать не более двух раз», — говорится на веб-сайте разработчиков Bitcoin Core. Изменение выполняет ту же работу, что и раньше, но более эффективно, так, чтобы большие транзакции могли быть сгенерированы без проблем в связи с хэшированием подписи, — даже если подписи создаются злоумышленниками.
Другое изменение, называемое script versioning, обещает дать некоторые преимущества в эффективности, которые проявятся в будущих версиях биткоина. Патч повышает безопасность кода криптовалюты, просто добавляя номера версий для всех модернизаций скриптов. Это также позволяет отдельным пользователям выбирать определённые версии.