Infura - проблема консенсуса



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

Сегодня во всей сети Эфириума были проблемы, потому как главная сеть попала под удар из-за ошибок консенсуса.

Сервисы, использующие старые версии geth-нод застряли в малой цепи, что вызвало эффект домино на всех привязанных к ним приложениях.

Большинство пользователей узнало о проблеме, когда упал API Infura. Infura является самым крупным провайдером нод в сети Эфириума. Они поставляют инструменты и инфраструктуру одним из самых используемых приложений Web 3.0 и централизованным биржам, таким как Metamask, Uniswap и Binance.

Деградация качества сервиса Infura выявила, что Binance либо полагается на Infura, либо использует устаревшие ноды. Ни то, ни другое не приемлемо для такого большого обменника.

Может показаться странным, что Infura использовала не самые последние версии geth но для такого крупномасштабного оператора разумнее не переходить сразу же на самую последнюю версию. Если нет хардфорка, то нет и повода для срочного переключения со стабильного работающего кода на незнакомый.

У системы поиска и анализа Blockchair тоже были проблемы, из-за чего они опубликовали следующий твит:

Мы испытываем затруднения с нашим эксплорером_ #Ethereum_ и работаем над исправлением. Похоже, что произошло разделение цепи, некоторые ноды (включая наши и ноды некоторых майнеров) застряли в малой цепи.

Главный разработчик Blockchair Никита Жаворонков сообщил, что получил сообщение об ошибке:

########## BAD BLOCK #########

<…>

Error: invalid merkle root (remote: 57cc91ee8b91b956592a27b14386abc2aba723b5f4f9e5d3181ace6b5d3cd433 local: 1f9ee59bfa683a25c7a15b626995a3ad7c58c571b40df96eea31e5c5eed9732d)

В сети geth было найдено две серьезные уязвимости, обе обнаружил John Youngseok Yang (Software Platform Lab), что принесло ему 20 тысяч очков на доске почета программы баунти Эфириума (Ethereum Bounty Program).

Ошибки консенсуса не обсуждаются на Github, чтобы избежать риск эксплоита, поэтому конкретные детали уязвимостей еще не известны. Для тех, кому хочется узнать поподробнее о технических деталях, Mhswende пишет, что:

«Вполне возможно, что в будущем об этом напишут статью или сделают презентацию на devcon»

Разработчики Ethereum приняли решение сделать хардфорк, чтобы минимизировать сбои.

Как написал Péter Szilágyi в Twitter:

Это был «хардфорк-сюрприз» (с неправильной цепи на правильную). И все же, тихо исправить баг, дремавший больше двух лет, имело бы меньше шансов вызвать сбой, чем информировать людей об этой проблеме. Мы стремимся к минимизации потенциального ущерба.

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

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

Infura снова онлайн, обновления статуса можно найти здесь.

Сбой в работе Infura дал многим понять, как сильно мы зависим от одного лишь этого игрока.

Это централизованный сервис, который выполняет роль сторожа нашей децентрализованной системы.

Подобные частные предприниматели и организации должны пересмотреть свою стратегию на будущее.

Впечатление о компетентности больших и надежных обменников, таких как Binance и Bithumb, испарилось, когда они были вынуждены деактивировать выводы ETH и ERC-20 на время сбоя, несмотря на то, что у них было обязательство перед пользователями не подвергать их подобным инцидентам.

Мы не можем настолько доверять Infura. Из-за того, что MetaMask по умолчанию зависит от централизованного провайдера нод, вся сеть Ethereum временно стала безлюдной, а газ упал до 12 gwei.

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

Разве мы хотим, чтобы наше цифровое общество повторяло те же ошибки, что и все остальные, полагаясь на единственные централизованные точки отказа?

Мы построили свободный интернет, но отдали его маленькой группе централизованных авторитетов: Chrome, Safari, Brave... Мы построили альтернативный интернет, в котором изначальные ценности анонимности и децентрализованности живы, но мы назвали его даркнетом, и доступ в имеет только альтернативное, часто блокируемое программное обеспечение.

Мы не можем допустить, чтобы с криптовалютами случилось то же самое.

David Mihal написал:

Сегодняшнее отключение Infura заставило пользователей со всех ног броситься искать альтернативного провайдера RPC.

Я просто накидалhttp://ethereumnodes.com, чтобы создать центральный список общественных, бесплатных конечных точек RPC и их текущих статусов.

Michael O’Rourke подчеркнул, что:

Если ваша Metamask не работает, вы можете поменять провайдера RPC на Pocket, перейдя по этой ссылке:

https://eth-mainnet.gateway.pokt.network/v1/5f3453978e354ab992c4da79…

Любое нарушение консенсуса - серьезная проблема. Хардфорк без предупреждения говорит о том, что если бы эти уязвимости не проверили, они могли бы очень сильно навредить Эфириуму.

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

Кадры из фильма “12 разгневанных мужчин”


Поделиться

REKT представляет собой общественную площадку для анонимных авторов. Мы не несём ответственность за выражаемые точки зрения или контент на этом веб-сайте.

Пожертвование (ETH / ERC20): 0x3C5c2F4bCeC51a36494682f91Dbc6cA7c63B514C

Дисклеймер:

REKT не несет никакой ответственности за любое содержание, размещенное на нашем Веб-сайте или имеющее какое-либо отношение к оказываемым нами Услугам, независимо от того, было ли оно опубликовано или создано Анонимным Автором нашего Веб-сайта или REKT. Не смотря на то, что мы устанавливаем правила поведения и нормы публикаций для Анонимных Авторов, мы не контролируем и не несем ответственность за содержание публикаций Анонимных Авторов, а также за то, чем делятся и что передают Авторы с помощью нашего Сайта и наших Сервисов, и не несем ответственность за любое оскорбительное, неуместное, непристойное, незаконное или спорное содержание, с которым вы можете столкнуться на нашем Веб-сайте и на наших Сервисах. REKT не несет ответственность за поведение, будь то онлайн или офлайн, любого пользователя нашего Веб-сайта или наших Сервисов.