Віталік Бутерін вказав на «слабкі місця» Ethereum і запропонував рішення
Співзасновник Ethereum Віталік Бутерін назвав одними з головних проблем мережі роздування об’єму і зростання складності блокчейну з часом, а також розглянув шляхи їх вирішення.
У п’ятій частині есе «Можливе майбутнє протоколу Ethereum» під назвою The Purge («Чистка») він вказав на два основних «слабких місця» в цьому плані:
- історичні дані — будь-яка виконана транзакція та обліковий запис мають зберігатися всіма клієнтами вічно і завантажуватися під час синхронізації. У результаті цей обсяг зростає навіть за незмінності місткості мережі;
- функції протоколу — набагато простіше додати нову, ніж видалити стару, що призводить до збільшення складності коду.
«Щоб Ethereum підтримував себе в довгостроковій перспективі, нам потрібна сильна протидія обом цим тенденціям, з часом знижуючи складність і роздування. Але нам також потрібно зберегти одну з ключових властивостей, які роблять блокчейни чудовими: їхню сталість», — підкреслив Бутерін.
На момент написання статті повністю синхронізована нода Ethereum вимагає приблизно 1,1 ТБ дискового простору для клієнта виконання і ще «кілька сотень гігабайт» для клієнта консенсусу.
Одним із природних варіантів розв’язання проблеми Бутерін вважає зберігання кожним вузлом тільки невеликого відсотка даних. З цим пов’язана одна з основних цілей етапу The Purge — спрощення запуску клієнтів на ПК користувачів.
У результаті, можна отримати мережу зі 100 000 нод, кожна з яких містить випадковий набір із 10% історичної інформації. Реплікування цих частин 10 000 разів буде еквівалентним повному зберіганню.
Експерт зазначив, що з 1,1 ТБ клієнта виконання на історію припадає ~800 ГБ, а решта — на дані стану.
Скоротити обсяг останньої складової можна завдяки впровадженню термінів закінчення зберігання, а також часткової доступності даних з опцією їх повного «воскресіння» за необхідності, вважає Бутерін.
Щодо ускладнення протоколу він зазначив, що видалення «зайвих» функцій потребуватиме компромісу в забезпеченні зворотної сумісності.
«Не існує єдиного рішення, яке могло б знизити складність протоколу; внутрішня природа проблеми полягає в тому, що існує безліч дрібних виправлень», — визнав програміст.
Деякі поліпшення на кшталт видалення старих типів транзакцій, остаточного видалення механізму комітетів Beacon Chain або гармонізації формату даних реалізувати відносно нескладно. Зміни для інших опцій, здебільшого «зашитих» в EVM, потребуватимуть більшого обсягу аналізу та технічної роботи, вважає Бутерін.
Нагадаємо, у четвертій частині есе співзасновник Ethereum розглянув шляхи скорочення сховищ даних стану мережі шляхом використання дерев Веркла та інших технологій.