logo
TradFi
Зарегистрируйтесь и получите 15 000 USDT в наградах
Ограниченное предложение ждёт вас!

Что такое EOA в криптовалюте? Внешне владеемые аккаунты

Ключевые моменты

Что такое EOA в криптовалюте? Это аккаунт Ethereum под контролем приватного ключа. В конце октября 2026 года делегирование EIP-7702 имели около 1 из 16 отправителей.

EOA — это внешне владеемый аккаунт в Ethereum, которым управляет приватный ключ; в один из дней конца октября 2026 года примерно у каждого шестнадцатого отправителя он был направлен на код смарт-аккаунта через EIP-7702. В криптосфере значение EOA никак не связано с юридическими, медицинскими или сленговыми смыслами тех же трех букв.

Из 382 357 адресов Ethereum, отправивших транзакцию в один из дней конца октября 2026 года, примерно у каждого шестнадцатого к концу дня присутствовал код делегирования EIP-7702, а обычный контрактный код не встречался ни у кого. Независимо от делегирования все эти отправители подписывали транзакции приватным ключом, поскольку Ethereum принимает транзакции только от EOA.

EOA кратко

Параметр
EOA
Что это
Аккаунт Ethereum, которым управляет приватный ключ
Адрес
0x плюс 40 шестнадцатеричных символов из хеша открытого ключа
Стоимость создания
Отсутствует
Запускает транзакции
Да, а контрактный аккаунт — нет
Маршруты смарт-аккаунтов
UserOperations ERC-4337, делегирование EIP-7702 с мая 2025 года
В один из дней конца октября
Примерно 6,1% из 382 357 отправителей имели код делегирования 7702
Основной риск
Кто владеет ключом или seed-фразой, тот контролирует аккаунт

Что такое EOA в криптовалюте?

EOA — это тип аккаунта, которым человек управляет вне блокчейна. Документация об аккаунтах Ethereum выделяет два типа аккаунтов и описывает внешне владеемый аккаунт как «контролируемый любым лицом, имеющим приватные ключи». Другой тип, контрактный аккаунт, подчиняется коду.

Формальная спецификация Ethereum объясняет часть «внешне». Шанхайское издание Yellow Paper за февраль 2025 года называет транзакцию «единственной криптографически подписанной инструкцией, сформированной участником, находящимся вне области Ethereum». Там также сказано, что «отправителем транзакции не может быть контракт», а держатель ключа и есть этот внешний участник.

Пара ключей состоит из двух частей, а материал Открытый и приватный ключ на Phemex Academy подробно объясняет, какой из них можно публиковать.

Как работает EOA?

Каждый EOA начинается с приватного ключа, который страница аккаунтов Ethereum описывает как «64 шестнадцатеричных символа»; большинство библиотек кошельков генерируют его случайным образом. Открытый ключ получается из него с помощью эллиптической криптографии, а адрес — из открытого ключа. Кошелек может создать все три объекта офлайн до того, как аккаунт появится в сети.

Адрес EOA в Ethereum занимает 42 символа. Страница аккаунтов формирует его, «беря последние 20 байт хеша Keccak-256 открытого ключа и добавляя 0x в начало». После префикса 0x остается 40 шестнадцатеричных символов.

Создание ничего не стоит, по формулировке страницы аккаунтов. Адрес может получать ETH до того, как владелец что-либо подпишет, потому что сеть узнает открытый ключ только когда поступит первая подписанная транзакция.

У каждого EOA также хранится nonce, который страница аккаунтов определяет как «счетчик, указывающий количество транзакций, отправленных из внешне владеемого аккаунта». По одному значению nonce может пройти только одна транзакция, поэтому подписанный перевод нельзя повторно использовать для двойного перемещения средств.

Когда транзакция поступает, Ethereum Virtual Machine выполняет запрошенную операцию, а отправитель платит газ в ETH за работу.

Чем EOA отличается от контрактного аккаунта?

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

Характеристика
EOA
Контрактный аккаунт
Контролируется
Приватным ключом
Собственным кодом
Запускает транзакцию
Да
Нет, только реагирует на вызовы
Стоимость создания
Отсутствует
Комиссия, так как используется хранилище сети
Код на аккаунте
Отсутствует либо 23-байтовый указатель EIP-7702
Развернутый контракт

Контрактный аккаунт — это адрес развернутого смарт-контракта, поэтому у него вообще нет приватного ключа. EIP-3607, финальный стандарт от 10 июня 2021 года, предписывает клиентам отклонять любую транзакцию, чей отправитель имеет развернутый код. В тексте также указано, что «блок, содержащий такую транзакцию, ДОЛЖЕН считаться недействительным».

Многие объяснения устарели из-за одного изменения. Страница аккаунтов Ethereum по-прежнему описывает хеш кода EOA как хеш пустой строки, и так было для всех EOA до 7 мая 2025 года. С тех пор EOA может содержать указатель делегирования, поэтому водораздел проходит через приватный ключ. У EOA он есть, а у контрактного аккаунта — нет. Делегированный EOA сохраняет и свой ключ, и свой адрес.

Что такое кошелек EOA?

Кошелек EOA — это приложение или устройство, которое хранит приватный ключ EOA и подписывает им. Средства остаются в реестре Ethereum. Формулировка страницы аккаунтов: «Вы никогда по-настоящему не храните криптовалюту, вы храните приватные ключи».

Поэтому импорт одного и того же приватного ключа в другое приложение возвращает тот же адрес и тот же баланс. Некастодиальный кошелек передает вам этот ключ вместе с seed-фразой, способной восстановить его, и только держатель ключа подписывает операции аккаунта.

Кошелек на базе смарт-контракта хранит средства на контрактном аккаунте, чей код задает правила расходов. С мая 2025 года кошелек EOA может добавлять некоторые такие правила через EIP-7702 без перехода на новый адрес. В анонсе Ethereum Foundation о Pectra упоминается пакетирование транзакций.

Как EIP-7702 позволяет EOA исполнять код смарт-аккаунта?

EIP-7702 под названием «Set Code for EOAs» — финальный стандарт, созданный 7 мая 2024 года. Он добавляет тип транзакции 0x04, позволяющий EOA «устанавливать код в своем аккаунте» через подписанные авторизации, каждая из которых указывает делегатский контракт.

Для каждой авторизации, которая проходит проверки и указывает ненулевой адрес, протокол записывает индикатор делегирования в код аккаунта. Этот указатель занимает 23 байта: префикс 0xef0100 и 20-байтовый адрес делегата; после этого каждый вызов EOA исполняет код делегата.

Приватный ключ продолжает работать как раньше, потому что EIP-7702 изменяет EIP-3607 и разрешает инициировать транзакции EOA, «код которого является корректным индикатором делегирования».

Обновление Ethereum Pectra включило EIP-7702. Его первый блок появился в mainnet 7 мая 2025 года в эпоху 364032, запланированную Ethereum Foundation. В том же анонсе сказано, что «владелец EOA всегда может создать новую авторизацию EIP-7702, которая отменяет или заменяет существующий код делегирования».

Подписанная авторизация не гарантирует делегирование. Стандарт предписывает клиентам пропускать любой кортеж, не прошедший проверку, например с неверным chain ID или устаревшим nonce, и переходить к следующему. Единственное подтверждение закрепления делегирования — код аккаунта.

Нужен ли EOA для смарт-аккаунтов ERC-4337?

Да, в момент, когда данные попадают в блокчейн. ERC-4337, финальный стандарт от 29 сентября 2021 года, проектирует смарт-аккаунты так, чтобы «полностью избежать необходимости изменений протокола консенсусного уровня».

Пользователь подписывает UserOperation, который стандарт определяет как «структуру, описывающую транзакцию, отправляемую от имени пользователя».

Бандлер, «узел (билдер блоков), способный обрабатывать UserOperations», упаковывает множество таких операций в одну транзакцию. Пэймастер может покрыть комиссию как «вспомогательный контракт, согласный оплатить транзакцию».

Этой одной транзакции все равно нужен обычный отправитель. EIP-3607 исключает контракт в роли отправителя, поэтому бандлер отправляет каждую пачку с EOA и подписывает ее приватным ключом этого аккаунта. Смарт-аккаунт за каждым UserOperation сам такую транзакцию не отправляет.

Сколько отправителей Ethereum используют делегирование EIP-7702?

В переписной день конца октября 23 432 отправителя завершили день с индикатором делегирования — 6,13% от 382 357 уникальных адресов, отправивших хотя бы одну транзакцию. Остальные 358 925, или 93,87%, не имели никакого кода.

Делегированные аккаунты отправили 91 068 транзакций, 5,91% от 1,54 млн операций в сети за тот день. Их делегирования указывали на 271 различный делегатский контракт, и один контракт привлек 6 522 из 23 432 аккаунтов, или 27,83%. Уязвимость в этом единственном контракте затронула бы более четверти делегированных отправителей дня сразу.

Метод: перепись учитывает каждую транзакцию в 7 178 блоках Ethereum за тот календарный день, включая неудачные. Каждый отправляющий адрес сохраняется один раз, и проверяется код, который он имел в последнем блоке дня. Индикатор делегирования занимает ровно 23 байта и начинается с 0xef0100, поэтому его нельзя принять за контрактный код.

Какие риски связаны с EOA?

У EOA нет кнопки сброса. Кто владеет его приватным ключом или стоящей за ним seed-фразой, тот контролирует аккаунт. Утерянная фраза навсегда блокирует доступ владельца, а утечка передает все другому лицу. Наиболее безопасная схема хранит эту фразу офлайн, а материал Как сделать резервную копию seed-фразы описывает шаги.

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

Chain ID добавляет нюанс. Авторизация, подписанная с chain ID 0, проходит проверку сети в стандарте в любой сети, где работает EIP-7702. Любой, кто имеет такую подпись, может отправить ее в другой сети, если nonce аккаунта совпадает.

Как использовать EOA с Phemex?

Ваш EOA — это адрес, куда поступает ETH при выводе с Phemex в самостоятельное хранение, а депозит с такого кошелька начинается как транзакция, подписанная тем же ключом. Сеть видит только адрес и подпись EOA, поэтому вставленный вами адрес определяет, куда уйдут средства.

  1. Скопируйте 42-символьный адрес из собственного кошелька и сравните его первые и последние символы после вставки.

  2. Проверьте, что сеть вывода совпадает с сетью вашего кошелька, поскольку один и тот же формат адреса работает во многих EVM-сетях.

  3. Сначала отправьте небольшую сумму, а остальное — после подтверждения тестового перевода.

Торговля ценой ETH на Phemex никак не затрагивает ваш EOA. Фьючерсы ETH рассчитываются внутри аккаунта Phemex, поэтому ончейн-транзакция или подпись приватным ключом не выполняются. Позиции по таким контрактам используют кредитное плечо, и Phemex автоматически закрывает позицию, если убытки достигают маржи.

Часто задаваемые вопросы

Что такое EOA в блокчейне?

EOA, или внешне владеемый аккаунт, — это аккаунт Ethereum, которым управляет приватный ключ. Он хранит ETH и токены, запускает транзакции и создается бесплатно. Другой тип аккаунта, контрактный аккаунт, исполняет код и действует только когда его вызывают.

Что такое externally owned account в Ethereum?

Это тип аккаунта, которым человек управляет вне сети через приватный ключ. Его адрес — 0x и последние 20 байт хеша Keccak-256 открытого ключа, всего 42 символа, а nonce считает каждую отправленную транзакцию.

Может ли EOA хранить код смарт-контракта?

С 7 мая 2025 года EOA может хранить один вид кода — 23-байтовый индикатор делегирования EIP-7702, из-за которого вызовы аккаунта исполняют код выбранного контракта. Согласно EIP-3607, аккаунт с любым другим кодом вообще не может отправлять транзакции.

Можно ли удалить делегирование EIP-7702?

Да, владелец может в любое время подписать новую авторизацию. Направление на нулевой адрес очищает код аккаунта по правилам EIP-7702, а направление на другой контракт заменяет прежний делегат.

Итог

Смарт-аккаунты пришли в Ethereum, опираясь на EOA. EIP-7702 добавляет контрактную логику к тому же адресу, а пачки ERC-4337 по-прежнему отправляются с EOA, поэтому приватный ключ остается единственным объектом, способным запустить транзакцию.

Это повышает важность seed-фразы. Ключ, подписывающий платеж, может также подписать авторизацию, передающую аккаунт контракту, поэтому он требует большей защиты, чем любая функция кошелька поверх него.

Отказ от ответственности: эта статья носит исключительно информационный характер и не является финансовой рекомендацией. Торговля криптовалютами связана с существенным риском. Всегда проводите собственное исследование перед принятием инвестиционных решений.

Зарегистрируйтесь и получите 15000 USDT
Отказ от ответственности
Содержимое, предоставленное на этой странице, предназначено исключительно для информационных целей и не является инвестиционным советом, без каких-либо представлений или гарантий. Это не должно рассматриваться как финансовый, юридический или иной профессиональный совет, и не предназначено для рекомендации покупки какого-либо конкретного продукта или услуги. Вам следует обратиться за советом к соответствующим профессиональным консультантам. Продукты, упомянутые в этой статье, могут быть недоступны в вашем регионе. Цены на цифровые активы могут быть волатильными. Стоимость вашей инвестиции может уменьшиться или увеличиться, и вы можете не вернуть инвестированную сумму. Для получения дополнительной информации, пожалуйста, ознакомьтесь с нашими Условиями использования и Раскрытием рисков