В первой половине будут систематизированы основные предложения EIP, начиная с первого предложения AA с 2015 года, и намерены выявить историю предложений AA с помощью Си, а также оценить преимущества и недостатки различных предложений.
Во второй половине данного анализа будет акцентировано внимание на сравнении ситуации после предложения EIP4337 и обратной связи о низкой активности на рынке. Затем будет проведен более глубокий анализ EIP7702, который в настоящее время готовится к включению в следующую версию обновления Ethereum. После слияния данного предложения, в основе будут произведены всеобъемлющие изменения в приложениях в блокчейне.
EIP-7702 обладает революционными изменениями, послушайте, как четырнадцатый господин рассказывает об этом
1、Фон абстракции учетной записи
1.1 Позиционирование абстракции учетной записи
Основатель Ethereum Виталик вновь обновил дорожную карту развития ETH к концу 2023 года, но не изменил абстракцию учетной записи. Теперь основной режим также переходит от EIP-4337 к следующему этапу - добровольной конвертации EOA (самостоятельного внешнего аккаунта).
С момента запуска EIP4337 (на WalletCon в Денвере 1 марта 2023 года было официально объявлено, что основной контракт ERC-4337, разработанный и реализованный разработчиками Ethereum Foundation, прошел аудит OpenZeppelin и считается официально запущенным историческим Узел).
Всегда получая широкое признание пользователей, но не получая широкого распространения, в такой противоречивой рыночной среде прогресс EIP-7702 был значительно ускорен, и уже было подтверждено, что он будет объединен в следующем обновлении.
1.2 Рыночная ситуация с абстракцией счетов
Не будем много говорить, давайте сразу посмотрим на данные.
После полуторагодового развития EIP4337 под наблюдением основных цепочек учетных записей всего лишь 12 млн. Адресов, из которых самым удивительным является то, что на основной сети ETH активно всего 6 764 адреса. Возможно, есть проблемы со статистикой, но разница между количеством адресов EOA и CA довольно большая. Нужно отметить, что количество независимых адресов на основной сети ETH уже достигло 270 млн. (данные предоставлены: ).
Можно сказать, что на Основной сети EIP4337 не имеет существенного развития.
(данные диаграммы отсюда:)
Однако это не умаляет основной ценности AA, потому что его конструкция с самого начала в EIP4337 предрекает то, что он не сможет хорошо справиться с серьезными проблемами совместимости с Основной сетью. Поэтому с появлением различных L2-цепочек, встраивание AA в них стало общей практикой, и количество адресов в EIP4337 на L2 достигло взрывных масштабов. Активные пользователи в базовой и полигональной цепочках в июле составили 1 миллион и 3 миллиона соответственно, что довольно впечатляюще.
Поэтому EIP4337 не является ошибкой в проектировании. У него есть много преимуществ, и мы в скором времени подведем итоги. Но текущая ситуация обусловлена различиями между Основной сетью и L2, и им необходимы соответствующие решения.
2. Что такое абстракция счета?
абстрагирование счета, кажется сложным, но на самом деле решает проблему разделения собственности.
В архитектуре EVM (т. е. Ethereum Виртуальная машина) есть два вида счетов: внешний счет (EOA) и счет контракта (Contract Account). Фактически, право собственности и подписи внешнего счета принадлежат одному и тому же субъекту. Человек, у которого есть Закрытый ключ, обладает не только «правом собственности» этого счета, но и правом «подписать перевод всех активов».
Это определяется структурой счета ETH.
Из структуры на рисунке видно, что стандартная транзакция Ethereum не имеет поля From. Так что когда я делал перевод, на что конкретно были потрачены средства на Адресе? Фактически, From Адрес извлекается из его VRS параметров (т.е. подписи пользователя).
Здесь речь идет о концепциях ECDSA и других асимметричных шифрований, односторонних функций порогов и т. д. Мы не будем раскрывать это здесь, в конечном итоге здесь обеспечивается безопасность криптографией, что, конечно, приводит к нынешнему тупику слияния собственности EOA 01928374656574839201.
А также основным эффектом EIP4337 является добавление поля адреса отправителя в поле транзакции, что позволяет разделить закрытый ключ от адреса операции.
Почему разделение прав собственности так важно?
Поскольку конструкция внешнего счета (EOA) может порождать больше проблем:
Недостаток алгоритма подписи: оригинальный Протокол может использовать только ECDSA алгоритм подписи и проверки транзакций.
Права на подпись высокие: нет встроенного мультиподписи (мультиподпись может быть реализована только через смарт-контракт для совместной работы), единичная подпись достаточна для выполнения любых операций.
Комиссия за сделку может быть оплачена только в ETH и не поддерживает пакетную торговлю.
Раскрытие конфиденциальности счета: однозначные сделки легко анализируют конфиденциальную информацию держателя.
Ограничения на апелляцию делают использование Ethereum очень сложным для обычных пользователей:
Сначала, чтобы использовать любое приложение на платформе ETH, пользователь должен иметь ETH (и нести риск колебаний цен на ETH).
Кроме того, пользователю необходимо разбираться в сложной логике сбора платы: цена газа, лимит газа, блокировка транзакции (последовательность nonce) - все эти понятия слишком сложны для пользователя.
В конце концов, хотя многие блокчейн кошельки или приложения пытаются улучшить пользовательский опыт путем оптимизации продукта, их реальный эффект незначителен.
Поэтому путь к разрешению этой ситуации заключается в достижении абстрагирования счета, чтобы отдельно обрабатывать владельца (Owner) и подписывающего (Signer), чтобы поэтапно решать проблемы, указанные выше.
Фактически существует много исторических сценариев, и в конечном итоге все они сойдутся в двух направлениях
3、Разбор истории AA-предложений
Решение проблемы, кажется, имеет много предложений EIP, но в конечном счете есть два основных подхода, поэтому каждое неутвержденное EIP в прошлом объединяет проблемы, рассмотренные в настоящем плане для преодоления тупика.
3.1 Первый маршрут - сделать адрес EOA адресом CA
Еще в ноябре 2015 года вокруг EIP-101 Виталик предложил новую структуру для счетов на основе контрактов. Изменил адрес, чтобы он содержал только код и пространство для хранения, изменил поддержку комиссии так, чтобы ERC20 оплачивали ее, сделал баланс оригинального токена похожим на ERC20 с помощью предварительно скомпилированных контрактов (с возможностью авторизации удержания и другими функциями), упростил поля транзакции до to, startgas, data и code.
Теперь это похоже на революционные перемены, которые приведут к значительным изменениям в основном дизайне и позволят каждому счету иметь свою собственную «логику кода» (в действительности это то, что хотят достичь сейчас EIP-7702).
Может породить и другие функции, такие как
Для расшифровки транзакций используйте больше алгоритмов шифрования, которые могут быть указаны внутренним кодом каждого адреса для проверки подлинности.
Обладает свойством устойчивости к квантовым атакам, потому что код обладает функцией обновления.
Обеспечение эфира функциональными характеристиками ERC20-контракта, основным эффектом которого является авторизация с удержанием, что позволяет избежать потери исходной монеты.
Улучшение пользовательского пространства счет, совместимость с восстановлением социальных сетей, поддержка sbt, восстановление Секретный ключ и т.д.
Отсутствие дальнейшего продвижения также очень просто, по-видимому, шаг слишком большой, и проблема конфликта хешей в текущей торговле, недостаточное внимание к проблеме безопасности привели к ее заморозке, но каждое преимущество стало одной из основных функций последующих EIP4337 и EIP7702.
Позже последовал ряд попыток усовершенствовать эту логику с помощью EIP.
EIP-859: Абстракция счета основной цепи - 2018-01-30
Попытка решить проблему развертывания Code, основное назначение которого заключается в том, что если контракт с другой стороны не развернут, то выполняется развертывание контракта Кошелек с использованием параметра code, а также предлагается новый код операции PAYGAS, который является разделителем между проверочной частью и исполнительной частью параметра транзакции, помимо оплаты Газа.
Хотя тогда все закончилось без болезни, это также стало одной из ключевых логик EIP7702 сегодня. Каждая транзакция EIP7702, сочетая в себе специальную транзакционную структуру, может сопровождаться определенным кодом, позволяющим EOA Адресу обладать контрактными возможностями в этой транзакции.
EIP-7702: установка кода счета EOA 2024-05-07
Это также является ключевым EIP в последующем обсуждении механизма, Vitalik опубликовал EIP-7702 в качестве альтернативы 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 добавлены два новых кода операции AUTH и AUTHCALL, позволяющих EOA авторизовать контракт для вызова других контрактов от имени EOA через эти два кода операции.
Исходя из этой диаграммы, в целом говоря, EOA может отправить подписанное сообщение (транзакцию) на доверенный ей контракт (называемый Invoker), и этот контракт Invoker может использовать операции AUTH и AUTHCALL вместо EOA для отправки этой транзакции.
EIP-4337: использование пула памяти для реализации абстрагирования счета–2021-09-29
В общем, его вдохновило MEV, и его основная ценность заключается в том, что он полностью избегает изменения Протокола согласования.
EIP4337 предлагает новый объект операции пользователя UserOperation, который пользователь отправляет в пул памяти (мемпул), а затем пулеры (bundlers) массово упаковывают и передают для выполнения транзакций контракта измеряемых с точки зрения майнеров, по сути, перенося операции с транзакциями и учетными записями на уровень контракта.
EIP-5189: Операции с абстрактным счетом через эндорсера - 2022-06-29
Это оптимизация логики EIP4337, направленная на предотвращение блокировки Dos путем установки механизма штрафов за финансирование эндорсеров для предотвращения злонамеренных Bundler.
3.3 Другие предложения в поддержку AA
EIP-2718: оберточный конверт нового типа транзакции --2020-06-13
Это действительно уже завершенное предложение, в котором определяется новый тип транзакции в качестве конверта для будущих дополнительных типов транзакций.
Итоговый эффект заключается в том, что при введении нового типа транзакции он отличается по определенному кодированию, что обеспечивает только обратную совместимость, без необходимости прямой совместимости. Самым распространенным примером является EIP1559, который различает комиссии за транзакцию, используя новое кодирование типа транзакции, но не влияет на исходные типы транзакций.
EIP-3607: Позволяет адресу EOA не развертывать контракты - 2021-06-10
Это дополнительная схема на пути AA, предназначенная для предотвращения конфликтов между деплоем контракта на Адрес и EOA. Он будет контролировать методы создания контрактов, чтобы система не позволяла размещать код на уже существующем Адресе EOA. Этот риск на самом деле очень мал, ведь длина адреса Ethereum составляет 160 бит, хотя существует методы коллизий Закрытый ключ для создания указанного контракта АдресЗакрытый ключ, но с учетом всей вычислительной мощности BTC это займет примерно год.
**3.4 Как понять абстрактный исторический путь развития счета?
Сначала нужно понять, какова стоимость после преобразования в CA
Практически это реализация EIP-4337, он может достигнуть
Однако главным недостатком EIP-4337 является нарушение принципа человеческой мотивации.
Он выглядит лучше, но попал в тупик развития рынка, многие Dapp все еще несовместимы, поэтому пользователи не хотят использовать CA-адреса, даже если у них есть более высокая стоимость транзакции (даже для обычных переводов комиссия удваивается), и слишком сильно полагаются на совместимость самого Dapp.
Поэтому на основной сети ETH это до сих пор не получило широкого распространения.
Стоимость - это главный критерий, по которому пользователи оценивают продукт. Необходимо снижение стоимости.
Однако, чтобы действительно понизить ПадениеGAS, необходимо сделать мягкое обновление самого Ethereum, изменить расчет GAS или расход GAS операционного кода и другие модули. Но если все равно нужно сделать мягкое разветвление, почему бы не рассмотреть EIP-7702?
4、Полное разъяснение EIP-7702
4.1 Что такое EIP-7702
Он различается по новым типам сделок, что позволяет EOA временно обладать функцией смарт-контрактов в отдельной сделке, поддерживая такие бизнес-операции, как пакетные транзакции, транзакции без газа и настраиваемое управление правами, без внедрения новых операций EVM (влияющих на обратную совместимость).
Он позволяет пользователям получить большую часть возможностей AA без развертывания смарт-контрактов, а также предоставляет возможность третьим лицам выполнять сделки от имени пользователя без необходимости предоставления закрытого ключа, только с подписью авторизованной информации.
4.2 Структура данных
Он определил новый тип транзакции 0x04, где TransactionPayload является сериализацией следующего содержимого в формате RLP.
Важно, что здесь добавлен объект authorization_list, который хранит код, который подписант хочет выполнить в своем EOA. Пользователь подписывает транзакцию, подписывая также код контракта, который должен быть выполнен. Он существует в виде двумерного списка, что позволяет пакетно хранить множество операционных данных для выполнения пакетных операций.
4.3 Жизненный цикл сделки
4.3.1 Проверочная фаза
В начальной фазе выполнения сделки для каждого authorization_list [chain_id, address, nonce, y_parity, r, s] кортежа:
С помощью ecrecover извлекаем подписанта из подписи r, s (обратите внимание, что это механизм самой Ethereum, поэтому EIP не изменяет алгоритм подписи). Адрес = ecrecover(keccak(MAGIC || rlp([chain_id, address, nonce])), y_parity, r, s) (подобно извлечению fromАдрес из предыдущего декодирования, здесь извлекается локальный подписанный Адрес для этого списка)
Проверка идентификатора цепи (защита от повторной передачи ветви).
Проверьте, пуст ли код подписавшего авторитет или он уже делегирован (проверьте, является ли сделка действительной 7702 сделкой, в дальнейшем она будет исполнена через механизм делегирования).
Проверьте nonce подписавшего authority (защита от повторного подписывания authority).
Установите код подписи authority в 0xef0100 || address (для обхода стратегии предотвращения столкновений EIP3607)
Увеличение nonce подписантов authority (защита от повторного воспроизведения частичной подписи).
Добавить подписавшегося счет authority в список доступных Адресов (Адреса для перевода, уменьшить запрос хранения газовых сборов)
4.3.2 Этап выполнения операции
Где находится код контракта и команды для выполнения?
В новой версии были внесены изменения только в поведении развертывания кода.
Теперь он не устанавливает код учетной записи как contract_code, а извлекает код адреса из списка авторизации и устанавливает его как код учетной записи.
Таким образом, когда необходимо выполнить код авторизации, код загружается с адреса, указанного в адресной строке authorization_list, и выполняется в контексте учетной записи подписанта.
Это означает, что код контракта пользователя фактически хранится в определенном Адресе в блокчейне, а не напрямую включен в транзакцию.
А инструкции по работе и связанные параметры хранятся в поле данных транзакционной нагрузки.
4.4 Чем ценен EIP-7702?
Его опыт с полной цепочкой Web3 кошелька изменится, и пользовательский опыт также будет значительно улучшен, потому что обычная транзакция, инициированная EOA, также может выполнить различную логику, например, пакетное перечисление. Это повлияет на идентификацию транзакций в среде CeFi и на сбор комиссий за вывод и слияние.
Из-за его появления были нарушены многие прежние стереотипы, такие как:
Нарушение инварианта, согласно которому баланс счета может уменьшаться только из-за транзакций, происходящих с этого счета.
Нарушен инвариант увеличения EOA nonce на 1 после начала выполнения транзакции (может увеличиваться сразу на несколько).
Нарушена защитная логика сравнения tx.origin и msg.sender, что представляет риск для многих прошлых контрактов.
Нарушает текущее положение, когда EOA сам не может генерировать события, возможно, стоит обратить внимание на мониторинг и идентификацию некоторых событий в блокчейне.
Нарушение текущего положения дел, в котором EOA Адрес принимает активы, такие как ERC20, 721, 1155 и т.д., гарантированно успешно (из-за механизма отката, возможно, неудачно)
4.5 Сравнение EIP-7702 и EIP-4337
1. Преимущества EIP-7702
Газ更低,因为无需经过entrypoint模块,减少в блокчейне操作。
Перенос пользователей имеет более низкую стоимость, не требует предварительного развертывания контрактов в блокчейне в качестве основной сущности
По сравнению с EIP4337, существует также два способа делегирования выполнения кода:
Полное делегирование (Full Delegation)
Полное доверенное управление означает делегирование всех прав на выполнение определенной операции конкретному адресу. Например, пользователь может делегировать управление всеми токенами ERC-20 смарт-контракту адреса, что позволит этому смарт-контракту выполнять все соответствующие операции от имени пользователя.
Защищенный доверенный - это означает добавление некоторых ограничений и защитных мер в процессе доверия, чтобы обеспечить безопасность и управляемость операции доверия.
Например, пользователь может делегировать управление только частью ERC-20 Токенов одному смарт-контракту или установить некоторые ограничительные условия (например, не более 1% от общего баланса в день).
2. Недостатки EIP-7702
Его основным недостатком является то, что он относится к обновлению Софтфорк, требующему широкого согласия и имеющему значительное влияние на экосистему в блокчейне. По предварительной оценке 十四君, у него есть следующие вызовы, но вызовы также представляют собой возможности на рынке:
Высокая степень свободы, трудно проверяемая, пользователи будут больше требовать надежного Кошелека для обеспечения безопасности защиты.
Из-за слишком больших изменений в исходной архитектуре, хотя и различаются по типам транзакций, многие инфраструктурные усовершенствования, особенно неизменяемые контракты, не могут быть непосредственно адаптированы к цепочке блоков.
EOAАдрес обеспечивает возможность контракта, но соответствующее пространство хранения не может быть сохранено.
Стоимость отдельных сделок немного увеличится, так как будет значительно увеличено количество частей Calldata, оцениваемая общая стоимость вызова будет составлять 16 (Газ) * 15 (байт) = 240 (Газ) стоимость Calldata, плюс стоимость EIP-3860 2 * 15 = 30, плюс приблизительная стоимость времени выполнения 150. Следовательно, даже если вы готовы к счету, даже ничего не делая, вам нужно добавить 500 Газ.
«Если получатель подписал код без функции получения, отправитель при попытке отправки активов может столкнуться с проблемой DoS». Смотрите пример. Эта проблема на самом деле заключается в том, что EOA A подписало то, что не должно было подписывать - повторяемый файл, содержащий неправильную реализацию (без receive()).
В блокчейне может быть несогласованность логики пополнения и снятия средств, например, при передаче токена ERC-20, если у счета-получателя есть код, контракт токена вызывает onERC20Received на счете-получателе. Если onERC20Received восстанавливает или возвращает неверное значение, передача токена будет отменена.
Кроме того, если EOA может генерировать события, не возникнет ли каких-либо проблем? Некоторые инфраструктурные аспекты могут потребовать внимания.
Это только некоторые недостатки, выделенные 14-юнем на основе текущего предложения EIP7702 и соответствующих обсуждений на официальном форуме, и окончательный анализ потребует рассмотрения окончательного кода реализации.
Смотрите ниже:
5、 Общий итог
Эта статья, кажется, обширна, на самом деле содержит всего 6 тыс. слов, многие из которых связаны с предыдущими интерпретациями EIP и могут быть расширены по ссылке в тексте, я не буду идти дальше.
В настоящее время, абстрагирование счета, действительно, может быть размещено только в шестом модуле, то есть восстановление всего, то есть в конечном итоге внедрение, сейчас значительно ускоряется прогресс EIP7702, что больше принесет вызовов к системной безопасности, можно предвидеть, что в конечном итоге он будет реализован, ведь слияние ETH, изменение Соглашениеалгоритма и другие подобные потрясающие события могут произойти, так что о каких-то новых типах транзакций и речи нет.
Однако на этот раз слишком много контента было разрушено, были нарушены многие правила, которые были считались невозможными в блокчейне, а также была нарушена логика большинства приложений Dapp, но он удерживает самое важное, то есть более низкие затраты для пользователей! По сравнению со Стоимостью транзакции EIP4337, которая почти удвоилась.
Пользователь по-прежнему является EOAАдресом, просто в нужное время запускает и использует логику CA, поэтому затраты на удержание снижаются. Нет необходимости сначала преобразовывать идентификацию CA на цепи, а затем выполнять операции, то есть пользователю не нужно регистрироваться.
Пользователи могут легко осуществлять параллельные транзакции с помощью EOA, такие как одновременное разрешение и выполнение авторизованных удержаний, что в свою очередь снижает Стоимость транзакции для пользователей, а для Dapp, особенно для команды проекта, которая нуждается в корпоративном управлении в блокчейне, такие изменения, как оптимизация биржи, являются революционными. После внедрения нативной реализации пакетной концентрации биржевых активов Стоимость на бирже может мгновенно снизиться более чем наполовину, что, в конечном итоге, принесет пользу пользователям.
Поэтому, хотя он многое изменил, но с точки зрения затрат, это стоит того, чтобы все Dapp исследовали и адаптировали, потому что на этот раз пользователи обязательно стоят на стороне EIP7702.
На этой странице может содержаться сторонний контент, который предоставляется исключительно в информационных целях (не в качестве заявлений/гарантий) и не должен рассматриваться как поддержка взглядов компании Gate или как финансовый или профессиональный совет. Подробности смотрите в разделе «Отказ от ответственности» .
Интерпретация прошлого и будущего счетового абстрактного трека ETH от 4337 до 7702
Введение
Этот текст состоит из двух основных модулей:
В первой половине будут систематизированы основные предложения EIP, начиная с первого предложения AA с 2015 года, и намерены выявить историю предложений AA с помощью Си, а также оценить преимущества и недостатки различных предложений.
Во второй половине данного анализа будет акцентировано внимание на сравнении ситуации после предложения EIP4337 и обратной связи о низкой активности на рынке. Затем будет проведен более глубокий анализ EIP7702, который в настоящее время готовится к включению в следующую версию обновления Ethereum. После слияния данного предложения, в основе будут произведены всеобъемлющие изменения в приложениях в блокчейне.
EIP-7702 обладает революционными изменениями, послушайте, как четырнадцатый господин рассказывает об этом
1、Фон абстракции учетной записи
1.1 Позиционирование абстракции учетной записи
Основатель Ethereum Виталик вновь обновил дорожную карту развития ETH к концу 2023 года, но не изменил абстракцию учетной записи. Теперь основной режим также переходит от EIP-4337 к следующему этапу - добровольной конвертации EOA (самостоятельного внешнего аккаунта).
С момента запуска EIP4337 (на WalletCon в Денвере 1 марта 2023 года было официально объявлено, что основной контракт ERC-4337, разработанный и реализованный разработчиками Ethereum Foundation, прошел аудит OpenZeppelin и считается официально запущенным историческим Узел).
Всегда получая широкое признание пользователей, но не получая широкого распространения, в такой противоречивой рыночной среде прогресс EIP-7702 был значительно ускорен, и уже было подтверждено, что он будет объединен в следующем обновлении.
1.2 Рыночная ситуация с абстракцией счетов
Не будем много говорить, давайте сразу посмотрим на данные.
После полуторагодового развития EIP4337 под наблюдением основных цепочек учетных записей всего лишь 12 млн. Адресов, из которых самым удивительным является то, что на основной сети ETH активно всего 6 764 адреса. Возможно, есть проблемы со статистикой, но разница между количеством адресов EOA и CA довольно большая. Нужно отметить, что количество независимых адресов на основной сети ETH уже достигло 270 млн. (данные предоставлены: ).
Можно сказать, что на Основной сети EIP4337 не имеет существенного развития.
(данные диаграммы отсюда:)
Однако это не умаляет основной ценности AA, потому что его конструкция с самого начала в EIP4337 предрекает то, что он не сможет хорошо справиться с серьезными проблемами совместимости с Основной сетью. Поэтому с появлением различных L2-цепочек, встраивание AA в них стало общей практикой, и количество адресов в EIP4337 на L2 достигло взрывных масштабов. Активные пользователи в базовой и полигональной цепочках в июле составили 1 миллион и 3 миллиона соответственно, что довольно впечатляюще.
Поэтому EIP4337 не является ошибкой в проектировании. У него есть много преимуществ, и мы в скором времени подведем итоги. Но текущая ситуация обусловлена различиями между Основной сетью и L2, и им необходимы соответствующие решения.
2. Что такое абстракция счета?
абстрагирование счета, кажется сложным, но на самом деле решает проблему разделения собственности.
В архитектуре EVM (т. е. Ethereum Виртуальная машина) есть два вида счетов: внешний счет (EOA) и счет контракта (Contract Account). Фактически, право собственности и подписи внешнего счета принадлежат одному и тому же субъекту. Человек, у которого есть Закрытый ключ, обладает не только «правом собственности» этого счета, но и правом «подписать перевод всех активов».
Это определяется структурой счета ETH.
Из структуры на рисунке видно, что стандартная транзакция Ethereum не имеет поля From. Так что когда я делал перевод, на что конкретно были потрачены средства на Адресе? Фактически, From Адрес извлекается из его VRS параметров (т.е. подписи пользователя).
Здесь речь идет о концепциях ECDSA и других асимметричных шифрований, односторонних функций порогов и т. д. Мы не будем раскрывать это здесь, в конечном итоге здесь обеспечивается безопасность криптографией, что, конечно, приводит к нынешнему тупику слияния собственности EOA 01928374656574839201.
А также основным эффектом EIP4337 является добавление поля адреса отправителя в поле транзакции, что позволяет разделить закрытый ключ от адреса операции.
Почему разделение прав собственности так важно?
Поскольку конструкция внешнего счета (EOA) может порождать больше проблем:
Ограничения на апелляцию делают использование Ethereum очень сложным для обычных пользователей:
Сначала, чтобы использовать любое приложение на платформе ETH, пользователь должен иметь ETH (и нести риск колебаний цен на ETH).
Кроме того, пользователю необходимо разбираться в сложной логике сбора платы: цена газа, лимит газа, блокировка транзакции (последовательность nonce) - все эти понятия слишком сложны для пользователя.
В конце концов, хотя многие блокчейн кошельки или приложения пытаются улучшить пользовательский опыт путем оптимизации продукта, их реальный эффект незначителен.
Поэтому путь к разрешению этой ситуации заключается в достижении абстрагирования счета, чтобы отдельно обрабатывать владельца (Owner) и подписывающего (Signer), чтобы поэтапно решать проблемы, указанные выше.
Фактически существует много исторических сценариев, и в конечном итоге все они сойдутся в двух направлениях
3、Разбор истории AA-предложений
Решение проблемы, кажется, имеет много предложений EIP, но в конечном счете есть два основных подхода, поэтому каждое неутвержденное EIP в прошлом объединяет проблемы, рассмотренные в настоящем плане для преодоления тупика.
3.1 Первый маршрут - сделать адрес EOA адресом CA
Еще в ноябре 2015 года вокруг EIP-101 Виталик предложил новую структуру для счетов на основе контрактов. Изменил адрес, чтобы он содержал только код и пространство для хранения, изменил поддержку комиссии так, чтобы ERC20 оплачивали ее, сделал баланс оригинального токена похожим на ERC20 с помощью предварительно скомпилированных контрактов (с возможностью авторизации удержания и другими функциями), упростил поля транзакции до to, startgas, data и code.
Теперь это похоже на революционные перемены, которые приведут к значительным изменениям в основном дизайне и позволят каждому счету иметь свою собственную «логику кода» (в действительности это то, что хотят достичь сейчас EIP-7702).
Может породить и другие функции, такие как
Отсутствие дальнейшего продвижения также очень просто, по-видимому, шаг слишком большой, и проблема конфликта хешей в текущей торговле, недостаточное внимание к проблеме безопасности привели к ее заморозке, но каждое преимущество стало одной из основных функций последующих EIP4337 и EIP7702.
Позже последовал ряд попыток усовершенствовать эту логику с помощью EIP.
EIP-859: Абстракция счета основной цепи - 2018-01-30
Попытка решить проблему развертывания Code, основное назначение которого заключается в том, что если контракт с другой стороны не развернут, то выполняется развертывание контракта Кошелек с использованием параметра code, а также предлагается новый код операции PAYGAS, который является разделителем между проверочной частью и исполнительной частью параметра транзакции, помимо оплаты Газа.
Хотя тогда все закончилось без болезни, это также стало одной из ключевых логик EIP7702 сегодня. Каждая транзакция EIP7702, сочетая в себе специальную транзакционную структуру, может сопровождаться определенным кодом, позволяющим EOA Адресу обладать контрактными возможностями в этой транзакции.
EIP-7702: установка кода счета EOA 2024-05-07
Это также является ключевым EIP в последующем обсуждении механизма, Vitalik опубликовал EIP-7702 в качестве альтернативы 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 добавлены два новых кода операции AUTH и AUTHCALL, позволяющих EOA авторизовать контракт для вызова других контрактов от имени EOA через эти два кода операции.
Исходя из этой диаграммы, в целом говоря, EOA может отправить подписанное сообщение (транзакцию) на доверенный ей контракт (называемый Invoker), и этот контракт Invoker может использовать операции AUTH и AUTHCALL вместо EOA для отправки этой транзакции.
EIP-4337: использование пула памяти для реализации абстрагирования счета–2021-09-29
В общем, его вдохновило MEV, и его основная ценность заключается в том, что он полностью избегает изменения Протокола согласования.
EIP4337 предлагает новый объект операции пользователя UserOperation, который пользователь отправляет в пул памяти (мемпул), а затем пулеры (bundlers) массово упаковывают и передают для выполнения транзакций контракта измеряемых с точки зрения майнеров, по сути, перенося операции с транзакциями и учетными записями на уровень контракта.
EIP-5189: Операции с абстрактным счетом через эндорсера - 2022-06-29
Это оптимизация логики EIP4337, направленная на предотвращение блокировки Dos путем установки механизма штрафов за финансирование эндорсеров для предотвращения злонамеренных Bundler.
3.3 Другие предложения в поддержку AA
EIP-2718: оберточный конверт нового типа транзакции --2020-06-13
Это действительно уже завершенное предложение, в котором определяется новый тип транзакции в качестве конверта для будущих дополнительных типов транзакций.
Итоговый эффект заключается в том, что при введении нового типа транзакции он отличается по определенному кодированию, что обеспечивает только обратную совместимость, без необходимости прямой совместимости. Самым распространенным примером является EIP1559, который различает комиссии за транзакцию, используя новое кодирование типа транзакции, но не влияет на исходные типы транзакций.
EIP-3607: Позволяет адресу EOA не развертывать контракты - 2021-06-10
Это дополнительная схема на пути AA, предназначенная для предотвращения конфликтов между деплоем контракта на Адрес и EOA. Он будет контролировать методы создания контрактов, чтобы система не позволяла размещать код на уже существующем Адресе EOA. Этот риск на самом деле очень мал, ведь длина адреса Ethereum составляет 160 бит, хотя существует методы коллизий Закрытый ключ для создания указанного контракта АдресЗакрытый ключ, но с учетом всей вычислительной мощности BTC это займет примерно год.
**3.4 Как понять абстрактный исторический путь развития счета?
Сначала нужно понять, какова стоимость после преобразования в CA
Практически это реализация EIP-4337, он может достигнуть
Однако главным недостатком EIP-4337 является нарушение принципа человеческой мотивации.
Он выглядит лучше, но попал в тупик развития рынка, многие Dapp все еще несовместимы, поэтому пользователи не хотят использовать CA-адреса, даже если у них есть более высокая стоимость транзакции (даже для обычных переводов комиссия удваивается), и слишком сильно полагаются на совместимость самого Dapp.
Поэтому на основной сети ETH это до сих пор не получило широкого распространения.
Стоимость - это главный критерий, по которому пользователи оценивают продукт. Необходимо снижение стоимости.
Однако, чтобы действительно понизить ПадениеGAS, необходимо сделать мягкое обновление самого Ethereum, изменить расчет GAS или расход GAS операционного кода и другие модули. Но если все равно нужно сделать мягкое разветвление, почему бы не рассмотреть EIP-7702?
4、Полное разъяснение EIP-7702
4.1 Что такое EIP-7702
Он различается по новым типам сделок, что позволяет EOA временно обладать функцией смарт-контрактов в отдельной сделке, поддерживая такие бизнес-операции, как пакетные транзакции, транзакции без газа и настраиваемое управление правами, без внедрения новых операций EVM (влияющих на обратную совместимость).
Он позволяет пользователям получить большую часть возможностей AA без развертывания смарт-контрактов, а также предоставляет возможность третьим лицам выполнять сделки от имени пользователя без необходимости предоставления закрытого ключа, только с подписью авторизованной информации.
4.2 Структура данных
Он определил новый тип транзакции 0x04, где TransactionPayload является сериализацией следующего содержимого в формате RLP.
Важно, что здесь добавлен объект authorization_list, который хранит код, который подписант хочет выполнить в своем EOA. Пользователь подписывает транзакцию, подписывая также код контракта, который должен быть выполнен. Он существует в виде двумерного списка, что позволяет пакетно хранить множество операционных данных для выполнения пакетных операций.
4.3 Жизненный цикл сделки
4.3.1 Проверочная фаза
В начальной фазе выполнения сделки для каждого authorization_list [chain_id, address, nonce, y_parity, r, s] кортежа:
4.3.2 Этап выполнения операции
Где находится код контракта и команды для выполнения?
В новой версии были внесены изменения только в поведении развертывания кода.
Теперь он не устанавливает код учетной записи как contract_code, а извлекает код адреса из списка авторизации и устанавливает его как код учетной записи.
Таким образом, когда необходимо выполнить код авторизации, код загружается с адреса, указанного в адресной строке authorization_list, и выполняется в контексте учетной записи подписанта.
Это означает, что код контракта пользователя фактически хранится в определенном Адресе в блокчейне, а не напрямую включен в транзакцию.
А инструкции по работе и связанные параметры хранятся в поле данных транзакционной нагрузки.
4.4 Чем ценен EIP-7702?
Его опыт с полной цепочкой Web3 кошелька изменится, и пользовательский опыт также будет значительно улучшен, потому что обычная транзакция, инициированная EOA, также может выполнить различную логику, например, пакетное перечисление. Это повлияет на идентификацию транзакций в среде CeFi и на сбор комиссий за вывод и слияние.
Из-за его появления были нарушены многие прежние стереотипы, такие как:
4.5 Сравнение EIP-7702 и EIP-4337
1. Преимущества EIP-7702
Газ更低,因为无需经过entrypoint模块,减少в блокчейне操作。
Перенос пользователей имеет более низкую стоимость, не требует предварительного развертывания контрактов в блокчейне в качестве основной сущности
По сравнению с EIP4337, существует также два способа делегирования выполнения кода:
Полное делегирование (Full Delegation)
Полное доверенное управление означает делегирование всех прав на выполнение определенной операции конкретному адресу. Например, пользователь может делегировать управление всеми токенами ERC-20 смарт-контракту адреса, что позволит этому смарт-контракту выполнять все соответствующие операции от имени пользователя.
Защищенная делегированная собственность (Protected Delegation)
Защищенный доверенный - это означает добавление некоторых ограничений и защитных мер в процессе доверия, чтобы обеспечить безопасность и управляемость операции доверия.
Например, пользователь может делегировать управление только частью ERC-20 Токенов одному смарт-контракту или установить некоторые ограничительные условия (например, не более 1% от общего баланса в день).
2. Недостатки EIP-7702
Его основным недостатком является то, что он относится к обновлению Софтфорк, требующему широкого согласия и имеющему значительное влияние на экосистему в блокчейне. По предварительной оценке 十四君, у него есть следующие вызовы, но вызовы также представляют собой возможности на рынке:
Это только некоторые недостатки, выделенные 14-юнем на основе текущего предложения EIP7702 и соответствующих обсуждений на официальном форуме, и окончательный анализ потребует рассмотрения окончательного кода реализации.
Смотрите ниже:
5、 Общий итог
Эта статья, кажется, обширна, на самом деле содержит всего 6 тыс. слов, многие из которых связаны с предыдущими интерпретациями EIP и могут быть расширены по ссылке в тексте, я не буду идти дальше.
В настоящее время, абстрагирование счета, действительно, может быть размещено только в шестом модуле, то есть восстановление всего, то есть в конечном итоге внедрение, сейчас значительно ускоряется прогресс EIP7702, что больше принесет вызовов к системной безопасности, можно предвидеть, что в конечном итоге он будет реализован, ведь слияние ETH, изменение Соглашениеалгоритма и другие подобные потрясающие события могут произойти, так что о каких-то новых типах транзакций и речи нет.
Однако на этот раз слишком много контента было разрушено, были нарушены многие правила, которые были считались невозможными в блокчейне, а также была нарушена логика большинства приложений Dapp, но он удерживает самое важное, то есть более низкие затраты для пользователей! По сравнению со Стоимостью транзакции EIP4337, которая почти удвоилась.
Пользователь по-прежнему является EOAАдресом, просто в нужное время запускает и использует логику CA, поэтому затраты на удержание снижаются. Нет необходимости сначала преобразовывать идентификацию CA на цепи, а затем выполнять операции, то есть пользователю не нужно регистрироваться.
Пользователи могут легко осуществлять параллельные транзакции с помощью EOA, такие как одновременное разрешение и выполнение авторизованных удержаний, что в свою очередь снижает Стоимость транзакции для пользователей, а для Dapp, особенно для команды проекта, которая нуждается в корпоративном управлении в блокчейне, такие изменения, как оптимизация биржи, являются революционными. После внедрения нативной реализации пакетной концентрации биржевых активов Стоимость на бирже может мгновенно снизиться более чем наполовину, что, в конечном итоге, принесет пользу пользователям.
Поэтому, хотя он многое изменил, но с точки зрения затрат, это стоит того, чтобы все Dapp исследовали и адаптировали, потому что на этот раз пользователи обязательно стоят на стороне EIP7702.