Перейти до основного вмісту

Поза протоколом Етеріуму: розділення пропоузера та білдера (PBS)

Презентація про розділення пропоузера та білдера (PBS) — шаблон проєктування, який розділяє ролі створення блоку та пропонування блоку в Етеріумі.

Date published: 5 лютого 2024 р.

Ця презентація пояснює, як виробництво блоків в Етеріумі еволюціонувало від простої моделі до складної системи постачання, що включає валідаторів, будівельників, шукачів та ретрансляторів (relays). Барнабе Монно (Barnabé Monnot) з Фундації Ethereum детально розповідає, чому існує розділення пропоузера та білдера (PBS), як ретранслятори MEV-Boost виступають посередниками у відносинах між пропонувальниками та будівельниками, і які внутрішньопротокольні рішення досліджуються для зменшення залежності від довіри та покращення стійкості до цензури, розподілу MEV і децентралізації валідаторів.

Ця стенограма є доступною копією оригінальної стенограми відео (opens in a new tab), опублікованої CBER Форумом. Її було злегка відредаговано для зручності читання.

Вступ (0:00)

Мене звати Барнабе Монно. Я трохи розповім про те, що відбувається поза протоколом, і зокрема про концепцію розділення пропоузера та білдера (PBS), а також про те, як вона працює з ретрансляторами та великою кількістю позамережевої інфраструктури.

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

Чому валідатори використовують будівельників (0:46)

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

Отже, ми спостерігаємо, що хоча валідатори продовжують виконувати обов'язки щодо консенсусу самостійно, вони вирішують передати обов'язки з виконання будівельникам. Насправді це досить значний ринок. Сьогодні близько 90% блоків створюються зовнішніми будівельниками, і так відбувається приблизно з грудня 2022 року — через три місяці після Злиття. Медіанна виплата від будівельника валідатору становить близько 120 доларів за блок. Щодня виплачується 1 мільйон доларів, і кожні 12 секунд існує можливість для цього ринку дійти певної згоди між одним пропонувальником та одним будівельником.

Сьогодні я хочу обговорити, чому валідатори використовують будівельників, звідки беруться ці відносини — по ходу справи я трохи розповім про MEV та шукачів — потім я розповім вам, як ці відносини опосередковуються, і поговорю про ретранслятори, які існують сьогодні, та внутрішньопротокольні рішення, над якими ми думаємо. Я також хочу трохи розширити картину, тому що легко подивитися на ці схеми і подумати: «О, це дуже лякає, а як щодо децентралізації?». Я хочу дати вам розуміння того, що це компроміси, на які ми йдемо, але, на мою думку, вони робляться в правильному напрямку.

Наївна модель та MEV (3:04)

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

За останні 5 років було досить яскраво помічено, що це дає багато влади виробнику — зокрема, право останнього погляду. Вони бачать, що хочуть зробити користувачі, наприклад, вони бачать, що користувач хоче здійснити обмін, і можуть використати цю інформацію, щоб отримати прибуток для себе.

У кращому випадку цей прибуток надходить від природної ринкової функції, такої як арбітраж. У гіршому випадку він може надходити безпосередньо з кишені користувача, як у випадку з сендвіч-атаками. Наприклад, користувач створює ордер на обмін токена A на токен B на якомусь ринку, наприклад Юнісвоп. Ця транзакція створить ціновий дисбаланс з іншим ринком, розгорнутим у тому ж ланцюзі. Виробник може побачити транзакцію в очікуванні і вставити власну транзакцію, яка здійснює обмін у зворотному напрямку на іншому ринку, привласнюючи арбітраж по дорозі.

Це дійсно дає багато влади виробнику і робить позицію виробника блоку надзвичайно цінною. Цей привілей виробника — це те, що ми зараз називаємо максимальною видобуваною цінністю (MEV).

Роль шукачів (5:43)

На практиці виробники можуть не знати, де знаходиться цінність. У вас можуть бути дещо недосвідчені виробники блоків — як уже згадувалося, будь-хто може стати валідатором, якщо у нього достатньо капіталу і він здатний запустити вузол. На практиці я можу не знати, як робити арбітраж або взагалі нічого не знати про фінансові ринки. Чого б я хотів, так це щоб хтось сказав мені, де ці можливості — ринок людей, які змагаються за те, щоб сказати мені, що найкраще зробити як виробнику блоку.

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

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

Чому нам потрібні будівельники (8:16)

Що робити, якщо виробник не викликає довіри? Після Злиття в Етеріумі у нас є соло-стейкери — близько 6% мережі — яких ми не знаємо. Шукачі насправді не захочуть надсилати пакети цим пропонувальникам блоків, тому що це занадто небезпечно.

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

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

Як працюють ретранслятори MEV-Boost (13:01)

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

Те, що ми використовуємо сьогодні як довірену третю сторону, ми називаємо ретранслятором (relay) — ретранслятор MEV-Boost. MEV-Boost — це назва протоколу, який опосередковує взаємодію між будівельниками та валідаторами. Ретранслятор знаходиться посередині, щоб гарантувати, що угода буде виконана обома сторонами.

Ретранслятор виконує кілька ролей. По-перше, йому потрібно перевірити корисне навантаження будівельника — ретранслятор бачить у відкритому вигляді блок, який створює будівельник, і може перевірити, що він дійсний і може бути запропонований мережі. Існує варіація, яка називається оптимістичним ретранслятором, де ретранслятор не перевіряє дійсність негайно, а просить у будівельника заставу на випадок, якщо блок зрештою виявиться недійсним.

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

Економіка ретрансляторів складна. Деякі з них безкоштовні, щось на кшталт суспільних благ. Інші розробили моделі отримання доходу — наприклад, ретранслятор Ultrasound має «коригування ставки», де вони беруть різницю між найкращою ставкою та другою найкращою як дохід.

Довіра та ретранслятор (17:01)

Ретранслятор є довіреною третьою стороною в системі. Скажімо, ретранслятор подає недійсний блок — люди негайно це побачать, оскільки він підписаний, і дуже швидко відключаться від цього ретранслятора. Ви навіть можете поширити якийсь доказ помилки. Протягом 5 блоків, якщо ретранслятор не працює належним чином, люди перестануть йому довіряти і просто відключаться.

Отже, це базується на довірі, але з припущенням, що його можна досить швидко замінити. Ретранслятори не є валідаторами — вони не обов'язково мають стейк і не повинні мати нічого спільного з Етеріумом. Це можуть бути люди, яких ми знаємо і любимо сьогодні, але завтра це може бути будь-хто.

Закріплення PBS у протоколі (20:01)

Ми намагаємося усунути статус ретранслятора як довіреної третьої сторони. У нас є довірена третя сторона, яка нам подобається в Етеріумі — і це сам Етеріум. Ви можете розробити внутрішньопротокольні рішення, які намагаються по суті закріпити роль ретранслятора і зробити залежність від нього необов'язковою.

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

Обмеження будівельників, посилення децентралізації (22:05)

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

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

Сьогодні є чітко 3 домінуючі будівельники: Beaver Build, Titan та rsync Builder. Чи це хороший стан речей? Не зовсім — ми можемо зробити краще. Але чи реалістично уявити, що у нас буде стільки ж будівельників, скільки й валідаторів? Мабуть, ні.

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

Деякі ідеї щодо обмеження будівельників:

  • Списки включення — де валідатор каже будівельнику: «ви повинні включити ці транзакції у свій блок»
  • Часткове створення блоку — розбиття повного блоку, щоб будівельник не мав монополії на весь простір
  • Зменшення залежностей від третіх сторін — закріплення ролі ретранслятора в протоколі

Для посилення децентралізації валідаторів:

  • Розділення атестатора та пропонувальника — замість того, щоб робити валідатора виробником блоку за замовчуванням, вибір іншої групи людей, які стануть виробниками блоків, і розділення ролей
  • Покращені механізми стейкінгу — стейкінг в Етеріумі сьогодні є дещо рудиментарним і може бути покращений

Запитання та завершення (27:03)

Запитання з аудиторії: у світі традиційних фінансів час остаточної фіксації скорочується з 2 днів до 1. Чи допоможе скорочення часу остаточної фіксації з 12 секунд до коротшого інтервалу вирішити деякі проблеми з випередженням?

Люди говорять про це — вони називають це попередніми підтвердженнями. Ідея полягає в тому, що ви надсилаєте свою транзакцію, і хтось каже вам: «ви в грі, за цією ціною, у цьому стані». Справа в тому, що ви не можете здійснити остаточну фіксацію швидше, ніж працює протокол. Ви не можете отримати остаточну фіксацію з фінальністю швидше, ніж за 12 хвилин. Ви не можете рухатися швидше, ніж час блоку.

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

Ця сторінка була корисною?