Эфириум

Как в сообществе комментируют «неанонсированный хардфорк» Ethereum

Сначала стало известно о проблемах с Infura, серверами под управлением компании ConsenSys, которые обеспечивают синхронизацию большинства приложений децентрализованных финансов (DeFi) в сети эфириума.

Из-за Infura перебои наблюдались в таких популярных эфириум-приложениях, как Metamask, MakerDAO, Uniswap, Compound и MyCrypto. Вскоре после этого биржа Binance приостановила операции в сети эфириума, заметив конфликтующие транзакции в своей ноде. Другие биржи также приостановили операции, после чего стала очевидной реальная проблема: ошибка в клиенте Geth, код которого лежит в основе 80% эфириум-приложений, разделила блокчейн эфириума на две части.

Две конфликтующие истории транзакций означали, что пользователи эфириума временно взаимодействовали с разными версиями блокчейна. Это не только вызвало задержки, но и поставило под угрозу средства пользователей.

Infura, как и другие провайдеры, устранила проблему, обновив свои ноды. Провайдеры использовали старую версию Geth с ошибкой, которую разработчики эфириума молча исправили в недавнем обновлении. Это обновление, среди прочих, проигнорировали Infura и Blockchair.

Разработчики сообщили CoinDesk, что помимо этих двух провайдеров пострадали и другие пользователи эфириума и разработчики кошельков, которые не провели обновление.

Разработчик эфириума Петер Силадьи в своем посте об инциденте написал, что форк «был (намеренно) запущен в сети эфириума».

Когда произошел форк, он создал две версии реестра транзакций эфириума: одну с транзакциями от обновленных клиентов Geth, а другую ― с транзакциями от старых клиентов Geth (например, Infura).

«Исправление было развернуто несколько месяцев назад, и только сегодня произошла транзакция, которая вызвала этот раскол», ― сказал в комментарии для Coindesk Никита Жаворонков, ведущий разработчик блокчейн-обозревателя Blockchair.

Подумав, что обновление было «незначительным изменением кода», в Blockchair не стали проводить обновление.

 

«Команда Geth действительно изменила реализацию консенсуса в релизе v1.9.17, однако команда не создавала никаких новых правил, о которых сообщество эфириума не знало или с которыми не соглашалось», ― пишет Силадьи в своем посте, говоря, что эти правила были заложены три года назад в предложении по улучшению эфириума.

«Если вы не считаете случайное введение ошибки “обновлением консенсуса”, вам также не следует рассматривать исправление указанной ошибки через несколько месяцев в “обновлением консенсуса”», ― утверждает он.

Разработчик Geth и эксперт по безопасности эфириума Мартин Свенде сказал, что этот инцидент стал напоминанием о необходимости регулярно обновлять свои ноды. По его словам, разработчики не объявляли о большом изменении, чтобы не привлекать внимание к ошибке.

Тем не менее, провайдеры эфириум-сервисов задаются вопросом, почему об ошибке не сообщили в частном порядке командам, которые разрабатывают на Geth.

«Каждый крупный проект, с которым команда разработчиков тесно сотрудничает, должен иметь контакт по вопросам безопасности, который может координировать плавное обновление. Мы должны работать вместе», ― сказал в комментарии для основатель Thesis Мэтт Луонго.

Жаворонков сказал, что ошибка не была злонамеренной, но «если [разработчики Geth] знали, что такое может случиться, то они должны были подготовить руководство для операторов нод». Луонго сказал, что команда Geth ― «хорошие разработчики», но им не хватает «опыта работы с инфраструктурой» и финансирования.

«Это своего рода серая зона и она требует отдельного обсуждения», ― заключает Силадьи в своем посте. «Мы все согласны с тем, что прозрачность ― это главное и что мы должны стремиться к ней, но в этом вопросе также важно внимательно изучить все детали».

«В случае с эфириумом требуется много времени (недели, месяцы), чтобы заставить операторов нод обновиться даже до запланированного хардфорка», ― добавил он.

По словам Силадьи, даже несмотря на то, что обновление «приняло неожиданный оборот», команда Geth по-прежнему считает, что держать эту проблему в секрете «было правильным решением».

«Я считаю, что самым важным здесь является то, что люди прозрачны в своих рассуждениях и признают любые ошибки», ― сказал Луонго. «Monero хорошо справлялась с ошибками в прошлом, так же как и биткоин и Zcash. Можно привести множество примеров, и, хотя всегда сложно координировать деятельность в индустрии, отказ от какой-либо координации чрезвычайно опасен. Я надеюсь, что этот форк приведет к более тесным отношениям и переосмыслению того, как проекты на эфириуме взаимодействуют с разработчиками клиентов».

   

Источник

Leave a Reply

Your email address will not be published. Required fields are marked *

Close
We use cookies in order to give you the best possible experience on our website. By continuing to use this site, you agree to our use of cookies.
Accept
Reject
Privacy Policy