Останнє дослідження Віталіка: як усунути ризики, спричинені великою кількістю подвійних застав у Ethereum?

原文标题:《Зміни протоколу та пулу ставок, які можуть покращити децентралізацію та зменшити витрати на консенсус》

Автор: Віталік Бутерін

Складено: bayemon.eth, ChainCatcher

*Окрема подяка Майку Нойдеру, Джастіну Дрейку та іншим за відгуки та рецензії. Дивіться також: попередні публікації Майка Нойдера, Данкрада Фейста та arixon.eth на подібні теми. *

Можна сказати, що поточний статус розвитку Ethereum включає велику кількість дворівневого стекінгу (дворівневий стекінг). Згаданий тут подвійний стекінг відноситься до моделі стекінгу з двома типами учасників.

  1. Оператор вузла: керуйте вузлами та використовуйте власну репутацію або певну суму власного капіталу як заставу.
  2. Агент-делегатор: Агенти закладають певну суму Ethereum, мінімальної суми немає, і немає додаткових обмежень щодо інших методів участі, окрім застави.

Цей новий подвійний стейкінг генерується через велику участь у пулах стейкінгу, які забезпечують ліквідність для токенів стейкінгу (LST). (У цьому режимі знаходяться як Rocket Pool, так і Lido).

Однак поточна подвійна застава має два недоліки:

  1. Ризик централізації операторів вузлів: поточний механізм вибору операторів вузлів у всіх пулах ставок все ще надто централізований.
  2. Непотрібний тягар консенсусу: кожна епоха Ethereum L1 потребує перевірки близько 800 000 підписів, що є величезним навантаженням для одного слота. Крім того, оскільки пули ставки ліквідності вимагають більше коштів, сама мережа не отримує повної вигоди від цього навантаження. Таким чином, якщо мережа Ethereum може досягти розумної децентралізації та безпеки, не вимагаючи від кожного учасника підпису відповідно до періоду, тоді спільнота може прийняти таке рішення, фактично зменшуючи кількість підписів за період.

У цій статті буде описано вирішення двох вищезазначених проблем, ** спочатку припускаючи, що більша частина капіталу знаходиться у тих, хто не бажає особисто керувати вузлами ставки в їх поточному вигляді, підписувати інформацію про кожен слот, блокувати депозит і перерозподіліть його, оскільки кошти скорочуються. Отже, у цьому випадку, яку роль можуть зіграти ці люди, щоб усе ще робити вагомий внесок у децентралізацію та безпеку мережі? **

**Як зараз працює подвійна застава? **

Зараз двома найпопулярнішими пулами ставок є Lido та RocketPool. Що стосується Lido, то дві сторони-учасники:

  1. Оператор вузла: проголосував Lido DAO, що означає, що його фактично обирають власники LDO. Коли хтось вносить ETH в систему смарт-контрактів Lido, буде створено stETH, оператор вузла може покласти його в заставу пул (але оскільки сертифікат зняття прив’язаний до адреси смарт-контракту, оператор не може зняти гроші за бажанням)
  2. Агент: коли хтось вносить ETH у систему смарт-контрактів Lido, stETH буде згенеровано, і оператор вузла може використовувати його як заставу (але оскільки ваучер на зняття прив’язаний до адреси смарт-контракту, оператор не можна знімати гроші за бажанням)

Для Rocket Pool це:

  1. Оператор вузла: Будь-хто може стати оператором вузла, надавши 8 ETH і певну кількість токенів RPL.
  2. Агент: коли хтось вносить ETH в систему смарт-контрактів Rocket Pool, буде згенеровано rETH, і оператор вузла може використовувати його як заставу (також тому, що ваучер на зняття прив’язаний до адреси смарт-контракту, оператор не може зняти за бажанням).

Роль агента

У цих системах (або в нових системах, увімкнутих потенційними майбутніми змінами протоколів) ключове питання, яке слід поставити: **Який сенс мати агента з точки зору протоколу? **

Щоб зрозуміти глибоке значення цієї проблеми, ми спочатку думаємо про зміни протоколу, згадані в публікації, які обмежать покарання до 2ETH. Rocket Pool також зменшить кількість ставок операторів вузлів до 2ETH і частку ринку Rocket Pool зросте до 100%/(для стейкерів і власників ETH, оскільки rETH стає безризиковим, майже всі власники ETH стануть власниками rETH або операторами вузлів).

Припустимо, 3% прибутку для власників rETH (включно з винагородами в протоколі та пріоритетними зборами + MEV) і 4% прибутку для операторів вузлів. Ми також припускаємо, що загальна пропозиція ETH становить 100 мільйонів.

Результати розрахунку такі. Щоб уникнути розрахунків складних відсотків, ми розраховуватимемо доходи щодня:

Останнє дослідження Віталіка: як усунути ризики, спричинені великою кількістю подвійних застав у Ethereum?

Тепер, якщо припустити, що Rocket Pool не існує, мінімальний депозит на учасника знижується до 2 ETH, загальна ліквідність обмежена 6,25 мільйонами ETH, а норма прибутку оператора вузла знижується до 1%. Порахуємо ще раз:

Останнє дослідження Віталіка: як усунути ризики, спричинені великою кількістю подвійних застав у Ethereum?

Розглянемо обидва сценарії з точки зору вартості атаки. У першому випадку зловмисник не буде реєструватися як агент, тому що агент по суті не має права знімати гроші, тому це безглузде. Тому вони передадуть весь свій ETH і стануть операторами вузлів. Щоб досягти 1/3 загальної суми ставок, їм потрібно буде поставити 2,08 мільйона Ethereum (що, чесно кажучи, все ще є досить великою цифрою).У другому випадку зловмиснику потрібно буде поставити кошти лише для досягнення Для 1/3 загальної суми їм ще потрібно інвестувати 2,08 мільйона Ethereum.

**З точки зору економіки стейкинга та вартості атаки кінцевий результат обох випадків абсолютно однаковий. **Частка загального обсягу ETH, що зберігається операторами вузлів, щодня збільшується на 0,00256%, а частка загального обсягу ETH, що зберігається операторами, що не є вузлами, зменшується на 0,00017% щодня. Вартість атаки становить 2,08 млн ETH. ** Таким чином, у цій моделі агент, здається, став безглуздою машиною Руба Голдберга, і раціональне співтовариство навіть схильне видалити посередника, значно зменшити винагороду за ставки та обмежити загальну суму поставлених ETH до 6,25 мільйонів осіб. **

Звичайно, ця стаття не закликає зменшувати винагороду за ставку в 4 рази та обмежувати загальну суму ставки до 6,25 мільйонів. Навпаки, суть цієї статті полягає в тому, що ключовим атрибутом добре функціонуючої системи ставок є те, що агенти повинні нести важливі обов’язки в загальній системі**. Крім того, це не мало б значення, якби агенти були в основному мотивовані тиском спільноти та альтруїзмом вживати правильних дій; зрештою, саме це спонукає децентралізовані рішення з високим рівнем безпеки сьогодні бути головною силою.

Обов'язки агентів

Якою б була ця роль, якби агенти могли відігравати значущу роль у системі ставок?

Я думаю, що є дві категорії відповідей:

  • **Вибір агента: **Агенти можуть вибрати, яким операторам вузлів довірити свої ставки. «Вага» операторів вузлів у механізмі консенсусу пропорційна загальній частці, яка їм довірена. Наразі механізм вибору агентів все ще обмежений, тобто власники rETH або stETH можуть зняти свої ETH і перейти до іншого пулу, але фактичну доступність вибору агентів можна значно покращити.
  • Участь у механізмі консенсусу: Делегати можуть вибрати певну роль у механізмі консенсусу. Відповідальність «легша», ніж повна підписка, і не буде тривалого періоду виходу та зниження ризику, але вона все ще може грати роль Перевіряє та врівноважує роль операторів вузла.

Покращити вибір агента

Є три способи збільшити право вибору вашого представника:

  1. Покращено інструменти голосування в пулі
  2. Збільшення конкуренції між пулами
  3. Виправити права представництва

Наразі голосування в пулі не є практичним: у Rocket Pool будь-хто може стати оператором вузла, а в Lido голосування вирішують власники LDO, а не власники ETH. Lido висунув пропозицію щодо подвійного управління LDO + stETH. Вони можуть активувати захисний механізм, який запобігає новим голосам і, таким чином, запобігає додаванню або видаленню операторів вузлів. Це якимось чином дає можливість власникам stETH висловитися. Однак ця сила обмежена і може бути більш потужною.

Конкуренція між пулами вже існує, але є відносно слабкою. Основна проблема полягає в тому, що токени менших пулів є менш ліквідними, їм важче завоювати довіру та менше підтримуються програмами.

**Ми можемо вирішити перші дві проблеми, обмеживши суму штрафу меншою сумою, наприклад 2 або 4 ETH. **Залишок ETH можна безпечно внести та миттєво зняти, дозволяючи двостороннім викупам залишатися актуальними для менших пулів ставок. Ми можемо вирішити третю проблему, створивши контракт на загальну емісію для управління LST (подібний до контрактів, які ERC-4337 і ERC-6900 використовують для гаманців), щоб ми могли гарантувати, що будь-які токени, випущені через цей контракт, є безпечними.

Наразі в угоді немає твердих представницьких повноважень, але така ситуація, ймовірно, існуватиме в майбутньому. Це включатиме логіку, схожу на наведену вище ідею, але реалізовану на рівні протоколу. Перегляньте цю статтю про плюси та мінуси затвердіння речей.

Ці ідеї покращують статус-кво, але переваги, які вони пропонують, обмежені**. Існують проблеми з управлінням голосуванням токенів, і, зрештою, будь-яка форма нестимулюваного вибору проксі є лише формою голосування токеном; це завжди було моєю головною проблемою щодо делегованого підтвердження частки. **Тому також варто розглянути шляхи досягнення більшої консенсусної участі.

Консенсусна участь

Навіть якщо відкинути поточні проблеми зі ставкою ліквідності, існують обмеження щодо поточних незалежних методів ставок. Якщо припустити, що використовується остаточність одного слота, кожен слот може ідеально обробляти приблизно від 100 000 до 1 000 000 підписів BLS. Навіть якщо ми використовуємо рекурсивні SNARK для агрегування підписів, кожному підпису потрібно призначити бітове поле учасника для відстеження. **Якщо Ethereum стане мережею глобального масштабу, повністю децентралізованих бітових полів для зберігання буде недостатньо: 16 МБ у кожному слоті можуть підтримувати лише приблизно 64 мільйони стейкерів.

З цієї точки зору є цінним розділити ставки на рівні вищої складності, які можна зменшити, і рівні нижчої складності, де кожен слот буде активним, але може мати лише 10 000 учасників. Рівні нижчої складності лише іноді викликаються до участі. Рівні нижчого рівня складності можуть бути повністю звільнені від знижок, або учасники можуть випадковим чином отримати можливість внести депозит протягом кількох слотів і стати цілями для знижок.

На практиці цього можна досягти, збільшивши обмеження балансу валідатора, а потім підвищивши порогове значення балансу (наприклад, 2048 ETH), щоб визначити, які існуючі валідатори переходять на вищі чи нижчі рівні складності.

Ось кілька пропозицій щодо того, як можуть працювати ці невеликі ставки:

  1. Для кожного слота буде випадковим чином обрано 10 000 малих стейкерів, які зможуть підписати те, що, на їхню думку, є репрезентативним для слота. Запустіть правило вибору вилки LMD GHOST, використовуючи невеликі ставки як вхідні дані. Якщо є певна розбіжність між вибором форка, керованим малими стейкерами, і вибором форка, керованим операторами вузла, клієнт користувача не прийме жодного блоку як остаточне підтвердження та відобразить помилку. Це змушує громаду втручатися у вирішення ситуації.
  2. Агенти можуть надсилати транзакції, сповіщаючи в мережу, що вони онлайн і бажають виступати в якості дрібних стейкерів протягом наступної години. Розрахунок повідомлення (блоку або підтвердження), надісланого вузлом, вимагає, щоб як вузол, так і випадково вибраний агент підписали інформацію про підтвердження вузла**.
  3. Агенти можуть надсилати транзакції, сповіщаючи мережу про те, що вони в режимі онлайн і готові виступати в якості дрібних стейкерів протягом наступної години. Кожну епоху 10 випадкових агентів вибираються як постачальники списку включення, і ще 10 000 агентів вибираються як виборці. Вони вибираються перед k-slots і мають вікно k-slot для публікації повідомлення в ланцюжку, що підтверджує їх онлайн-присутність. Кожен підтверджений вибраний постачальник списку включення може опублікувати список включення, якщо для кожного списку включення трансакція, включена в цей список включення, або голосування загального 1 вибраного електорату вказує на те, що список включення недоступний, інакше блокування вважатиметься недійсним .

Спільним для цих невеликих вузлів ставок є те, що їм не потрібно активно брати участь у кожному слоті або навіть потрібні лише легкі вузли, щоб завершити всю роботу. Таким чином, розгортання вузла вимагає лише перевірки рівня консенсусу, якого оператори вузла можуть досягти за допомогою програм або плагінів браузера, які здебільшого пасивні та не потребують обчислювальних витрат, вимог до апаратного забезпечення чи технічного ноу-хау. Дуже низький і навіть не вимагає потрібна передова технологія, така як ZK-EVM.

Ці «малі актори» також мають спільну мету: запобігти перегляду транзакцій більшістю 51% операторів вузлів. **Перший і другий типи також можуть перешкодити більшості людей брати участь у остаточному відновленні. Третій більш безпосередньо стосується цензури, але він більш сприйнятливий до вибору операторів більшості вузлів.

Останнє дослідження Віталіка: як усунути ризики, спричинені великою кількістю подвійних застав у Ethereum?

Ці ідеї написані з точки зору рішення подвійного стейкинга, реалізованого в протоколі, але їх також можна реалізувати як функцію пулів стейкингу. Ось кілька конкретних ідей реалізації:

  1. З точки зору протоколу, кожен верифікатор може встановити два ключі застави: безперервний ключ застави P і зв’язану адресу Ethereum, яку можна викликати, і вивести швидкий ключ застави Q. Відстеження сигнатурної інформації вузла для вибору розгалуження представлено P, а підписана інформація представлена Q. Якщо результати зберігання PQ несумісні, завершення будь-якого блоку не буде прийнято, а пул ліквідності відповідатиме за випадковий вибір представників.
  2. Протокол може залишатися в основному незмінним, але відкритий ключ валідатора на цей період буде встановлено на P+Q. Зауважте, що для скорочень два повідомлення, які можна скоротити, можуть мати різні Q-ключі, але вони матимуть однаковий P-ключ; проект скорочення повинен врахувати цей випадок.
  3. Клавішу Q можна використовувати лише в протоколі для підпису та перевірки списків включення в блоках. У цьому випадку Q може бути інтелектуальним контрактом, а не одним ключем, тож пул ставок може використовувати його для реалізації складнішої логіки голосування, приймаючи включний список від випадково вибраного постачальника або достатньо Вказує на те, що список, що містить, недоступний для голосування .

на завершення

Якщо правильно впровадити, точне налаштування дизайну підтвердження частки може вирішити дві проблеми одним махом:

  1. Надайте можливість тим, хто не має ресурсів або можливості проводити незалежне підтвердження частки сьогодні, брати участь у підтвердження частки, таким чином зберігаючи більше повноважень у своїх руках: зокрема (i) право вибирати, які вузли підтримувати * *та (ii) активно брати участь у досягненні консенсусу в якийсь спосіб, який є легшим, але все ж значущим, ніж повна робота вузла підтвердження частки. Не всі учасники виберуть один або обидва з цих варіантів, але будь-який учасник, який вибере один або обидва з цих варіантів, відчує значне покращення в порівнянні зі статус-кво.
  2. Зменшіть кількість підписів, які консенсусний рівень Ethereum повинен обробити в кожному слоті, навіть у режимі завершеності з одним слотом, до меншої кількості, наприклад, приблизно 10 000. Це також допоможе з децентралізацією, спростивши для всіх запуск вузлів перевірки.

Для цих рішень вирішення проблеми можна знайти на різних рівнях абстракції: дозволи, надані користувачам у межах протоколів підтвердження частки, вибір користувача між протоколами підтвердження частки та встановлення в межах протоколів. Цей вибір слід ретельно обміркувати, і часто краще вибрати мінімально життєздатну установку, щоб мінімізувати складність протоколу та ступінь змін в економіці протоколу, при цьому досягаючи бажаних цілей.

Переглянути оригінал
Ця сторінка може містити контент третіх осіб, який надається виключно в інформаційних цілях (не в якості запевнень/гарантій) і не повинен розглядатися як схвалення його поглядів компанією Gate, а також як фінансова або професійна консультація. Див. Застереження для отримання детальної інформації.
  • Нагородити
  • Прокоментувати
  • Поділіться
Прокоментувати
0/400
Немає коментарів
  • Закріпити