Таємні вибори лідера
У сьогоднішньому механізмі консенсусу на основі доказу частки володіння список майбутніх пропонувальників блоків є публічним, і можна відстежити їхні IP-адреси. Це означає, що зловмисники можуть визначити потрібних валідаторів і націлити на них DOS-атаку, через яку вони не зможуть вчасно запропонувати свій блок.
Це може створити можливості для зловмисника отримати прибуток. Наприклад, пропонувальник блоків, вибраний для слоту n+1, може здійснити DoS-атаку на пропонувальника у слоті n, щоб той упустив свою можливість запропонувати блок. Це дозволить зловмиснику одержати MEV з обох слотів або включити всі транзакції з двох блоків в один, отримавши всі пов’язані з ними комісії. Імовірно, це більше вплине на дрібних валідаторів, ніж на досвідчених інституційних, які можуть використовувати сучасні методи захисту від DOS-атак, і тому це може сприяти процесу централізації.
Існує кілька рішень цієї проблеми. Одним із рішень є технологія розподілених валідаторів (DVT)opens in a new tab, яка має на меті розподілити різні завдання, пов'язані з роботою валідатора, між кількома машинами з резервуванням, щоб зловмиснику було набагато важче запобігти пропонуванню блоку в певному слоті. Однак найнадійнішим рішенням є таємні вибори єдиного лідера (SSLE).
Таємні вибори єдиного лідера
У SSLE використовується розумна криптографія, яка гарантує, що лише вибраний валідатор знає, що його було вибрано. Для цього кожен валідатор надсилає зафіксоване значення в спільний секрет. Зафіксовані значення перемішуються, щоб ніхто не міг зіставити зафіксовані значення з валідаторами, але кожен валідатор точно знає, яке зафіксоване значення належить йому. Потім випадково вибирається зафіксоване значення. Якщо валідатор виявляє, що було вибрано його зафіксоване значення, він знає, що настала його черга пропонувати блок.
Провідна реалізація цієї ідеї називається Whiskopens in a new tab. Вона працює таким чином:
- Валідатори надсилають зафіксоване значення в спільний секрет. Схема фіксації передбачає, що зафіксоване значення можна прив’язати до особи валідатора, але також можна рандомізувати, щоб жодна третя сторона не могла зв’язати певне зафіксоване значення з певним валідатором.
- На початку епохи вибирається випадковий набір валідаторів для відбору зафіксованих значень у 16 384 валідаторів за допомогою RANDAO.
- Протягом наступних 8182 слотів (1 день) ті, хто пропонує блоки, перемішують і рандомізують зафіксовані значення, використовуючи власну секретну ентропію.
- Після перемішування RANDAO використовується для створення впорядкованого списку зафіксованих значень. Цей список розподіляється між слотами Ethereum.
- Валідатори бачать, що їхнє зафіксоване значення закріплено за певним слотом, і коли цей слот настає, вони пропонують блок.
- Ці кроки повторюються, щоб закріплення зафіксованих значень за слотами завжди випереджало поточний слот.
Завдяки цьому зловмисники не знають заздалегідь, який конкретний валідатор запропонує наступний блок, і не можуть виконувати DOS-атаки.
Таємні вибори не-єдиного лідера (SnSLE)
Існує також окрема пропозиція, що має на меті створити сценарій, в якому кожен валідатор має випадковий шанс запропонувати блок у кожному слоті, подібно до того, як пропозиція блоку вирішувалася за доказом виконаної роботи, відома як таємні вибори не-єдиного лідера (SnSLE). Для цього можна скористатися функцією RANDAO, яка використовується для випадкового вибору валідаторів у сучасному протоколі. Ідея з RANDAO полягає в тому, що шляхом змішування хешів, надісланих багатьма незалежними валідаторами, генерується достатньо випадкове число. У SnSLE ці хеші можна використовувати для вибору того, хто пропонуватиме наступний блок, наприклад, вибравши хеш із найменшим значенням. Діапазон дійсних хешів можна обмежити, щоб налаштувати ймовірність вибору окремих валідаторів у кожному слоті. Стверджуючи, що хеш має бути меншим за 2^256 * 5 / N, де N = кількість активних валідаторів, ймовірність вибору будь-якого окремого валідатора в кожному слоті становитиме 5/N. У цьому прикладі ймовірність того, що принаймні одна особа, яка пропонує блоки, згенерує дійсний хеш у кожному слоті, становить 99,3%.
Поточний прогрес
Обидва пропозиції SSLE та SnSLE ще досліджуються. Наразі немає завершеної специфікації для жодної ідеї. Пропозиції SSLE та SnSLE не можна реалізувати одночасно. Перед запуском потрібно провести більше досліджень, створити прототипи й впровадити їх у публічних тестових мережах.
Для подальшого читання
Останні оновлення сторінки: 11 квітня 2024 р.