З історії до майбутнього: EIP-7702 веде до нової ери абстрагування рахунку Ethereum

Глибокий аналіз історії та майбутнього абстрагування рахунків Ethereum

Вступ

Ця стаття поділяється на дві основні частини:

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

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

EIP-7702 має епохальне значення, давайте глибше розглянемо.

1. Абстрагування рахунку фон

1.1 Значення абстрагування рахунку

Засновник Ethereum Віталік у кінці 2023 року знову оновив дорожню карту розвитку ETH, але налаштування абстрагування рахунку не змінилося. Наразі основна модель переходить від EIP-4337 до наступного етапу добровільного перетворення EOA.

Після більш ніж року з моменту запуску EIP4337 1 березня 2023 року на WalletCon у Денвері, основний контракт ERC-4337, розроблений розробниками фонду Ethereum, був перевірений OpenZeppelin і вважається офіційно запущеним (, але залишався в суперечливому стані, який широко визнається користувачами, але не отримав широкого використання. Така ринкова обстановка спонукала до значного прискорення прогресу EIP-7702, і навіть вже визначено, що він буде об'єднаний у наступному оновленні.

) 1.2 Стан ринку абстрагування рахунку

Після півтора року розвитку, загальна кількість акаунтів EIP4337 на основних ланцюгах становить лише 12 мільйонів. Серед них на основній мережі Ethereum активних адрес лише 6,764, що суттєво відрізняється від кількості EOA та CA адрес. Кількість незалежних адрес на основній мережі Ethereum досягла 270 мільйонів, можна сказати, що EIP4337 на основній мережі практично не має суттєвого розвитку.

Проте це не впливає на суттєву цінність AA. Дизайн EIP4337 визначає, що вона важко може добре вирішити питання зворотної сумісності в основній мережі. З появою різних L2, які нативно інтегрують AA, кількість адрес EIP4337 на L2 різко зросла, зокрема активні користувачі мереж Base та Polygon у липні досягли 1 мільйона та 3 мільйонів відповідно, що є непоганим показником.

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

![Глибоке розуміння минулого та майбутнього абстрагування акаунтів Ethereum]###https://img-cdn.gateio.im/webp-social/moments-cecbf67df71971d38b0a927be5e4c4d9.webp(

2. Що таке абстрагування рахунку?

абстрагування рахунку по суті вирішує проблему розділення прав власності.

У архітектурі EVM є два типи акаунтів: зовнішній акаунт ) EOA ( та контрактний акаунт ) Contract Account (. Власність та право підпису зовнішнього акаунту фактично належать одній і тій же сутності. Той, хто володіє приватним ключем, не лише має "власність" акаунту, але й має право "підписувати передачу всіх активів".

Це визначається структурою транзакцій акаунта Ethereum. З структури транзакції видно, що стандартна транзакція насправді не має поля From. Під час переказу коштів, з якого конкретного адреси витрачаються кошти, визначається через параметри VRS ), які користувач підписує, щоб зворотно розшифрувати адресу From.

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

Основний ефект EIP4337 полягає в додаванні адреси відправника в поле транзакції, що дозволяє відокремити приватний ключ від адреси, що підлягає змінам.

Причина, чому розподіл власності є таким важливим, полягає в тому, що проєктування зовнішнього акаунту (EOA) породить більше проблем:

  1. Важко захистити приватний ключ: втрата приватного ключа (, атака хакерів, криптографічне зламування ) означає втрату всіх активів.

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

  3. Надмірні права підпису: без рідного мультипідпису ( мультипідпис може бути реалізований лише через смарт-контракт ), одноосібний підпис може виконати будь-яку операцію.

  4. Комісія за транзакцію може сплачуватися лише Етером, масові транзакції не підтримуються.

  5. Витік конфіденційності транзакцій: одноосібні交易 легко аналізувати конфіденційну інформацію акаунта.

Ці обмеження ускладнюють звичайним користувачам використання Ethereum:

По-перше, для використання будь-якого додатку на Ethereum користувачі повинні мати Етер ( і нести ризик коливань ціни ).

По-друге, користувачам потрібно впоратися зі складною логікою витрат, такі поняття, як ціна газу, ліміт газу, блокування транзакцій ( порядок nonce ) занадто складні для користувачів.

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

Тому, прорив полягає в реалізації абстрагування рахунку, що дозволяє декомпонувати право власності (Owner) та право підпису (Signer), тим самим поступово вирішуючи вищезгадані проблеми.

В історії існувало багато варіантів, які врешті-решт злилися в два маршрути.

Глибоке розуміння минулого та майбутнього абстрагування акаунтів на Ethereum

3. Огляд історичних пропозицій щодо абстрагування рахунку

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

( 3.1 Перший маршрут: перетворення адреси EOA в адресу CA

Ще 15 листопада 2015 року, навколо EIP-101, Віталік запропонував нову структуру акаунта на основі контрактів. Змінити адресу на тільки код і простір для зберігання, змінити підтримку комісій на оплату ERC20, через попередньо скомпільований контракт перетворити нативний токен на подібний до ERC20 для зберігання балансу ), що дозволяє мати функції авторизації для утримання ###, спростити поля транзакцій до тільки to, startgas, data та code.

Здається, це революційна зміна, яка суттєво змінить базовий дизайн, надаючи кожному акаунту адресу власну "кодову" логіку ( саме це зараз має на меті реалізувати EIP-7702 ).

Можна також отримати інші функції, наприклад:

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

  2. Має властивості захисту від квантових атак, оскільки код може бути оновлений.

  3. Нехай Етер має ті ж функціональні характеристики, що й контракти ERC20, основний ефект полягає в отриманні авторизації на утримання, що дозволяє уникнути витрат на рідну валюту.

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

Причина, чому не вдалося продовжити, дуже проста: очевидно, кроки були занадто великими, а питання конфлікту хешів у поточних транзакціях і проблеми безпеки були недостатньо враховані, тому це все залишалося на паузі. Але кожна позитивна концепція стала однією з основних функцій наступних EIP4337 та EIP7702.

Після цього ще ряд EIP намагалися вдосконалити цю логіку:

EIP-859: абстрагування рахунку головного ланцюга--2018-01-30

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

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

EIP-7702: налаштування коду EOA акаунту 2024-05-07

Це також є основним механізмом обговорення у цій статті, опублікованим Віталіком як альтернативу EIP-3074 (2024-05-07). Отже, EIP-3074 був скасований, а EIP-7702 визначено для включення в майбутнє жорстке розгалуження ETH Prague/Electra(Pectra), про що ми детальніше поговоримо пізніше.

( 3.2 Другий маршрут: дозволити EOA-адресі керувати CA-адресою

EIP-3074: додати операційні коди AUTH та AUTHCALL--2020-10-15

У EVM додано два нові OpCode: AUTH та AUTHCALL, які дозволяють EOA авторизувати контракти для виклику інших контрактів від імені EOA.

У загальному, EOA може надіслати підписане повідомлення ) транзакцію ### до власного надійного контракту (, який називається Invoker ). Цей контракт Invoker може використовувати коди операцій AUTH та AUTHCALL замість цього EOA для випуску транзакцій.

EIP-4337: реалізація абстрагування рахунку за допомогою мемпулу транзакцій--2021-09-29

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

EIP4337 пропонує новий об'єкт транзакцій UserOperation, який користувачі надсилають до мемпулу, а бандлери з точки зору майнерів масово упаковують і передають для виконання контрактних транзакцій. По суті, це підтягує базові транзакції та операції з акаунтом на рівень виконання контрактів.

EIP-5189: операції абстрагування рахунку через бекерів---2022-06-29

Це оптимізація логіки EIP4337, спрямована на запобігання DoS-атакам шляхом створення механізму покарання фінансами для зловмисних Bundler через забезпечення endorsers.

( 3.3 Інші пропозиції для підтримки абстрагування рахунку

EIP-2718:упаковка нового типу транзакцій--2020-06-13

Це фінальна пропозиція, яка визначає новий тип транзакції як конверт для майбутніх нових типів транзакцій.

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

EIP-3607: зробити адреси EOA недоступними для розгортання контрактів--2021-06-10

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

) 3.4 Як зрозуміти розвиток абстрагування рахунку?

По-перше, потрібно зрозуміти цінність, яка переходить в CA.

Основний ефект EIP-4337 полягає в тому, що він може реалізувати:

  1. Соціальне відновлення
  2. Торгівля без газових витрат
  3. Пакетна торгівля
  4. Кастомізований алгоритм підпису
  5. Налаштування логіки рахунку
  6. Підтримка блокування акаунтів та обмежень
  7. Підтримка мультипідпису та гаманців смарт-контрактів

Але основний недолік EIP-4337 полягає в тому, що він суперечить принципу людської мотивації.

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

Тому на основній мережі Ethereum досі не було поширення.

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

Але щоб дійсно зменшити GAS, потрібно, щоб сам Ethereum здійснив м'який форк-апгрейд, змінивши модулі обчислення GAS або споживання GAS операційних кодів. Проте, якщо вже йдеться про м'який форк, чому б не розглянути EIP-7702 безпосередньо?

Глибокий аналіз минулого та майбутнього абстрагування рахунку Ethereum

4. Повний аналіз EIP-7702

( 4.1 Що таке EIP-7702

Він відрізняється новим типом транзакцій, що дозволяє EOA тимчасово мати функцію смарт-контракту в одній транзакції, що, у свою чергу, підтримує бізнесові операції, такі як масові транзакції, безGas-транзакції та управління настроюваними правами, при цьому не вимагаючи впровадження нового EVM opCode), що впливає на зворотну сумісність###.

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

( 4.2 структура даних

Він визначає новий тип транзакції 0x04, що є результатом RLP-кодування TransactionPayload наступного змісту:

rlp)[ chain_id, //ідентифікатор ланцюга, використовується для запобігання атакам повторного відтворення nonce, //лічильник транзакцій, забезпечує унікальність транзакції max_priority_fee_per_gas, //1559 комісія за транзакції max_fee_per_gas, //1559 комісія за транзакцію gas_limit, адреса призначення, //торговельна цільова адреса значення, дані, access_list, //список доступу, використовується для оптимізації газу в EIP-2929 authorization_list, signature_y_parity, //3 параметри підпису, що використовуються для перевірки підпису транзакції signature_r, підпис_s ]###

Важливо

ETH1.07%
Переглянути оригінал
Ця сторінка може містити контент третіх осіб, який надається виключно в інформаційних цілях (не в якості запевнень/гарантій) і не повинен розглядатися як схвалення його поглядів компанією Gate, а також як фінансова або професійна консультація. Див. Застереження для отримання детальної інформації.
  • Нагородити
  • 5
  • Поділіться
Прокоментувати
0/400
OnchainHolmesvip
· 07-24 00:19
Знову бачимо абстрагування рахунку 7702 не пахне?
Переглянути оригіналвідповісти на0
gas_fee_therapistvip
· 07-23 07:45
газ картка вже вісім років, нарешті дочекалася 7702?
Переглянути оригіналвідповісти на0
GateUser-afe07a92vip
· 07-23 07:43
Прокинься 4337 вже охолов 7702 - ось майбутнє
Переглянути оригіналвідповісти на0
AirdropCollectorvip
· 07-23 07:40
4337 коли людей стане більше
Переглянути оригіналвідповісти на0
NotFinancialAdvicevip
· 07-23 07:39
Знову великий пиріжок малює в叔
Переглянути оригіналвідповісти на0
  • Закріпити