Дослідження пропозиції EIP-7702: Остаточне рішення Віталіка щодо проблеми абстрагування облікового запису?

5/14/2024, 1:42:24 PM
Початківець
БлокчейнЕфіріум
Віталік Бутерін запропонував EIP-7702, яке може бути однією з найбільш суттєвих змін в історії Ethereum. EIP-7702 спрямований на поліпшення абстракції облікового запису, що дозволяє використовувати розумні контракти як облікові записи, тим самим підвищуючи функціональність та безпеку. Він добре сумісний з EIP-4337, який широко використовується на платформах, таких як Polygon. EIP-7702 досягає тимчасової делегації EOAs (зовнішньо власних облікових записів) розумним контрактам шляхом тимчасового заповнення поля коду контракту облікового запису з кодом розумного контракту, без необхідності жорсткого відгалуження. Це може змінити спосіб взаємодії користувачів з програмами Web3.

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

По-перше, пропозиція EIP-7702 дивно коротка, що залишило деяких людей в розпачі щодо її функціонування. Щоб зрозуміти EIP-7702, нам потрібно розглянути три інші зазначені в ньому пропозиції:

  1. EIP-4337

  2. EIP-3074

  3. EIP-5003

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

EIP-4337

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

З моменту його випуску EIP-4337 отримав широке поширення, переважно під керівництвом Polygon, зі збільшенням активності від Base в останні місяці.

Останні інновації, пов'язані з EIP-4337, походять від екосистеми Coinbase та розумного гаманця Coinbase. Цей гаманець базується на біометричній технології, що забезпечує відмінний користувацький досвід. Минулого вікенду я створив ще одну невелику демонстраційну версію на ETH Global Sydney, щоб показати це.

Так, які проблеми у EIP-4337? Чому сьогодні знову є пропозиція щодо абстракції облікового запису? Тому що EOAs залишаються найбільш поширеним типом облікового запису наразі.

Додатково, більшість рахунків розумного контракту EIP-4337 контролюються одним єдиним підписником EOA. Ось приклад фрагмента коду:

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

EIP-3074

Це приводить нас до нашого наступного пропозиції: EIP-3074.

Фактично ця пропозиція була введена раніше, ніж EIP-4337, але вона ще не була об'єднана в основну мережу. EIP-3074 намагається надати повноваження ЕОА, дозволяючи їм делегувати контроль над своїми ЕОА умовним контрактам.

Пропозиція передбачає додавання двох нових опкодів:

  1. АВТ: ЗЕА може викликати AUTH, щоб авторизувати вказаний смарт-контракт діяти від її імені.
  2. AUTHCALL: Авторизований розумний контракт може використовувати AUTHCALL для виконання транзакцій від імені EOA.

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

Часта реакція на EIP-3074 полягає в тому, що «Що, якщо хтось створить зловмисний контракт і користувач делегує йому права?» В кінці кінців, делегування прав до зловмисного контракту може призвести до витоку всіх криптовалютних активів у гаманці користувача.

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

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

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

EIP-5003

Ми дійсно не хочемо надавати більше влади ЕОА. В кінці кінців, метою цих пропозицій є перехід користувачів з ЕОА на облікові записи у розумних контрактах. Тому чому додавати функціонал до ЕОА?

Це гарно переходить до нашого наступного пропозиція: EIP-5003. EIP-5003 вводить ще один опкод, «AUTHUSURP», який розгортає код на адресу авторизації EIP-3074.

Різниця між EIP-3074 та EIP-5003 полягає в тому, що:

EIP-3074 - це тимчасове делегування умовним контрактам, яке можна скасувати.

EIP-5003 - це постійна міграція з EOAs та «конвертація» з EOAs на облікові записи розумних контрактів.

Однією з основних проблем EIP-3074 + EIP-5003 є її несумісність з поточною схемою абстракції рахунків через EIP-4337. Деякі у громаді Ethereum висловлюють обурення тим, що ми можемо «створити дві окремі екосистеми коду» з цими двома типами абстракції рахунків.

EIP-7702

Це приводить нас до пропозиції Віталіка Бутеріна сьогодні: EIP-7702. Він пропонує змінити EIP-3074, щоб зробити його більш лаконічним і сумісним з EIP-4337, щоб ми не потрапили у дві окремі екосистеми абстракції рахунків. EIP-5003 потім розглядається як наступний крок для постійної міграції.

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

Схоже з EIP-3074, це досягає тимчасового делегування ЕОА до смарт-контрактів. Однак EIP-7702 не вводить нових опкодів (що потребувало б хардфорку), а замість цього визначає функції, які мають бути викликані:

AUTH -> виклики "перевірка"

AUTHCALL -> викликає «виконати»

Конкретно, це:

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

Якщо воно порожнє, встановлює його на наданому контрактному коді.

Виконує транзакцію відповідно до того, як наданий смарт-контракт обробляє транзакції.

Відновлює код контракту облікового запису на порожній.

«Код контракту» буквальний; це місце, де зберігається код смарт-контракту. Оскільки EOA сам по собі не є контрактом, це поле зазвичай залишається порожнім. Однак геній EIP-7702 полягає в тимчасовому заповненні цього поля певним кодом смарт-контракту під час виконання транзакції.

Це спосіб надати нову поведінку (у вигляді коду) вашому EOA для виконання цієї конкретної транзакції. Наступним кроком є зробити це постійною зміною поведінки, просто вибравши «не встановлювати код у порожній після завершення транзакції».

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

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

З часом це може фундаментально змінити спосіб, яким ми всі взаємодіємо з додатками Web3.

Заява:

  1. Ця стаття взята з [ panews], оригінальний заголовок «Дослідження пропозиції EIP-7702: остаточний рецепт Віталіка для проблеми абстракції облікового запису?», авторське право належить оригінальному автору [Foresight News], якщо у вас є які-небудь заперечення щодо перепублікації, будь ласка, зв'яжітьсяGate Learn Team, команда обробить це якнайшвидше відповідно до відповідних процедур.

  2. Попередження: Погляди та думки, висловлені в цій статті, відображають лише особисті погляди автора й не становлять жодних інвестиційних порад.

  3. Інші мовні версії статті перекладені командою Gate Learn, не згадано в Gate.io, перекладений матеріал не може бути відтворений, поширений або плагіатований.

Поділіться

Криптокалендар

Оновлення проекту
Etherex запустить токен REX 6 серпня.
REX
22.27%
2025-08-06
Рідкісний день розробників та управління в Лас-Вегасі
Cardano проведе Рідкісний День Розробників і Управління в Лас-Вегасі з 6 по 7 серпня, з майстер-класами, хакатонами та панельними дискусіями, зосередженими на технічному розвитку та темах управління.
ADA
-3.44%
2025-08-06
Блокчейн.Rio у Ріо-де-Жанейро
Stellar візьме участь у конференції Blockchain.Rio, яка запланована в Ріо-де-Жанейро з 5 по 7 серпня. Програма включатиме ключові виступи та панельні дискусії за участю представників екосистеми Stellar у співпраці з партнерами Cheesecake Labs та NearX.
XLM
-3.18%
2025-08-06
Вебінар
Circle оголосила про проведення вебінару Executive Insights під назвою "Ера GENIUS Act починається", запланованого на 7 серпня 2025 року о 14:00 UTC. У сесії буде розглянуто наслідки нещодавно прийнятого закону GENIUS Act — першої федеральної регуляторної рамки для платіжних стейблкоїнів у Сполучених Штатах. Обговорення, яке проведуть Дант Диспарт і Кері Тен з Circle, зосередиться на тому, як це законодавство вплине на інновації у сфері цифрових активів, регуляторну ясність та лідерство США у глобальній фінансовій інфраструктурі.
USDC
-0.03%
2025-08-06
АМА на Х
Ankr проведе AMA в X 7 серпня о 16:00 UTC, зосередившись на роботі DogeOS зі створення прикладного рівня для DOGE.
ANKR
-3.23%
2025-08-06

Статті на тему

Що таке Coti? Все, що вам потрібно знати про COTI
Початківець

Що таке Coti? Все, що вам потрібно знати про COTI

Coti (COTI) — це децентралізована та масштабована платформа, яка підтримує безперебійні платежі як для традиційних фінансів, так і для цифрових валют.
11/2/2023, 9:09:18 AM
Що таке Стейблкойн?
Початківець

Що таке Стейблкойн?

Стейблкойн — це криптовалюта зі стабільною ціною, яка часто прив’язана до законного платіжного засобу в реальному світі. Візьмемо USDT, наразі найпоширеніший стейблкоїн, наприклад, USDT прив’язаний до долара США, де 1 USDT = 1 USD.
11/21/2022, 7:48:32 AM
Все, що вам потрібно знати про Blockchain
Початківець

Все, що вам потрібно знати про Blockchain

Що таке блокчейн, його корисність, значення шарів і зведень, порівняння блокчейнів і як будуються різні криптоекосистеми?
11/21/2022, 8:25:55 AM
Що таке Gate Pay?
Початківець

Що таке Gate Pay?

Gate Pay — це безконтактна безпечна технологія платежів у криптовалюті без кордонів, повністю розроблена Gate.io. Він підтримує швидкі платежі криптовалютою та є безкоштовним у використанні. Користувачі можуть отримати доступ до Gate Pay, просто зареєструвавши обліковий запис Gate.io, щоб отримувати різноманітні послуги, такі як покупки в Інтернеті, бронювання авіаквитків і готелів, а також розважальні послуги від сторонніх ділових партнерів.
1/10/2023, 7:51:00 AM
Що таке BNB?
Середній

Що таке BNB?

Binance Coin (BNB) — це біржовий токен, випущений Binance, а також корисний токен Binance Smart Chain. Оскільки Binance перетворюється на трійку найкращих криптовалютних бірж у світі за обсягом торгів, разом із нескінченними екологічними додатками на своєму розумному ланцюжку, BNB став третьою за величиною криптовалютою після Bitcoin та Ethereum. У цій статті буде детально описано історію BNB і величезну екосистему Binance, що стоїть за нею.
11/21/2022, 8:55:52 AM
Що таке Wrapped Ethereum (WETH)?
Початківець

Що таке Wrapped Ethereum (WETH)?

Wrapped Ethereum (WETH) – це версія ERC-20 рідної валюти блокчейну Ethereum, Ether (ETH). Токен WETH прив'язаний до оригінальної монети. На кожен WETH в обігу є ETH в резерві. Метою створення WETH є сумісність у мережі. ETH не відповідає стандарту ERC-20, і більшість DApps, створених у мережі, дотримуються цього стандарту. Тому WETH використовується для полегшення інтеграції ETH у програми DeFi.
11/24/2022, 8:49:09 AM
Розпочати зараз
Зареєструйтеся та отримайте ваучер на
$100
!