The Splurge: Віталік Бутерін розповів про фінальний етап дорожньої карти блокчейну

The Splurge: Віталік Бутерін розповів про фінальний етап дорожньої карти блокчейну

  • Співзасновник Ethereum опублікував статтю про The Splurge.
  • Це фінальний етап розробки блокчейну, згідно з актуальною дорожньою картою.
  • Він передбачає заключні коригування та імплементацію інноваційних криптографічних рішень.
  • До останніх належать обфускація і квантові одноразові підписи.

Програміст Віталік Бутерін опублікував чергову статтю з циклу «Можливе майбутнє протоколу Ethereum». Вона стосується фінального етапу дорожньої карти блокчейн — The Splurge. Як зазначив сам Бутерін, на цій стадії розробники планують «поправити все інше».

Дорожня карта Ethereum і попередні етапи

Бутерін представив її ще 2022 року. Першим етапом було масштабне оновлення The Merge, під час якого блокчейн Ethereum перейшов на механізм консенсусу Proof-of-Stake.

Далі в дорожній карті вказані такі етапи:

  • The Surge. Етап присвячений масштабуванню мережі, зокрема за допомогою шардингу. У статті Бутерін розповідає про різні способи підвищення пропускної спроможності, ефективність концепції Plasma і взаємодію рішень другого рівня. Ми детально розбирали його в окремому матеріалі;
  • The Scourge. Ця стадія охоплює нововведення в розрізі вирішення проблеми централізації PoS. Як зазначив Бутерін, на цьому етапі розробники планують внести зміни до механізму будівництва блоків і виправлення стейкінгу. Детальніше у відповідній статті;
  • The Verge. Етап присвячений підвищенню ефективності перевірки механізму консенсусу. За словами Бутеріна, розробники поставили перед собою мету зробити цей процес максимально простим і доступним. У відповідній статті програміст розповідає про дерева Веркла та недоліки цієї моделі.
  • The Purge. Ключовим завданням цього етапу є загальне спрощення проєкту і зниження обсягу необхідної для нього пам’яті. Це передбачає, зокрема, скорочення вимог до дискового простору для запуску клієнтів. Бутерін зачіпає цю тему не вперше, і ми докладно висвітлювали її раніше.

Фінальна стадія — The Splurge — фактично стосується «всього іншого». Ось так це пояснив Бутерін:

«У дизайні протоколу Ethereum є багато “дрібниць”, які дуже цінні для успіху проєкту, але не вписуються у більшу підкатегорію. На практиці близько половини з них у кінцевому підсумку стосуються різних поліпшень EVM, а решта складається з різних нішевих тем. Ось для чого потрібен “Splurge”».

The Splurge: Віталік Бутерін розповів про фінальний етап дорожньої карти блокчейну

Етап The Splurge на дорожній карті Ethereum. Джерело: стаття Віталіка Бутеріна.

Програміст описав основні цілі цього етапу так:

  • привести віртуальну машину Ethereum до завершеного і стабільного стану;
  • впровадити абстракцію облікових записів;
  • оптимізувати економіку транзакційних комісій, збільшити масштабованість мережі та знизити ризики;
  • задати вектор розвитку мережі на перспективу завдяки передовим рішенням у сфері криптографії.

Поліпшення, націлені на EVM

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

Головним оновленням у цій царині, яке планується включити в наступний хардфорк, є The EVM Object Format (EOF). Це компіляція декількох EIP, націлена на створення контейнера для байт-коду EVM.

Бутерін виділив такі особливості нового формату:

  • поділ між кодом (виконуваним, але таким, що не читається) і даними (читаними, але такими, що не виконуються);
  • видалення динамічних JUMP-ів, дозволені тільки статичні відносні переходи;
  • відсутня можливість спостереження за кодом і газом;
  • підтримка механізму підпрограм, що не покладається на динамічні переходи.

The Splurge: Віталік Бутерін розповів про фінальний етап дорожньої карти блокчейну

Структура коду EOF. Джерело: стаття Віталіка Бутеріна.

За словами Бутеріна, контракти старого формату залишаться, принаймні на якийсь час. При цьому інтеграція EOF відкриє шлях до впровадження подальших поліпшень, підкреслив програміст.

Зокрема, він виділив EIP-6690: EVM Modular Arithmetic Extensions (EVMMAX). Ця пропозиція створює новий набір операцій, спеціально розроблений для модульної арифметики, і поміщає їх у новий простір пам’яті, до якого не можна отримати доступ за допомогою інших опкодів.

Водночас Бутерін розглядає можливість об’єднання EVMMAX із принципом обчислень SIMD. Програміст зазначив, що його можна використовувати для прискорення різних форм криптографії, зокрема хеш-функцій. Він описав цю комбінацію як «природну пару» розширень EVM, націлених на продуктивність.

Видалення EOF з наступного хардфорка, своєю чергою, істотно ускладнить розгортання оновлень. Цей формат не позбавлений певних недоліків, додав Бутерін, однак він дає змогу спростити мови більш високого рівня, а тому є ключовим компонентом дорожньої карти Ethereum, орієнтованої на постійні поліпшення.

«L1, коригуючи свій EVM, спрощує це завдання для L2. Одне коригування без іншого створює деякі несумісності, що має свої недоліки. Крім того, EVMMAX плюс SIMD може знизити витрати на газ для багатьох систем доказу, дозволяючи L2 працювати ефективніше. Це також спрощує видалення більшої кількості попередніх компіляцій, замінюючи їх кодом EVM, який може виконувати те саме завдання, можливо, без великої шкоди для ефективності», — наголосив програміст.

Абстракція рахунку

За словами Бутеріна, на поточному етапі розвитку Ethereum транзакцію може бути підтверджено тільки підписами ECDSA. Впровадження абстракції облікового запису дало б змогу змінити логіку, перетворивши перевірку облікового запису в код EVM. Це, своєю чергою, несе певні переваги, а саме:

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

Згодом перелік цілей розробників у рамках цього плану зазнав змін. Зокрема, деякі з них слугують для підвищення зручності, наприклад, оплати газу токенами ERC-20 за відсутності Ethereum.

The Splurge: Віталік Бутерін розповів про фінальний етап дорожньої карти блокчейну

Диграма цілей розробників Ethereum у рамках імплементації абстракції облікових записів. Джерело: стаття Віталіка Бутеріна.

У цьому розділі Бутерін окремо виділив EIP-7702. Ми детально розбирали його в матеріалі щодо Pectra, наступного оновлення Ethereum.

Як зазначив Бутерін, EIP-7702 дасть змогу зробити «функції зручності» абстракції облікових записів доступними для всіх користувачів, включно із зовнішніми акаунтами.

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

Зокрема, Бутерін вказав на проблему множинної недійсності. Це вразливість, завдяки якій зловмисник може зробити всі транзакції в мемпулі недійсними, засмічуючи ресурси вузлів.

Її можливим рішенням є ERC-4337, який розділяє обробку транзакцій на дві фази. На етапі The Merge у розробників не було ресурсів для його імплементації, однак це необхідно зробити, принаймні для деяких його частин, впевнений програміст.

Покращення EIP-1559

Цю пропозицію було реалізовано в рамках хардфорка London, розгорнутого в основній мережі 2021 року.

Глобально, вона націлена на підвищення ефективності транзакцій. Водночас це поліпшення дозволило зробити Ethereum (ETH) дефляційним активом, спалюючи частину комісійних.

Однак, як заявив Бутерін, поточна реалізація EIP-1559 недосконала. Він назвав дві причини цього:

  • формула націлюється на вибірку від 50% до 53% блоків замість стабільних 50%;
  • цей механізм недостатньо швидко адаптується до екстремальних умов.

Водночас ані EIP-1559, ані EIP-4844, реалізований у рамках оновлення Dencun, не намагаються вирішити другу проблему, зауважив Бутерін. Також у першу пропозицію можна внести і низку інших змін, які дадуть змогу вирішити інші проблеми ціноутворення ресурсів Ethereum, вважає він.

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

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

Водночас концепція має два компроміси, згідно зі статтею:

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

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

Verifiable Delay Functions (VDF)

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

На думку Бутеріна, основним ризиком VDF є «несподівана оптимізація». У цьому випадку один з учасників може маніпулювати інформацією, з’ясувавши спосіб, як запустити функцію набагато швидше. Вона може статися двома способами — апаратне прискорення і несподіване розпаралелювання.

Ефективна реалізація VDF передбачає спосіб вирішити або уникнути появи цих двох проблем, наголосив Бутерін.

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

Обфускація та одноразові підписи: далеке майбутнє криптографії

У заключному розділі статті Бутерін пише про те, які інноваційні криптографічні рішення можна в теорії застосувати до Ethereum. Зокрема, програміст згадує есе вченого в цій галузі Ніка Сабо The God Protocols.

Згідно з ним, роль криптографії полягає в імітації довіреної третьої сторони, яка керує взаємодією, не вимагаючи довіри до будь-якого суб’єкта.

The Splurge: Віталік Бутерін розповів про фінальний етап дорожньої карти блокчейну

Приклад такої моделі. Джерело: стаття Віталіка Бутеріна.

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

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

Однак це тільки один із трьох подібних примітивів. Решта два — це повністю гомоморфне шифрування та обфускація.

Як зазначив Бутерін, ZK-SNARK перебуває на «високому рівні зрілості». Однак він не позбавлений недоліків, один з яких — потрібно знати дані для доказу про них. Його усуває повністю гомоморфне шифрування.

Програміст наголосив, що останній примітив тривалий час вважався неефективним для практичної реалізації, однак ця ситуація поступово змінюється. Як приклад він навів додаток Cursive.

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

«Обфускація нерозрізненості дає змогу вам створити “зашифровану програму”, яка виконує довільне обчислення таким чином, що всі внутрішні деталі програми залишаються прихованими», — пояснив програміст.

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

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

Новини України