Що таке технологія розподіленого валідатора?
Технологія розподіленого валідатора (DVT) — це підхід до безпеки валідатора, який розподіляє управління ключами та обов'язки з підписання між кількома сторонами, щоб зменшити кількість єдиних точок відмови та підвищити стійкість валідатора.
DVT розподіляє управління ключами та підписання шляхом розділення приватного ключа, який використовується для захисту валідатора, між багатьма комп'ютерами, об'єднаними в «кластер». Це дозволяє деяким вузлам у кластері відключатися від мережі, зберігаючи при цьому вузол валідатора активним, оскільки необхідну роботу з валідації може виконувати підмножина машин у кожному кластері. Такий розподіл зменшує кількість єдиних точок відмови, роблячи валідатор більш надійним. Додатковою перевагою розподілу підписання в DVT є те, що зловмисникам дуже важко отримати доступ до ключа, оскільки він не зберігається повністю на жодній окремій машині.
DVT не є окремим способом стейкінгу. Це програмний рівень, який може використовувати будь-яке налаштування стейкінгу:
- Соло-стейкери можуть об'єднатися для спільного запуску валідатора, або окремий соло-стейкер може використовувати DVT для підвищення стійкості свого налаштування соло-стейкінгу.
- Сервіси стейкінгу та пули для спільного стейкінгу можуть використовувати DVT для підвищення стійкості та зміцнення своєї інфраструктури стейкінгу, або для розподілу операцій валідатора між багатьма незалежними операторами.
Навіщо нам потрібна DVT?
Безпека
Валідатори генерують дві пари публічних і приватних ключів: ключі валідатора для участі в консенсусі та ключі виведення для доступу до коштів. Хоча валідатори можуть зберігати ключі виведення в холодному сховищі, приватні ключі валідатора повинні бути в мережі 24/7 для підписання обов'язків, які цілодобово призначаються валідатору, таких як атестації та пропозиції блоків. Зберігання ключа в мережі наражає його на ризик крадіжки, і DVT обмежує цей ризик: у мережі завжди знаходяться лише частки ключа, і ніколи — повний ключ.
Якщо приватний ключ валідатора скомпрометовано, зловмисник може контролювати валідатор, що потенційно може призвести до слешингу або втрати ETH стейкера. DVT знижує цей ризик. Завдяки DVT оригінальний, повний ключ валідатора шифрується та розділяється на частки ключа. Частки ключа знаходяться в мережі, розподілені між кількома вузлами, які спільно керують валідатором, тоді як повний «майстер-ключ» надійно зберігається поза мережею. Такий розподіл можливий, оскільки валідатори Етеріуму використовують підписи BLS, які є адитивними, тобто повний ключ можна відновити шляхом підсумовування його складових частин. Часткові підписи, зроблені за допомогою часток ключа, об'єднуються в підпис, який є дійсним для повного ключа, тому сам повний ключ ніколи не потрібен для щоденного підписання. Коли кластер генерує новий ключ валідатора за допомогою розподіленої генерації ключів, повний приватний ключ ніколи не існує на жодній окремій машині.
Відсутність єдиних точок відмови
Коли валідатор розділений між кількома операторами та кількома машинами, він може витримувати збої окремого обладнання та програмного забезпечення без відключення від мережі. Ризик збоїв також можна зменшити, використовуючи різноманітні конфігурації обладнання та програмного забезпечення на вузлах у кластері. Багатооператорський розподіл не доступний за замовчуванням для конфігурацій валідатора з одним вузлом; він забезпечується проміжним програмним забезпеченням DVT.
Якщо один із компонентів машини в кластері виходить з ладу (наприклад, якщо в кластері валідатора є чотири оператори, і один з них використовує певний клієнт, який має помилку), інші можуть гарантувати, що валідатор продовжуватиме працювати.
Децентралізація
Ідеальний сценарій для Етеріуму — мати якомога більше незалежних валідаторів. Однак кілька провайдерів стейкінгу стали дуже популярними і на них припадає значна частина загальної кількості ETH у стейкінгу в мережі. DVT може дозволити цим операторам існувати, зберігаючи при цьому децентралізацію стейку. Це пов'язано з тим, що ключі для кожного валідатора розподілені між багатьма машинами, і для того, щоб валідатор став зловмисним, знадобилася б набагато більша змова.
Без DVT провайдерам стейкінгу простіше підтримувати лише одну або дві конфігурації клієнтів для всіх своїх валідаторів, що збільшує вплив помилки клієнта. DVT можна використовувати для розподілу ризику між кількома конфігураціями клієнтів і різним обладнанням, створюючи стійкість завдяки різноманітності.
DVT пропонує Етеріуму такі переваги:
- Децентралізація консенсусу доказу частки (PoS) Етеріуму
- Забезпечує безперебійну роботу мережі
- Створює відмовостійкість валідатора
- Робота валідатора з мінімізованою довірою
- Мінімізовані ризики слешингу та простою
- Покращує різноманітність (клієнт, дата-центр, розташування, регулювання тощо)
- Покращена безпека управління ключами валідатора
Як працює DVT?
Реалізації DVT зазвичай працюють як додаткове програмне забезпечення на кожній машині в кластері. Це програмне забезпечення діє як проміжне, розташовуючись між клієнтом валідатора вузла та його клієнтом консенсусу, де воно координує роботу з іншими вузлами в кластері, щоб обов'язки валідатора підписувалися колективно.
Рішення DVT містить такі компоненти:
- Схема поділу секрету Шаміра (відкривається в новій вкладці) — валідатори використовують ключі BLS (відкривається в новій вкладці). Приватний ключ валідатора можна розділити на кілька «часток ключа», і оскільки підписи BLS є адитивними, часткові підписи, зроблені за допомогою цих часток ключа, можна об'єднати в єдиний підпис, який є дійсним для повного ключа валідатора.
- Схема порогового підпису (відкривається в новій вкладці) — визначає кількість окремих часток ключа, необхідних для підписання обов'язків, наприклад, 3 з 4.
- Розподілена генерація ключів (DKG) (відкривається в новій вкладці) — криптографічний процес, який генерує частки ключа і використовується для розподілу часток існуючого або нового ключа валідатора між вузлами в кластері.
- Багатосторонні обчислення (MPC) (відкривається в новій вкладці) — повний ключ валідатора генерується таємно за допомогою багатосторонніх обчислень. Повний ключ ніколи не відомий жодному окремому оператору — вони завжди знають лише свою частину (свою «частку»).
- Протокол консенсусу — протокол консенсусу вибирає один вузол як пропонувача блоку. Він ділиться блоком з іншими вузлами в кластері, які додають свої частки ключа до сукупного підпису. Коли зібрано достатньо часток ключа, блок пропонується в Етеріумі.
Розподілені валідатори мають вбудовану відмовостійкість і можуть продовжувати працювати, навіть якщо деякі окремі вузли відключаються від мережі. Кластер вузла валідатора є стійким, навіть якщо деякі вузли в ньому виявляються зловмисними або неактивними.
DVT у промисловій експлуатації
Розподілені валідатори сьогодні працюють у Головній мережі в рамках соло-стейкінгу, сервісів стейкінгу та спільного стейкінгу. На дві мережі припадає більша частина цієї активності:
- Obol розробляє Charon, клієнт проміжного програмного забезпечення DVT з відкритим вихідним кодом, який дозволяє кластеру машин спільно керувати валідатором («командний стейкінг»). Групи виконують розподілену генерацію ключів і налаштовують свій кластер через DV Launchpad (відкривається в новій вкладці) від Obol. Кластери Obol використовуються у промисловій експлуатації протоколами стейкінгу та сервісами стейкінгу, включаючи модуль Simple DVT від Lido та програму Operation Solo Staker від EtherFi, яка залучає домашніх операторів до відмовостійких кластерів.
- SSV Network — це бездозвільна мережа незалежних операторів вузлів. Ключ валідатора розділяється на частки ключа і розподіляється між обраним набором операторів, які колективно виконують обов'язки валідатора; жоден оператор ніколи не володіє повним ключем. Сервіси стейкінгу та пули запускають великі набори валідаторів на SSV, і, як і Obol, він використовується модулем Simple DVT від Lido.
Варіанти використання DVT
DVT має значні наслідки для ширшої індустрії стейкінгу:
Соло-стейкери
DVT уможливлює командний стейкінг: невелика група людей, наприклад, друзі, члени спільноти або незнайомці, скоординовані через launchpad, колективно запускають один валідатор на своїх власних машинах. Порогова кількість учасників групи (наприклад, 3 з 4) повинна бути в мережі, щоб валідатор виконував свої обов'язки, тому простій, збій обладнання або помилка жодного окремого учасника не призведе до відключення валідатора. Коли ключ створюється за допомогою розподіленої генерації ключів, жоден учасник ніколи не володіє повним ключем підписання.
DVT також уможливлює некастодіальний стейкінг, дозволяючи вам розподілити ваш ключ валідатора між віддаленими вузлами, зберігаючи при цьому повний ключ повністю поза мережею. Це означає, що стейкерам не обов'язково запускати власне обладнання, а розподіл часток ключа допомагає захиститися від потенційних зломів.
Стейкінг як послуга (SaaS)
Оператори (такі як пули для спільного стейкінгу та інституційні стейкери), які керують багатьма валідаторами, можуть використовувати DVT для зниження своїх ризиків. Розподіляючи свою інфраструктуру, вони можуть додати надмірність до своїх операцій та урізноманітнити типи обладнання, яке вони використовують.
DVT розподіляє відповідальність за управління ключами між кількома вузлами, що означає, що деякі операційні витрати також можуть бути розподілені. DVT також може знизити операційні ризики та витрати на страхування для провайдерів стейкінгу.
Пули для спільного стейкінгу
Через стандартні налаштування валідатора пули для спільного стейкінгу та провайдери ліквідного стейкінгу історично мали покладати значну довіру на кожного окремого оператора, оскільки прибутки та збитки усуспільнюються в межах пулу. Вони також покладалися на операторів у захисті ключів підписання, оскільки до появи DVT у них не було іншого вибору.
Незважаючи на те, що традиційно докладаються зусилля для розподілу ризиків шляхом розподілу стейків між кількома операторами, кожен оператор все одно самостійно управляє значним стейком. Покладання на одного оператора створює величезні ризики, якщо він працює неефективно, стикається з простоями, зазнає компрометації або діє зловмисно.
Завдяки використанню DVT довіра, яка вимагається від кожного окремого оператора, може бути зменшена. Пули можуть дозволити операторам утримувати стейки без необхідності зберігання ключів валідатора (оскільки використовуються лише частки ключа). Це також дозволяє розподіляти керовані стейки між більшою кількістю операторів (наприклад, замість одного оператора, який керує 1000 валідаторами, DVT дозволяє колективно керувати цими валідаторами кільком операторам). Різноманітні конфігурації операторів допомагають гарантувати, що якщо один оператор вийде з ладу, інші все одно зможуть здійснювати атестацію. Отримана надмірність і диверсифікація можуть призвести до кращої продуктивності та стійкості, одночасно максимізуючи винагороди.
Ще однією перевагою мінімізації довіри до одного оператора є те, що пули для спільного стейкінгу можуть дозволити більш відкриту та бездозвільну участь операторів. Деякі пули для спільного стейкінгу роблять це у промисловій експлуатації вже сьогодні. Багатооператорські кластери DVT дозволяють протоколам об'єднувати домашніх стейкерів і менших операторів з більшими професійними, поєднуючи куровані та бездозвільні набори операторів.
Потенційні недоліки використання DVT
- Додатковий компонент — впровадження вузла DVT додає ще одну частину, яка потенційно може бути несправною або вразливою. Це пом'якшується наявністю кількох реалізацій програмного забезпечення DVT, так само як існує кілька клієнтів для рівня консенсусу та рівня виконання.
- Операційні витрати — оскільки DVT розподіляє валідатор між кількома сторонами, для роботи потрібно більше вузлів замість одного, що призводить до збільшення операційних витрат.
- Потенційно збільшена затримка — оскільки DVT використовує протокол консенсусу для досягнення консенсусу між кількома вузлами, що керують валідатором, це потенційно може призвести до збільшення затримки.
Часті запитання
Ні. «3 з 4» — це лише найменша поширена конфігурація, і вона використовується як приклад на цій сторінці. Розмір кластера та поріг підписання вибираються під час створення кластера.
Розмір кластерів зазвичай підбирається таким чином, щоб поріг становив супербільшість у дві третини вузлів, що дозволяє кластеру продовжувати підписання, допускаючи наявність несправних або відключених учасників. Кластер із 4 вузлів підписує за допомогою 3 і допускає 1 збій; 7 вузлів підписують за допомогою 5 і допускають 2; 10 вузлів підписують за допомогою 7 і допускають 3. Більші кластери забезпечують більшу відмовостійкість ціною більшої кількості машин для запуску та більшої координації між ними.
Детальніше про розмір кластера та стійкість (відкривається в новій вкладці)
Додаткова література
- Технологія розподіленого валідатора (DVT) Етеріуму — повний вступ (відкривається в новій вкладці) — Cyfrin
- Що таке DVT і як вона покращує стейкінг в Етеріумі? (відкривається в новій вкладці) — Obol
- Специфікації розподіленого валідатора Етеріуму (високий рівень) (відкривається в новій вкладці)
- Технічні специфікації розподіленого валідатора Етеріуму (відкривається в новій вкладці)
- Документація Obol (відкривається в новій вкладці)
- Документація SSV Network (відкривається в новій вкладці)
- Модуль Simple DVT від Lido (відкривається в новій вкладці)
- Демонстраційний додаток схеми поділу секрету Шаміра (відкривається в новій вкладці)
