«Electrum с безопасностью Bitcoin Core»: Соавтор протокола Lightning представил первую версию Utreexo

Таддеус Дрия, соавтор whitepaper протокола Lightning Network, год назад опубликовал исследовательский документ, в котором было изложено предложение по масштабированию биткоина под названием Utreexo.

«Electrum с безопасностью Bitcoin Core»: Соавтор протокола Lightning представил первую версию Utreexo

На прошлой неделе он выпустил первую версию ПО Utreexo, в которой реализована идея более легких нод битокина. Это ещё не полная реализация, но важный первый шаг.

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

«Utreexo ― это новая технология масштабируемости биткоина, которая может сделать биткоин-ноды меньше и быстрее, сохраняя безопасность и приватность на уровне полной ноды», ― пишет Дрия в своем блоге.

Полные ноды хранят каждую транзакцию, когда-либо совершенную в блокчейне. «Обрезанные» (pruned) ноды могут уменьшить размер истории транзакций до половины гигабайта, но они не решает проблему хранения неизрасходованных выходов транзакций (), которые определяют, сколько биткоинов связано с каждым адресом. Этот пакет данных занимает чуть менее 4 ГБ. Размер этого «состояния UTXO» постоянно растет.

Вот тут-то и появляется Utreexo. С помощью новых криптографических методов можно заменить большую часть состояния одним криптографическим доказательством, которое занимает гораздо меньше места. «Utreexo позволяет отобразить миллионы UTXO в килобайте данных», ― утверждает Дрия.

Сегодня такие легкие биткоин-кошельки как Electrum используют упрощенную проверку платежей (Simplified Payment Verification, SPV).

Utreexo похож на SPV в том, что он не требует много памяти на компьютере. Однако Utreexo имеет несколько существенных преимуществ в плане безопасности, и Дрия надеется, что он может ослабить доминирующее положение SPV. «Было бы замечательно, если бы Utreexo заменил SPV ― это дало бы пользовательский опыт Electrum, но с безопасностью », ― сказал Дрия в комментарии для Coindesk. Тем не менее, он не думает, что Utreexo полностью заменит SPV.

«Это будет что-то среднее. Utreexo тяжелее, чем SPV, но легче, чем полные ноды, поэтому некоторые пользователи SPV смогут перейти на Utreexo», ― сказал он. «Я уверен, что в долгосрочной перспективе почти все полные ноды будут использовать Utreexo-подобную структуру, и ноды, которые хранят все состояние и историю, будут больше похожи на текущие обозреватели блоков или на серверы Electrum ― они будут работать, но обычные пользователи не будут запускать их самостоятельно».

Но пока разработчикам ещё предстоит проделать большую работу по устранению ошибок в ПО Utreexo. «Сейчас ПО работает в тестовой сети биткоина и его не рекомендуется использовать в основной. В коде всё ещё много ошибок, но мы быстро устраняем их», ― пишет Дрия.

Utreexo должен быть совместимым с нодами, которые уже работают в сети биткоина. Чтобы реализовать это, разработчикам в будущем потребуется внести изменения в клиент Core.

Включение этих изменений представляет собой непростую задачу. По словам Дрия, Utreexo ― это «существенное переосмысление того, как работает биткоин, изменение критически важного кода». «Таким образом, вероятно, будет трудно получить код Utreexo в Bitcoin Core, и для этого есть веские причины. Мы хотим быть уверены в том, что не создадим проблем в системе, которую использует очень много людей», ― сказал Дрия.

Сначала разработчики попытаться добавить Utreexo в альтернативный клиент Btcd, который используют не так много людей, чтобы в процессе узнать больше о том, как это повлияет на работу полной ноды. Только после этого разработчики рассмотрят возможность добавления Utreexo в Bitcoin Core.