Помилка Reth порушила роботу частини вузлів Ethereum

Великий клієнт рівня виконання Ethereum від компанії Paradigm зіткнувся з помилкою, яка на деякий час вивела з ладу частину вузлів мережі.
Інцидент стався у вівторок, коли в клієнті виконання Reth виник збій, що торкнувся вузлів, які працюють на версіях 1.6.0 та 1.4.8 основної мережі Ethereum.
Згідно із заявою технічного директора Paradigm Георгіоса Константопулоса, причина помилки наразі не встановлена. У повідомленні Paradigm на GitHub уточнюється, що збій проявився в блоці 2327426. Константопулос оперативно опублікував набір команд, за допомогою яких валідатори вузлів Reth змогли відновити їхню роботу, проте розслідування першопричини інциденту триває.
Reth — це клієнт рівня виконання Ethereum (ПЗ, яке безпосередньо працює з даними користувачів), розроблений Paradigm мовою програмування Rust. Ця мова вирізняється високою продуктивністю та гнучкістю, тому дуже популярна серед блокчейн-розробників.
Reth відповідає за обробку трансакцій та оновлення стану блокчейну. Якщо він некоректно обчислює «корінь стану» (унікальний цифровий код, який підтверджує цілісність усіх даних у блокчейні), вузол втрачає можливість синхронізуватися з мережею та отримувати від неї актуальні дані. У результаті робота блокчейну зупиняється і в цей момент він стає вразливим для хакерських атак.
За даними Ethernodes, збій торкнувся відносно невеликої кількості вузлів, оскільки Reth використовують лише 5,4% від загальної кількості валідаторів Ethereum. Попри обмежений масштаб, це доволі неприємна ситуація, яка кидає тінь на репутацію розробників Paradigm.