У поточній сфері блокчейну все ще залишається багато невирішених проблем. Серед них складність використання блокчейну, тобто користувацький досвід (UX) взаємодії з ланцюжком, мабуть, є сферою, яку найбільше критикує громадськість.
Наприклад, багато людей думають, що використовувати ключі складніше, ніж використовувати електронну пошту для управління обліковими записами; управління ключами складне і небезпечне; і кожен переказ (наприклад, USDC) вимагає споживання нативних токенів (таких як Етер і Sol), що є нелогічним.
У цьому контексті все частіше багато людей звертають свою увагу на сферу абстрагування рахунку, щоб покращити користувацький досвід взаємодії у блокчейні та сприяти масовому прийняттю.
У процесі розвідки Ethereum запропонував абстрагування рахунку такі рішення, як ERC-4337, EIP-3074 і EIP-7702. Інші L1, такі як Solana, мають функції, які забезпечують абстрагування рахунку протокол рівня, такі як програмні похідні адреси (КПК), а Cosmos також має схожий дизайн, такий як x/authz і модуль абстракції плати. У цій статті ми представимо та порівняємо вищезгадані рішення, розберемося в тонкощах проектування різних рішень, продемонструємо компроміси та міркування різних рішень.
Зовнішній обліковий запис (EOA) і контрактний рахунок – це два рахунок типи, визначені в Ethereum офіційному документі. Облікові записи EOA контролюються приватними ключами, і користувачі можуть підписувати різні транзакції через приватні ключі, щоб контролювати активи в рахунок. Договірний рахунок контролюється кодом самого рахунок, а інші облікові записи можуть змусити договір рахунок виконати певну логіку, викликавши код договору рахунок.
облікового запису Концепцію абстрагованих рахунків можна простежити з 2016 року (https://github.com/ethereum/EIPs/issues/86). абстрагування рахунку базується на двох поточних типах рахунок у Ethereum — EOA та контрактних рахунках. Це покращить інтерактивний досвід Ethereum користувачів за допомогою таких способів:
Ethereum (https://ethereum.org/en/roadmap/) висвітлює майбутній шлях оновлення Ethereum. Наразі більшість досліджень у Ethereum-спільноті обертається навколо дорожньої карти Ethereum. Абстракція рахунку є обов'язковою частиною цього:
Джерело: https://x.com/VitalikButerin/status/1741190491578810445
Спільнота Ethereum сподівається спиратися на ERC-4337 і впровадити абстрагування рахунку рішення в межах протокол за допомогою таких пропозицій, як EIP-3074 або EIP-7702, і, нарешті, досягти абстрагування рахунку Endgame.
Незважаючи на покращення користувацького досвіду, Endgame абстрагування рахунку також має вирішальне значення для антиквантових обчислень Ethereum, оскільки алгоритм ECDSA, який використовується поточною рахунок EOA, є небезпечним в епоху квантових обчислень. Прийняття абстрагування рахунку підтримує постквантові сигнатури, які захищають облікові записи користувачів від нових загроз квантових обчислень.
Щоб зрозуміти рахунок абстраговані рахунки, нам потрібно зрозуміти, як працює EOA. На малюнку нижче представлений найпоширеніший процес купівлі та продажу токенів у ланцюжку:
Взагалі кажучи, користувачам потрібно здійснити дві транзакції під час купівлі та продажу: спочатку уповноважити Uniswap передати свої USDC на своп, а потім надіслати ще один запит на транзакцію, щоб Uniswap виконала дію. Uniswap передає USDC користувача рахунок та надсилає відповідну кількість ETH користувачеві відповідно до поточної ціни.
ERC-4337 об'єднує дві вищезгадані транзакції в одну:
Як видно з наведеного вище малюнка, користувачеві потрібно двічі підписатися, щоб уповноважити бандлера керувати активами користувача в рахунок 4337, який відрізняється від рахунок EOA користувача. Після того, як бандлер отримує авторизацію, він об'єднує авторизований контент у бандл і видає його для завершення транзакції. У той же час, якщо користувач не має Ethereum токенів для газ комісій, також може бути введена роль paymaster, що дозволить paymaster сплачувати газ комісії та отримувати від користувача токени ERC20 однакової вартості.
EIP-3074 і ERC-4337 мають деяку схожість, але спосіб реалізації EIP-3074 знаходиться в протокол Ethereum:
У стандарті ERC-4337 ми дозволяємо Bundler обробляти активи в нашому гаманці смарт-контрактів у блокчейні за допомогою підписів. У EIP-3074 бандлер уповноважений безпосередньо обробляти активи в нашому гаманці EOA за допомогою підписів. Щоб ордер це зробити, спільноті Ethereum потрібно додати до Ethereum протокол два нові коди операцій: AUTH та AUTHCALL.
AUTH використовується для перевірки того, чи авторизована поведінка бандлера щодо обробки EOA рахунок активів користувача, а AUTHCALL використовується для «обману» смарт-контракту взаємодії з користувачем (у нашому прикладі USDC та Uniswap), змушуючи смарт-контракт думати, що транзакція походить від EOA рахунок користувача. Перевага цього полягає в тому, що супроводжуючим Uniswap і USDC не потрібно оновлювати розгорнуті смартконтракти, і в той же час облікові записи EOA можуть користуватися функціями абстрагування рахунку.
У спільноті Ethereum EIP зазвичай відноситься до пропозицій, які вимагають підтримки Ethereum оновлень, тоді як ERC відноситься до специфікацій, які можуть підтримуватися без Ethereum оновлень.
Таким чином, з назви двох абстрагування рахунку схем видно, що ERC-4337 простіше реалізувати, ніж EIP-3074, тому що ERC-4337 не вимагає жорсткого форк Ethereum мережі. Це також одна з причин, чому ERC-4337 був запущений і все частіше використовується на полігонах і базах, але EIP-3074 щойно був прийнятий 183-м Ethereum All Core Developers Execution Call (ACDE).
Джерело: https://dune.com/niftytable/account-abstraction
Крім того, ERC-4337 вимагає від користувачів перенесення своїх поточних рахунків на нові контрактні облікові записи та вимагає DApp підтримка для функціонування EIP-1271. EIP-3074 не вимагає цих додаткових опор. Це основна причина низького рівня впровадження ERC-4337. У той же час, ERC-4337 не може підтримка один підпис для авторизації декількох операцій у блокчейні без введення проміжного контракту з декількома викликами, але EIP-3074 може, що також спричиняє обмеження ERC-4337.
Однак у EIP-3074 є і свої проблеми. Найважливіша з них полягає в тому, що код операції AUTH має занадто високі дозволи, що може дозволити зловмиснику повністю контролювати EOA рахунок користувача. Зрештою, як би хакер не обманював ваш підпис AUTH, лонг він може розпоряджатися активами у вашому гаманці EA. Враховуючи, що фішингові атаки в даний час дуже поширені, і більшість з них обманюють підписи користувачів, після впровадження EIP-3074 це стане більш серйозною проблемою.
У зв'язку з цим lightclient, один з авторів EIP-3074, запропонував метод пом'якшення для перехоплення шкідливих сигнатур на рівні гаманця. Для отримання детальної інформації, будь ласка, перейдіть за посиланням: https://x.com/lightclients/status/1778823652584120497. ERC-4337 не має цієї проблеми, хоча хакери все одно можуть обманом змусити користувачів підписати шкідливі UserOps. Це пов'язано з труднощами для UserOp отримати повноваження щодо розпорядження всіма активами в рахунок користувача. На момент написання статті розробники в ACDE погодилися видалити EIP-3704 з Pectra Devent 0 і включити EIP-7702 в наступну Pectra Devnet 1.
EIP-7702 намагається інтегрувати переваги EIP-3074 та ERC-4337 для формування середнього шляху. Користувач надсилає підписану операцію бандлеру. Коли бандлер надішле транзакцію в ланцюжок, EOA рахунок користувача тимчасово стане смарт-контрактом рахунок на кшталт 4337 рахунок. Далі, подібно до прогресу AUTH у EIP-3074, рахунок смарт-контракту перевірятиме авторизовану операцію бандлера користувача. Потім, так само, як і AUTHCALL, виконати операції, авторизовані користувачем. Після виконання транзакції користувач рахунок буде відкочений назад до звичайного EOA рахунок.
Переваги EIP-7702 полягають у наступному:
Крім того, EIP-7702 успадковує всі ризики безпеки від EIP-3074.
Спільнота вирішила включити EIP-7702 у наступне оновлення Pectra у 2025 році. Якщо він буде впроваджений, він значно змінить екосистему Ethereum і принесе поступові покращення в поточну версію абстрагування рахунку інфраструктури ERC-4337.
абстрагування рахунку Solana схожа на ERC-4337 Ethereum. Це облікові записи, похідні від оригінальних рахунків (аналогічно рахункам EOA), схожі на 4337 контрактних рахунків. Перш ніж зрозуміти абстрагування рахунку Solana, необхідно зрозуміти модель рахунок, яку використовує Solana.
У широкому сенсі, облікові записи можна класифікувати як виконувані облікові записи, які можуть виконувати код, або невиконувані облікові записи, які не можуть цього робити. Якщо розглянути це питання далі, то на Solana існує три типи облікових записів: нативна програма, програмний обліковий запис і обліковий запис даних.
Нативні програми є частиною реалізації валідатора та забезпечують основні функції для мережі Solana, такі як створення нових облікових записів даних та користувацьких програм. Облікові записи програм — це користувацькі програми, які містять виконуваний код. Облікові записи даних можуть зберігати дані та керувати станом програми, як це визначено її власником програми рахунок.
Ця рахунок модель дозволяє програмним обліковим записам створювати певні облікові записи та керувати ними, пропонуючи розробникам можливість визначати власні правила та логіку для керування ними. Завдяки цій моделі рахунок програма Program Derived Адреса (PDA), тип рахунок даних, розширює можливості абстрагування рахунку можливостей на Solana від підвищення безпеки користувачів за допомогою гаманців з мультипідписом і двофакторної автентифікації до забезпечення механізмів соціального відновлення, серед іншого.
Для контексту, усі облікові записи лежать на кривій Ed25519 і мають пару ключів відкритий-закритий. КПК, який лежить за межами кривої Ed25519, є детерміновано виведеним 32-байтовим рядком, який виглядає як відкритий ключ і не поставляється з відповідним закритим ключем. КПК дозволяють розробникам створювати власні правила та механізми підпису транзакцій, які можуть дозволити власнику програми рахунок КПК автономно виконувати транзакції від імені КПК, повністю розпізнаних та підтримуваних мережею Solana.
Гаразд, тепер, коли ми розуміємо, як походять КПК, вам може бути цікаво, як ці поняття пов'язані з абстрагування рахунку. Абстракція облікового запису відбувається під капотом за допомогою функції, відомої як Cross Program Invocation (CPI).
CPI — це функції, які дозволяють програмі викликати інструкції іншої програми, забезпечуючи компонування Solana програм. Коли програма ініціює CPI через invoke_signed, програми можуть підписуватися від імені похідних КПК.
Джерело: Solana
Щоб перевірити легітимність транзакцій, пов'язаних з КПК, середовище виконання Solana внутрішньо викликає create_program_address, використовуючи signers_seeds і program_id програми, що викликає. Якщо буде знайдено дійсний КПК, середовище виконання пов'яже КПК з програмою, що викликає, і розпізнає програму як авторизованого підписанта.
В даний час Squads розробляє рішення для абстрагування рахунку на Solana на базі КПК. Однак продукт, що надається Squaads, наразі більше схожий на рішення рахунок смарт-контрактів Gnosis Safe і ще не повністю розробив свій функціонал абстрагування рахунку.
Оскільки абстрагування рахунку все більше займають частку думки розробників, було запущено authz, частину ядра Cosmos SDK, щоб дозволити рахунок виконувати певні дії від імені іншого рахунок за допомогою грантів авторизації, що аналогічно EIP-3074 та EIP-7702.
Authz поставляється з декількома попередньо визначеними типами авторизації, які делегують виконання певних дій, таких як стейкінг, грантоотримувачу, в результаті покращуючи взаємодію з користувачем.
За допомогою authz можна надати 3 типи авторизацій:
Грант складається з адресних байтів грантодавця, адресних байтів грантоотримувачів та типів авторизації. Також можна визначити період часу, щоб обмежити дозволи протягом певного періоду часу. Наприкінці кожного блоку мережа видалятиме прострочені гранти за допомогою процесу, який називається обрізанням.
Розуміння операційної структури
Authz можна використовувати для надання дозволів на різноманітні дії, однак для простоти ми розглянемо, як працює authz для уможливлення загальних транзакцій голосування.
Переваги, які приносить авторизація?
Обмеження та ризики для Authz:
Зверніть увагу на типи транзакцій, які ви авторизуєте через Authz. Зловмисна авторизація може виконувати різні типи авторизацій, які можуть завдати шкоди користувачеві.
Ще одна перешкода для користувацького досвіду, яка розчарувала багатьох, - це необхідність для користувачів блокчейнів тримати різні нативні токени, ордер взаємодіяти з цими різними екосистемами. Це зіпсувало загальний користувацький досвід, особливо для людей, які не є носіями криптовалют, які вперше зіткнулися з безліччю ланцюгів, що існують в екосистемі Cosmos.
Однак ця перешкода стала проривом з інтеграцією Fee Grant Module. Подібно до контракту paymaster, який дозволяє абстрагування рахунку на Ethereum, модуль Fee Grant Module на Cosmos дозволяє грантодавцю надавати винагороду грантоотримувачу, сплачуючи частину або всі комісії за транзакцію. Кошти залишаються під контролем грантодавця, і він може відкликати грантову допомогу в будь-який час.
Види гонорарних грантів
Надбавку на оплату можна розділити на два типи: базова надбавка та періодична надбавка.
Базова допомога дозволяє грантоотримувачу використовувати гонорари грантодавця рахунок до тих пір, поки не буде досягнуто ліміту витрат або закінчення терміну дії. Після цього грант буде припинено державою. Важливо зазначити, що BasicAllowance реалізує одноразове надання внесків. Якщо ліміт витрат і час порожні, то немає обмежень щодо терміну дії та витрат на надбавку до оплати.
Періодична надбавка дозволяє періодично поновлювати гранти на оплату після кожного зазначеного періоду часу. Period_spend_limit вказує максимальну кількість монет, які можна витратити за період. Period_reset відстежує, коли має відбутися наступний період, і period_can_spend відстежує кількість монет, що залишилися до початку нового періоду.
Розуміння операційної структури
Використання AllowedMsgAllowance створює дозвіл на вказані типи повідомлень. Надбавка може бути як базовою, так і періодичною. Якщо встановлено час закінчення терміну дії, FeeAllowance буде поставлено в чергу в стані з додаванням префікса закінчення терміну дії до гранту, а Endblocker перевіряє стан FeeAllowanceQueue на наявність прострочених грантів, обрізаючи будь-які, якщо вони знайдені. Окрім MsgGrantAllowance, надбавка на оплату також може бути скасована за допомогою MsgRevokeAllowance.
Разом узяті, модулі Authz і Fee Grant відкривають інноваційні та різноманітні варіанти використання, які в кінцевому підсумку створюють кращий користувацький досвід в екосистемі Cosmos.
Абстракція облікового запису Станом на 27 травня 2024 року цифри оцінюються.
Зі схваленням спотових BTC ETF та ETH ETF інституційний та роздрібний попит значно зріс, що обіцяє розпочати нову хвилю користувачів, які прагнуть отримати доступ до галузі. Абстракція облікових записів стане важливим наративом цього року, оскільки протоколи та децентралізовані програми прагнуть створити безперебійний досвід для розширення своїх спільнот.
Цей матеріал призначений лише для загальної інформації та не є і не повинен тлумачитися як будь-яка форма результатів дослідження, професійних порад, пропозицій, пропозицій, рекомендацій або торгової стратегії. Жодні гарантії, заяви, гарантії чи зобов'язання, явні чи неявні, не надаються щодо справедливості, точності, своєчасності, повноти чи правильності будь-якої загальної фінансової та ринкової інформації, аналізу та/або думок, наданих у цьому звіті, і HashKey Capital не несе жодної відповідальності чи відповідальності щодо використання або довіри до будь-якої такої інформації. Будь-яка інформація в цьому звіті може бути змінена без попередження. Цей звіт не розглядався Комісією з цінних паперів та ф'ючерсів Гонконгу, Грошово-кредитним управлінням Сінгапуру або будь-яким регулюючим органом Гонконгу чи Сінгапуру.
Будь ласка, майте на увазі, що цифрові активи, включаючи криптовалюти, дуже волатильні та схильні до ринкових ризиків. Вартість цифрових активів може значно коливатися, і немає гарантії прибутку або збереження капіталу. Ви повинні ретельно враховувати власну толерантність до ризику та фінансове становище, перш ніж приймати будь-яке рішення.
Розповсюдження цього звіту може бути обмежене в певних юрисдикціях. Цей матеріал не є поширенням будь-якої інформації або будь-якою пропозицією чи закликом у будь-якій юрисдикції, в якій такі дії не дозволені, або будь-якій особі, якій розповсюдження такого повідомлення є незаконним.
Будьте в курсі останніх новин HashKey Capital -
Веб-сайт — https://hashkey.capital/
Твіттер — https://twitter.com/HashKey_Capital
LinkedIn — https://www.linkedin.com/company/hashkeycapital/
Цю статтю передруковано з [Medium]. Усі авторські права належать оригінальному автору [HashKey Capital]. Якщо є заперечення проти цього передруку, будь ласка, зв'яжіться з командою Gate Learn, і вони оперативно впораються з цим.
Відмова від відповідальності: Погляди та думки, висловлені в цій статті, належать виключно автору і не є жодною інвестиційною порадою.
Переклад статті на інші мови здійснює команда Gate Learn. Якщо не зазначено, копіювання, розповсюдження або плагіат перекладених статей заборонено.
У поточній сфері блокчейну все ще залишається багато невирішених проблем. Серед них складність використання блокчейну, тобто користувацький досвід (UX) взаємодії з ланцюжком, мабуть, є сферою, яку найбільше критикує громадськість.
Наприклад, багато людей думають, що використовувати ключі складніше, ніж використовувати електронну пошту для управління обліковими записами; управління ключами складне і небезпечне; і кожен переказ (наприклад, USDC) вимагає споживання нативних токенів (таких як Етер і Sol), що є нелогічним.
У цьому контексті все частіше багато людей звертають свою увагу на сферу абстрагування рахунку, щоб покращити користувацький досвід взаємодії у блокчейні та сприяти масовому прийняттю.
У процесі розвідки Ethereum запропонував абстрагування рахунку такі рішення, як ERC-4337, EIP-3074 і EIP-7702. Інші L1, такі як Solana, мають функції, які забезпечують абстрагування рахунку протокол рівня, такі як програмні похідні адреси (КПК), а Cosmos також має схожий дизайн, такий як x/authz і модуль абстракції плати. У цій статті ми представимо та порівняємо вищезгадані рішення, розберемося в тонкощах проектування різних рішень, продемонструємо компроміси та міркування різних рішень.
Зовнішній обліковий запис (EOA) і контрактний рахунок – це два рахунок типи, визначені в Ethereum офіційному документі. Облікові записи EOA контролюються приватними ключами, і користувачі можуть підписувати різні транзакції через приватні ключі, щоб контролювати активи в рахунок. Договірний рахунок контролюється кодом самого рахунок, а інші облікові записи можуть змусити договір рахунок виконати певну логіку, викликавши код договору рахунок.
облікового запису Концепцію абстрагованих рахунків можна простежити з 2016 року (https://github.com/ethereum/EIPs/issues/86). абстрагування рахунку базується на двох поточних типах рахунок у Ethereum — EOA та контрактних рахунках. Це покращить інтерактивний досвід Ethereum користувачів за допомогою таких способів:
Ethereum (https://ethereum.org/en/roadmap/) висвітлює майбутній шлях оновлення Ethereum. Наразі більшість досліджень у Ethereum-спільноті обертається навколо дорожньої карти Ethereum. Абстракція рахунку є обов'язковою частиною цього:
Джерело: https://x.com/VitalikButerin/status/1741190491578810445
Спільнота Ethereum сподівається спиратися на ERC-4337 і впровадити абстрагування рахунку рішення в межах протокол за допомогою таких пропозицій, як EIP-3074 або EIP-7702, і, нарешті, досягти абстрагування рахунку Endgame.
Незважаючи на покращення користувацького досвіду, Endgame абстрагування рахунку також має вирішальне значення для антиквантових обчислень Ethereum, оскільки алгоритм ECDSA, який використовується поточною рахунок EOA, є небезпечним в епоху квантових обчислень. Прийняття абстрагування рахунку підтримує постквантові сигнатури, які захищають облікові записи користувачів від нових загроз квантових обчислень.
Щоб зрозуміти рахунок абстраговані рахунки, нам потрібно зрозуміти, як працює EOA. На малюнку нижче представлений найпоширеніший процес купівлі та продажу токенів у ланцюжку:
Взагалі кажучи, користувачам потрібно здійснити дві транзакції під час купівлі та продажу: спочатку уповноважити Uniswap передати свої USDC на своп, а потім надіслати ще один запит на транзакцію, щоб Uniswap виконала дію. Uniswap передає USDC користувача рахунок та надсилає відповідну кількість ETH користувачеві відповідно до поточної ціни.
ERC-4337 об'єднує дві вищезгадані транзакції в одну:
Як видно з наведеного вище малюнка, користувачеві потрібно двічі підписатися, щоб уповноважити бандлера керувати активами користувача в рахунок 4337, який відрізняється від рахунок EOA користувача. Після того, як бандлер отримує авторизацію, він об'єднує авторизований контент у бандл і видає його для завершення транзакції. У той же час, якщо користувач не має Ethereum токенів для газ комісій, також може бути введена роль paymaster, що дозволить paymaster сплачувати газ комісії та отримувати від користувача токени ERC20 однакової вартості.
EIP-3074 і ERC-4337 мають деяку схожість, але спосіб реалізації EIP-3074 знаходиться в протокол Ethereum:
У стандарті ERC-4337 ми дозволяємо Bundler обробляти активи в нашому гаманці смарт-контрактів у блокчейні за допомогою підписів. У EIP-3074 бандлер уповноважений безпосередньо обробляти активи в нашому гаманці EOA за допомогою підписів. Щоб ордер це зробити, спільноті Ethereum потрібно додати до Ethereum протокол два нові коди операцій: AUTH та AUTHCALL.
AUTH використовується для перевірки того, чи авторизована поведінка бандлера щодо обробки EOA рахунок активів користувача, а AUTHCALL використовується для «обману» смарт-контракту взаємодії з користувачем (у нашому прикладі USDC та Uniswap), змушуючи смарт-контракт думати, що транзакція походить від EOA рахунок користувача. Перевага цього полягає в тому, що супроводжуючим Uniswap і USDC не потрібно оновлювати розгорнуті смартконтракти, і в той же час облікові записи EOA можуть користуватися функціями абстрагування рахунку.
У спільноті Ethereum EIP зазвичай відноситься до пропозицій, які вимагають підтримки Ethereum оновлень, тоді як ERC відноситься до специфікацій, які можуть підтримуватися без Ethereum оновлень.
Таким чином, з назви двох абстрагування рахунку схем видно, що ERC-4337 простіше реалізувати, ніж EIP-3074, тому що ERC-4337 не вимагає жорсткого форк Ethereum мережі. Це також одна з причин, чому ERC-4337 був запущений і все частіше використовується на полігонах і базах, але EIP-3074 щойно був прийнятий 183-м Ethereum All Core Developers Execution Call (ACDE).
Джерело: https://dune.com/niftytable/account-abstraction
Крім того, ERC-4337 вимагає від користувачів перенесення своїх поточних рахунків на нові контрактні облікові записи та вимагає DApp підтримка для функціонування EIP-1271. EIP-3074 не вимагає цих додаткових опор. Це основна причина низького рівня впровадження ERC-4337. У той же час, ERC-4337 не може підтримка один підпис для авторизації декількох операцій у блокчейні без введення проміжного контракту з декількома викликами, але EIP-3074 може, що також спричиняє обмеження ERC-4337.
Однак у EIP-3074 є і свої проблеми. Найважливіша з них полягає в тому, що код операції AUTH має занадто високі дозволи, що може дозволити зловмиснику повністю контролювати EOA рахунок користувача. Зрештою, як би хакер не обманював ваш підпис AUTH, лонг він може розпоряджатися активами у вашому гаманці EA. Враховуючи, що фішингові атаки в даний час дуже поширені, і більшість з них обманюють підписи користувачів, після впровадження EIP-3074 це стане більш серйозною проблемою.
У зв'язку з цим lightclient, один з авторів EIP-3074, запропонував метод пом'якшення для перехоплення шкідливих сигнатур на рівні гаманця. Для отримання детальної інформації, будь ласка, перейдіть за посиланням: https://x.com/lightclients/status/1778823652584120497. ERC-4337 не має цієї проблеми, хоча хакери все одно можуть обманом змусити користувачів підписати шкідливі UserOps. Це пов'язано з труднощами для UserOp отримати повноваження щодо розпорядження всіма активами в рахунок користувача. На момент написання статті розробники в ACDE погодилися видалити EIP-3704 з Pectra Devent 0 і включити EIP-7702 в наступну Pectra Devnet 1.
EIP-7702 намагається інтегрувати переваги EIP-3074 та ERC-4337 для формування середнього шляху. Користувач надсилає підписану операцію бандлеру. Коли бандлер надішле транзакцію в ланцюжок, EOA рахунок користувача тимчасово стане смарт-контрактом рахунок на кшталт 4337 рахунок. Далі, подібно до прогресу AUTH у EIP-3074, рахунок смарт-контракту перевірятиме авторизовану операцію бандлера користувача. Потім, так само, як і AUTHCALL, виконати операції, авторизовані користувачем. Після виконання транзакції користувач рахунок буде відкочений назад до звичайного EOA рахунок.
Переваги EIP-7702 полягають у наступному:
Крім того, EIP-7702 успадковує всі ризики безпеки від EIP-3074.
Спільнота вирішила включити EIP-7702 у наступне оновлення Pectra у 2025 році. Якщо він буде впроваджений, він значно змінить екосистему Ethereum і принесе поступові покращення в поточну версію абстрагування рахунку інфраструктури ERC-4337.
абстрагування рахунку Solana схожа на ERC-4337 Ethereum. Це облікові записи, похідні від оригінальних рахунків (аналогічно рахункам EOA), схожі на 4337 контрактних рахунків. Перш ніж зрозуміти абстрагування рахунку Solana, необхідно зрозуміти модель рахунок, яку використовує Solana.
У широкому сенсі, облікові записи можна класифікувати як виконувані облікові записи, які можуть виконувати код, або невиконувані облікові записи, які не можуть цього робити. Якщо розглянути це питання далі, то на Solana існує три типи облікових записів: нативна програма, програмний обліковий запис і обліковий запис даних.
Нативні програми є частиною реалізації валідатора та забезпечують основні функції для мережі Solana, такі як створення нових облікових записів даних та користувацьких програм. Облікові записи програм — це користувацькі програми, які містять виконуваний код. Облікові записи даних можуть зберігати дані та керувати станом програми, як це визначено її власником програми рахунок.
Ця рахунок модель дозволяє програмним обліковим записам створювати певні облікові записи та керувати ними, пропонуючи розробникам можливість визначати власні правила та логіку для керування ними. Завдяки цій моделі рахунок програма Program Derived Адреса (PDA), тип рахунок даних, розширює можливості абстрагування рахунку можливостей на Solana від підвищення безпеки користувачів за допомогою гаманців з мультипідписом і двофакторної автентифікації до забезпечення механізмів соціального відновлення, серед іншого.
Для контексту, усі облікові записи лежать на кривій Ed25519 і мають пару ключів відкритий-закритий. КПК, який лежить за межами кривої Ed25519, є детерміновано виведеним 32-байтовим рядком, який виглядає як відкритий ключ і не поставляється з відповідним закритим ключем. КПК дозволяють розробникам створювати власні правила та механізми підпису транзакцій, які можуть дозволити власнику програми рахунок КПК автономно виконувати транзакції від імені КПК, повністю розпізнаних та підтримуваних мережею Solana.
Гаразд, тепер, коли ми розуміємо, як походять КПК, вам може бути цікаво, як ці поняття пов'язані з абстрагування рахунку. Абстракція облікового запису відбувається під капотом за допомогою функції, відомої як Cross Program Invocation (CPI).
CPI — це функції, які дозволяють програмі викликати інструкції іншої програми, забезпечуючи компонування Solana програм. Коли програма ініціює CPI через invoke_signed, програми можуть підписуватися від імені похідних КПК.
Джерело: Solana
Щоб перевірити легітимність транзакцій, пов'язаних з КПК, середовище виконання Solana внутрішньо викликає create_program_address, використовуючи signers_seeds і program_id програми, що викликає. Якщо буде знайдено дійсний КПК, середовище виконання пов'яже КПК з програмою, що викликає, і розпізнає програму як авторизованого підписанта.
В даний час Squads розробляє рішення для абстрагування рахунку на Solana на базі КПК. Однак продукт, що надається Squaads, наразі більше схожий на рішення рахунок смарт-контрактів Gnosis Safe і ще не повністю розробив свій функціонал абстрагування рахунку.
Оскільки абстрагування рахунку все більше займають частку думки розробників, було запущено authz, частину ядра Cosmos SDK, щоб дозволити рахунок виконувати певні дії від імені іншого рахунок за допомогою грантів авторизації, що аналогічно EIP-3074 та EIP-7702.
Authz поставляється з декількома попередньо визначеними типами авторизації, які делегують виконання певних дій, таких як стейкінг, грантоотримувачу, в результаті покращуючи взаємодію з користувачем.
За допомогою authz можна надати 3 типи авторизацій:
Грант складається з адресних байтів грантодавця, адресних байтів грантоотримувачів та типів авторизації. Також можна визначити період часу, щоб обмежити дозволи протягом певного періоду часу. Наприкінці кожного блоку мережа видалятиме прострочені гранти за допомогою процесу, який називається обрізанням.
Розуміння операційної структури
Authz можна використовувати для надання дозволів на різноманітні дії, однак для простоти ми розглянемо, як працює authz для уможливлення загальних транзакцій голосування.
Переваги, які приносить авторизація?
Обмеження та ризики для Authz:
Зверніть увагу на типи транзакцій, які ви авторизуєте через Authz. Зловмисна авторизація може виконувати різні типи авторизацій, які можуть завдати шкоди користувачеві.
Ще одна перешкода для користувацького досвіду, яка розчарувала багатьох, - це необхідність для користувачів блокчейнів тримати різні нативні токени, ордер взаємодіяти з цими різними екосистемами. Це зіпсувало загальний користувацький досвід, особливо для людей, які не є носіями криптовалют, які вперше зіткнулися з безліччю ланцюгів, що існують в екосистемі Cosmos.
Однак ця перешкода стала проривом з інтеграцією Fee Grant Module. Подібно до контракту paymaster, який дозволяє абстрагування рахунку на Ethereum, модуль Fee Grant Module на Cosmos дозволяє грантодавцю надавати винагороду грантоотримувачу, сплачуючи частину або всі комісії за транзакцію. Кошти залишаються під контролем грантодавця, і він може відкликати грантову допомогу в будь-який час.
Види гонорарних грантів
Надбавку на оплату можна розділити на два типи: базова надбавка та періодична надбавка.
Базова допомога дозволяє грантоотримувачу використовувати гонорари грантодавця рахунок до тих пір, поки не буде досягнуто ліміту витрат або закінчення терміну дії. Після цього грант буде припинено державою. Важливо зазначити, що BasicAllowance реалізує одноразове надання внесків. Якщо ліміт витрат і час порожні, то немає обмежень щодо терміну дії та витрат на надбавку до оплати.
Періодична надбавка дозволяє періодично поновлювати гранти на оплату після кожного зазначеного періоду часу. Period_spend_limit вказує максимальну кількість монет, які можна витратити за період. Period_reset відстежує, коли має відбутися наступний період, і period_can_spend відстежує кількість монет, що залишилися до початку нового періоду.
Розуміння операційної структури
Використання AllowedMsgAllowance створює дозвіл на вказані типи повідомлень. Надбавка може бути як базовою, так і періодичною. Якщо встановлено час закінчення терміну дії, FeeAllowance буде поставлено в чергу в стані з додаванням префікса закінчення терміну дії до гранту, а Endblocker перевіряє стан FeeAllowanceQueue на наявність прострочених грантів, обрізаючи будь-які, якщо вони знайдені. Окрім MsgGrantAllowance, надбавка на оплату також може бути скасована за допомогою MsgRevokeAllowance.
Разом узяті, модулі Authz і Fee Grant відкривають інноваційні та різноманітні варіанти використання, які в кінцевому підсумку створюють кращий користувацький досвід в екосистемі Cosmos.
Абстракція облікового запису Станом на 27 травня 2024 року цифри оцінюються.
Зі схваленням спотових BTC ETF та ETH ETF інституційний та роздрібний попит значно зріс, що обіцяє розпочати нову хвилю користувачів, які прагнуть отримати доступ до галузі. Абстракція облікових записів стане важливим наративом цього року, оскільки протоколи та децентралізовані програми прагнуть створити безперебійний досвід для розширення своїх спільнот.
Цей матеріал призначений лише для загальної інформації та не є і не повинен тлумачитися як будь-яка форма результатів дослідження, професійних порад, пропозицій, пропозицій, рекомендацій або торгової стратегії. Жодні гарантії, заяви, гарантії чи зобов'язання, явні чи неявні, не надаються щодо справедливості, точності, своєчасності, повноти чи правильності будь-якої загальної фінансової та ринкової інформації, аналізу та/або думок, наданих у цьому звіті, і HashKey Capital не несе жодної відповідальності чи відповідальності щодо використання або довіри до будь-якої такої інформації. Будь-яка інформація в цьому звіті може бути змінена без попередження. Цей звіт не розглядався Комісією з цінних паперів та ф'ючерсів Гонконгу, Грошово-кредитним управлінням Сінгапуру або будь-яким регулюючим органом Гонконгу чи Сінгапуру.
Будь ласка, майте на увазі, що цифрові активи, включаючи криптовалюти, дуже волатильні та схильні до ринкових ризиків. Вартість цифрових активів може значно коливатися, і немає гарантії прибутку або збереження капіталу. Ви повинні ретельно враховувати власну толерантність до ризику та фінансове становище, перш ніж приймати будь-яке рішення.
Розповсюдження цього звіту може бути обмежене в певних юрисдикціях. Цей матеріал не є поширенням будь-якої інформації або будь-якою пропозицією чи закликом у будь-якій юрисдикції, в якій такі дії не дозволені, або будь-якій особі, якій розповсюдження такого повідомлення є незаконним.
Будьте в курсі останніх новин HashKey Capital -
Веб-сайт — https://hashkey.capital/
Твіттер — https://twitter.com/HashKey_Capital
LinkedIn — https://www.linkedin.com/company/hashkeycapital/
Цю статтю передруковано з [Medium]. Усі авторські права належать оригінальному автору [HashKey Capital]. Якщо є заперечення проти цього передруку, будь ласка, зв'яжіться з командою Gate Learn, і вони оперативно впораються з цим.
Відмова від відповідальності: Погляди та думки, висловлені в цій статті, належать виключно автору і не є жодною інвестиційною порадою.
Переклад статті на інші мови здійснює команда Gate Learn. Якщо не зазначено, копіювання, розповсюдження або плагіат перекладених статей заборонено.