Автор: Віталік Бутерін, укладач bayemon.eth Джерело: ChainCatcher
Особлива подяка Майку Нойдеру, Джастіну Дрейку та іншим за відгуки та огляд. Дивіться також: Mike Neuder, Dankrad Feist та arixon.eth попередні статті на схожі теми.
Можна сказати, що поточний статус розвитку Ethereum включає велику кількість дворівневого стейкінгу, а подвійний стейкінг тут відноситься до моделі стейкінгу з двома типами учасників.
Цей новий подвійний стейкінг генерується за допомогою великої кількості пулів стейкінгу, які беруть участь у наданні токенів стейкінгу ліквідності (LST). (І Rocket Pool, і Lido знаходяться в цьому режимі.)
Однак поточний подвійний стейкінг має два недоліки:
У цій статті будуть описані рішення обох цих проблем, спочатку припускаючи, що більша частина капіталу знаходиться в руках тих, хто не бажає особисто управляти стейкінг-вузлами, підписувати інформацію на кожному слоті, блокувати депозити і перерозподіляти кошти в їх поточному вигляді, то яку роль ці люди можуть зіграти в цій ситуації і при цьому зробити значний внесок в децентралізацію і безпеку мережі?
Двома найпопулярнішими пулами стейкінгу є Lido та RocketPool, а у випадку Lido двома залученими сторонами є:
Для Rocket Pool це:
У цих системах (або в нових системах, що уможливлюються потенційними майбутніми змінами протоколу) ключове питання, яке слід поставити: який сенс мати агента з точки зору протоколу?
Щоб зрозуміти глибокі наслідки цього питання, давайте спочатку розглянемо, що для змін протоколу, згаданих у дописі, тобто штраф за зменшення обмежений 2ETH, Rocket Pool також зменшить суму стейкінгу операторів вузлів до 2ETH, а частка ринку Rocket Pool збільшиться до 100%/ (для стейкерів і власників ETH майже всі власники ETH стануть власниками rETH або операторами вузлів, оскільки rETH стане безризиковим).
Припускаючи, що прибутковість становить 3% для власників rETH (включаючи винагороди в протоколі та пріоритетні комісії + MEV), оператори вузлів матимуть прибутковість у розмірі 4%. Ми також припускаємо, що загальна пропозиція ETH становитиме 100 мільйонів.
Результат розрахунку наступний. Щоб не ускладнювати розрахунок, ми будемо розраховувати заробіток на щоденній основі:

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

Розглянемо обидва випадки з точки зору вартості атаки. У першому випадку зловмисник не буде реєструватися як агент, оскільки агент по суті не має ніякого права на вихід, тому це не має сенсу. Таким чином, вони використовуватимуть усі свої 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 мільйона. Натомість, ідея цієї статті полягає в тому, що добре функціонуюча система стейкінгу повинна мати ключовий атрибут, а саме те, що агенти повинні брати на себе значну відповідальність у всій системі. Крім того, не має значення, чи сильно агент мотивований тиском спільноти та альтруїзмом, щоб вжити правильних заходів; Зрештою, це те, що мотивує людей сьогодні впроваджувати децентралізовані рішення для стейкінгу з високим рівнем безпеки.
Якщо агенти можуть відігравати важливу роль у системі стейкінгу, якою може бути ця роль?
Я думаю, що є два типи відповідей:
Є три способи розширити вибір повноважень делегатами:
Наразі голосування в пулі насправді не є практичним: у Rocket Pool будь-хто може бути оператором вузла, а в Lido голосування вирішується власниками LDO, а не власниками ETH. Lido висунула пропозицію щодо подвійного управління LDO + stETH, де вони могли б активувати механізм захисту, який запобігає додаванню або видаленню нових голосів і, таким чином, операторів вузлів, що певним чином дає власникам stETH право голосу. Проте ця влада обмежена і може бути сильнішою.
Конкуренція між пулами вже існує сьогодні, але вона відносно слабка. Основна проблема полягає в тому, що стейкінг токенів у менших пулах стейкінгу менш ліквідний, йому важче довіряти та менше підтримується програмами.
Ми можемо вирішити перші дві проблеми, обмеживши суму штрафу меншою сумою, наприклад, 2 або 4 ETH. Решту ETH можна безпечно вносити та негайно виводити, що дозволяє двостороннім обмінам залишатися дійсними для менших пулів стейкінгу. Ми можемо покращити третю проблему, створивши основний контракт на випуск, який призначений для управління LST (подібно до контракту, який використовується ERC-4337 та ERC-6900 для гаманців), щоб ми могли гарантувати, що будь-які токени стейкінгу, випущені за цим контрактом, є безпечними.
Наразі в угоді немає закріпленого представництва, але такі ситуації видаються ймовірними на майбутнє. У ньому буде задіяна логіка, схожа на вищеописану ідею, але реалізована на рівні протоколу. Про плюси і мінуси застигання речей дивіться в цій статті.
Ці ідеї є покращенням у порівнянні зі статус-кво, але всі вони пропонують обмежені переваги. Існують проблеми з управлінням голосуванням токенів, і в кінцевому підсумку будь-яка форма нестимулюючого вибору проксі є лише формою голосування за токени; Це завжди було моєю головною претензією до делегованого proof-of-stake. Тому також важливо розглянути шляхи досягнення більш тісної участі в консенсусі.
Навіть без урахування поточних питань стейкінгу ліквідності, існує обмеження поточного методу незалежного стейкінгу. Якщо припустити, що один слот є остаточним, в ідеалі кожен слот може обробити від 100 000 до 1 000 000 підписів BLS. Незважаючи на те, що ми використовуємо рекурсивні SNARK для агрегування підписів, для відстеження підписів кожному підпису має бути надано бітове поле учасника. Якби Ethereum став мережею глобального масштабу, повністю децентралізованого зберігання бітових полів було б недостатньо: 16 МБ на слот підтримували б лише близько 64 мільйонів стейкерів.
З цієї точки зору, є сенс розділити стейкінг на рівні з вищою складністю, які будуть діяти для кожного слота, але можуть мати лише 10 000 учасників, і рівні нижчої складності, які лише зрідка викликаються до участі. Шари нижчої складності можуть бути повністю звільнені від обезголовлення, або учасникам випадковим чином може бути надана можливість внести депозит у межах кількох слотів і стати мішенями для депонування.
По суті, це можна зробити, збільшивши ліміт балансу валідатора з подальшим пороговим значенням балансу (наприклад, 2048 ETH), щоб визначити, які існуючі валідатори входять на вищий або нижчий рівень складності.
Ось кілька пропозицій щодо того, як працюють ці ролі мікростейкінгу:
Спільним для цих невеликих вузлів стейкінгу є те, що їм не потрібно брати активну участь у кожному слоті або навіть легких вузлах, щоб виконувати всю роботу. Як наслідок, розгортання вузлів вимагає лише рівня консенсусу верифікації, який оператори вузлів можуть реалізувати за допомогою додатків або плагінів браузера, які здебільшого є пасивними та вимагають незначних накладних витрат на обчислення, вимог до апаратного забезпечення чи ноу-хау, або навіть передових технологій, таких як ZK-EVM.
Ці «малі ролі» також мають спільну мету: запобігти цензурі транзакцій 51% операторів більшості вузлів. І перше, і друге також заважають більшості брати участь в остаточному скороченні. Третя більше фокусується безпосередньо на цензурі, але вона більш сприйнятлива до вибору більшості операторів вузлів.

Ці ідеї написані з точки зору впровадження рішення подвійного стейкінгу в протокол, але вони також можуть бути реалізовані як функція стейкінг-пулу. Ось кілька конкретних ідей для реалізації:
При правильній реалізації тонке налаштування дизайну proof-of-stake може вирішити дві проблеми одним махом:
Для цих рішень рішення проблеми можна знайти на різних рівнях абстракції: дозволи, надані користувачам у протоколі proof-of-stake, вибір користувача між протоколами proof-of-stake і встановлення всередині протоколу. Цей вибір повинен бути ретельно обдуманий, і, як правило, краще вибрати мінімально можливе встановлення, щоб мінімізувати складність протоколу і ступінь зміни економіки угоди, при цьому досягаючи бажаних цілей.
Джерело: Golden Finance