Баг в коде биткоина приведет к остановке сети, если не будет исправлен. Пользователи не смогут отправлять транзакции, а майнеры – добавлять блоки. Тем не менее, большинству сегодняшних пользователей криптовалюты беспокоиться не о чем, так как он не проявит себя на их веку. Ожидаемое время проявления бага: 2106 год.
Баг легко исправить, однако этот процесс в очередной раз потребует задействовать систему утверждения изменений в протоколе биткоина. О наличии проблемы разработчики знают как минимум с 2012 года, сообщил контрибьютор Bitcoin Core Питер Вюлле.
«Это консенсусное изменение, но очень простое. Надеюсь, оно не вызовет споров, – пояснил он в разговоре с CoinDesk. – У нас остается еще около 80 лет для решения проблемы. Как знать, что может произойти за это время?»
Баг заключается в следующем. Блоки биткоина являются контейнерами, в которых хранятся транзакции. Каждый блок имеет свой порядковый номер. Особенность формирования блоков приводит к тому, что у биткоина закончатся такие номера после блока 5101541. Другими словами, после очередного блока, который ориентировочно будет выпущен через 86 лет, в блокчейн больше нельзя будет добавить ни одного блока.
Главная проблема с устранением неисправности состоит в том, что для этого придется провести хард форк. Всем майнерам и операторам нод потребуется заблаговременно обновить свое ПО, чтобы поддержать обновление, иначе они останутся в неисправной цепи.
В прошлом хард форки использовались отдельными группами для навязывания своей политической воли, как это было с движением Segwit2x в 2017 году. Тем не менее, в этом случае у различных участников экосистемы не должно возникнуть стимулов для саботирования обновления, так как оно направлено исключительно на сохранение сети в работоспособном состоянии. Те же, кто решит не участвовать в хард форке, останутся в тупиковой цепи.
Глава по продукту биткоин-стартапа Veriphi Густаво Флорес отметил, что вероятное отсутствие противоречий не делает хард форк менее интересным, поскольку любое обновление отражает невозможность полной «окостенелости протокола».
В ранние годы существования биткоина число его пользователей было невелико, а консенсусные изменения могли проводиться относительно легко. Предполагается, что по мере становления криптовалюты будет сформирован некий набор устоявшихся правил, необходимость отходить от которых не должна возникать слишком часто.
«Окостенелость протокола означает, что в определенный момент (некоторые говорят, что это должно произойти сейчас) биткоину больше не придется изменяться. Правила станут сродни конституции страны и не будут меняться, поскольку сеть будет слишком децентрализованной для координации каких-либо изменений», – сказал Флорес.
Разработчики считают окостенелость положительным качеством, так как она свидетельствует о том, что система децентрализована настолько, насколько хочет сообщество. Это исключает возможность навязывания воли отдельными участниками, включая крупные компании, которые могут преследовать свои цели в ущерб децентрализации и ключевым ценностям биткоина.
«Тем не менее, этот баг указывает на то, что возможность организации хард форка желательна, так как все хотят устранить неисправность и заинтересованы в выживании биткоина после окончания указанного срока, – добавил Флорес. – Так мы возвращаемся к реальности, где мечта об окостенелости протокола, которая позволит нам достичь полной децентрализации, не так близка, как казалось. Она может остаться всего лишь мечтой, к которой мы будем приближаться со временем, но так и не достигнем ее, потому что могут возникать подобные непредвиденные ситуации».