Вот несколько самых неприятных проблем при использовании кошелька Ethereum: потеря сид-фразы означает потерю активов; если в кошельке нет ETH, токены нельзя перевести; каждое действие требует отдельной подписи. Именно эти проблемы призвана решить абстракция аккаунтов: правила аккаунта можно будет задавать с помощью кода.
Упомянутая в статье монета: $ETH котировка 2240.82 (за 24 ч. −7.64%).
Ограничения двух типов аккаунтов:
Изначально в Ethereum было два типа аккаунтов: внешние аккаунты (EOA), управляемые приватным ключом, и аккаунты-контракты, управляемые кодом. Только внешние аккаунты могут самостоятельно инициировать транзакции, а их правила жёстко заданы в протоколе: один приватный ключ, один тип подписи, комиссия оплачивается только в ETH.
Это означает, что потерянный приватный ключ невозможно восстановить, а если он утечёт, активы могут перевести без вашего ведома. Кроме того, нельзя настроить более гибкие правила, например лимиты или подтверждение несколькими подписями.
Как это работает в ERC-4337:
ERC-4337 реализует абстракцию аккаунтов, не меняя правила консенсуса Ethereum. Пользователь подписывает не обычную транзакцию, а запрос, который называется UserOperation. Bundler собирает множество UserOperation и отправляет их на выполнение в контракт EntryPoint. EntryPoint был развёрнут в основной сети Ethereum в марте 2023 года.
В этот процесс также можно включить Paymaster — контракт, который оплачивает Gas за пользователя. Приложение может взять комиссию на себя или разрешить пользователю платить другими токенами.
На что способен кошелёк на основе смарт-контракта:
Когда аккаунт становится контрактом, правила проверки можно настраивать: например, требовать совместной подписи нескольких человек для перевода, восстанавливать доступ при смене телефона с помощью заранее указанных контактов или устройств, устанавливать дневные лимиты на переводы или выполнять за один раз несколько действий — например, авторизацию и обмен — после одной подписи.
Обычные адреса тоже могут это использовать:
Обновление Pectra в мае 2025 года добавило EIP-7702: теперь существующие внешние аккаунты могут делегировать выполнение кода определённому контракту. При этом адрес менять не нужно, а пользоваться можно такими функциями, как пакетные транзакции и оплата Gas за пользователя.
Больше возможностей — больше потенциальных рисков: кошелёк на основе смарт-контракта сам по себе является кодом, в котором могут быть уязвимости. Если подписать делегирование для вредоносного контракта, последствия могут быть почти такими же, как при передаче приватного ключа. Поэтому будьте особенно осторожны с запросами на подпись для делегирования и сразу отклоняйте запросы с незнакомых сайтов.
Если говорить по существу:
Абстракция аккаунтов превращает кошелёк из «одного ключа к одному замку» в «сейф, правила которого можно настроить самостоятельно». Чем гибче правила, тем важнее понимать, кто их задаёт и у кого находятся полномочия. Не вкладывайте все свои сбережения в один проект.
Если среди ваших друзей есть новички, можете переслать им это.
Это просто мои мысли, не воспринимайте их как совет.