Что такое абстракция аккаунта в Ethereum? Как это повлияет на принятие криптографии?

Что такое абстракция аккаунта в Ethereum? Как это повлияет на принятие криптографии?

29 марта 2023 г.

Плохой пользовательский опыт — одно из основных препятствий для широкого распространения криптовалюты сегодня. Обычные пользователи не думают о децентрализации или потенциально светлом будущем DeFi. принести — они просто хотят безопасности и удобства прямо здесь и сейчас.

И здесь современный web3 терпит неудачу. Для многих знакомство с миром смарт-контрактов, понимание концепций блокчейна и даже создание криптокошелька кажется слишком сложным. Не говоря уже о том, например, что вы легко можете потерять исходную фразу, и ваши средства исчезнут навсегда.

Однако последняя реализация Ethereum EIP-4337, развернутая 1 марта 2023 года, решает проблему UX с помощью решения, называемого абстракцией учетной записи. Но что это? Неужели это действительно изменит всю ? ландшафт веб3? Давайте узнаем.

Два типа учетных записей Ethereum

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

В экосистеме Ethereum есть два типа учетных записей:

* Внешние аккаунты (EOA)

Эти учетные записи контролируются отдельными лицами и не содержат сложного кода. У таких аккаунтов есть пара ключей — закрытый и открытый — которые нужны для подтверждения и выполнения транзакций.

Одним из очевидных примеров внешней учетной записи является кошелек MetaMask.

* Контрактные аккаунты

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

Таким образом, основное различие между контрактными учетными записями и внешними учетными записями заключается в том, что первые управляются кодом, а вторые диктуются пользователями. Это важно понимать. Учетные записи смарт-контрактов могут выполнять любую запрограммированную в них логику (все, что угодно программисту), в то время как EOA просто подписывают транзакции в блокчейне.

EOA: почему они далеки от идеала

Ужасный опыт адаптации

До недавнего времени единственным способом взаимодействия пользователей с сетью и выполнения определенных операций, таких как перевод средств между кошельками или покупка NFT осуществлялись только через внешние аккаунты.

Для разработчиков блокчейнов или тех, кто уже некоторое время работает в этой сфере, использование EOA — привычный процесс.

Однако для новичков и старшего поколения это высшая математика.

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

И это еще не все.

Высокие риски

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

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

Неудивительно, что лишь небольшая часть пользователей готова рискнуть. И даже для подкованных пользователей, которые осознают все возможные риски и умеют себя обезопасить, работа с ЭОА все равно несет определенное психологическое напряжение.

Идея абстракции аккаунта

Чтобы сделать технологию блокчейна более доступной и удобной для пользователя, разработчики Ethereum придумали концепцию абстракции аккаунта. Это идея позволить пользователям взаимодействовать с сетью через смарт-контракты вместо EOA.

Но почему? Что ж, кошелек смарт-контрактов может быть более универсальным, чем EOA, поскольку он может содержать отдельные правила и настройки. Это дает контрактным учетным записям гораздо более широкий спектр возможностей.

Например, абстракция учетной записи и контрактные учетные записи позволят одному пользователю иметь разные закрытые ключи (для одного кошелька), которые будут распределены среди пула доверенных лиц и устройств. Если пользователь потеряет доступ к своему первичному ключу, он может обратиться к этим лицам и восстановить доступ к своим средствам.

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

По словам Йоава Вайса, соавтора EIP-4337 вместе с Виталиком Бутериным:

"Абстракция аккаунта — это способ привлечь внимание следующего миллиарда пользователей".

n Как реализована абстракция учетной записи

Абстракция учетной записи реализована через EIP-4337, который часто используется взаимозаменяемо. с ERC-4337.

Однако на самом деле эти две аббревиатуры различны — предложение по улучшению Ethereum (EIP) должно быть сначала принято системой управления в сети, прежде чем оно станет запросом на комментарий Ethereum (ERC).

Кроме того, ERC — это всего лишь один из компонентов EIP, и в нем в основном обсуждаются протоколы и рекомендации по разработке.

До EIP-4337, предложенного в сентябре 2021 года, существовал ряд других EIPs, связанных с абстракциями учетных записей в ETH:

* EIP-86 в 2016 году. Предложение было сосредоточено на предоставлении смарт-контрактам возможности запуска и авторизации транзакций. * EIP-2938 в 2020 г. — предложение направлено на создание нового типа транзакции. * EIP-3074 в 2020 году. Предложение было сосредоточено на более эффективной доставке самоисполняющихся смарт-контрактов за счет использования нового кода операции (строительного блока смарт-контракта).

Ни одно из этих предложений не было реализовано по одной простой причине — все они требовали изменений в базовой сетевой инфраструктуре Ethereum, а это не могло произойти без консенсусного соглашения.

EIP-4337 отличается тем, что не требует никаких изменений протокола. Вместо этого предлагается ==построить инфраструктуру более высокого уровня поверх существующей.==

На самом деле стандарт ERC-4337 уже реализован с 1 марта 2023 года, и разработчики уже могут создавать приложения с использованием новой логики.

Как работает абстракция аккаунта

Весь процесс выглядит так:

Интеллектуальный кошелек запускает «UserOperation», объект псевдотранзакции, который затем добавляется в специальный мемпул. Этот мемпул, по сути, является очередью транзакций (хотя он отличается от обычного мемпула Ethereum).

Затем бандлеры, новые децентрализованные операторы, действуют как майнеры или валидаторы. Они извлекают пользовательские операции из мемпула, упаковывают несколько пользовательских операций в одну транзакцию, известную как «пакетная транзакция», а затем сборщики отправляют «пакет» в глобальный смарт-контракт, известный как «EntryPoint*.*"

На следующем этапе другая функция с именем "handleOps" получает пакет и отправляет информацию на проверку через "validateUserOp" и выполняет операцию.

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

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

Какую пользу принесет абстракция аккаунта пользователям

Абстракция аккаунта дает множество преимуществ пользователям любого уровня:

Улучшенный пользовательский интерфейс

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

Более высокая безопасность

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

* Авторизация с несколькими подписями. Вы можете поделиться учетными данными для авторизации с несколькими доверенными лицами или устройствами. Разработчики также могут настроить контракты таким образом, чтобы транзакции определенной стоимости требовали авторизации от определенного процента (например, 3/5) доверенных сторон, прежде чем они могут быть выполнены. * Замораживание учетной записи. В случае потери или взлома устройства ваша учетная запись может быть защищена от любых других авторизованных устройств, чтобы сохранить ваши средства в безопасности. * Восстановление учетной записи. При использовании EOA потеря устройства или забытая исходная фраза могут лишить вас доступа к вашим активам на неопределенный срок. К счастью, с помощью смарт-контрактных кошельков вы можете создавать доверенные учетные записи, которые разрешают новые устройства и сбрасывают доступ. * Лимиты транзакций. Установление ежедневных ограничений на количество средств, которые могут быть переведены с вашего счета за один день, неделю или месяц, гарантирует, что если хакер получит к нему доступ, он не будет можно быстро все убрать. * Белые списки. Чтобы обеспечить максимальную безопасность ваших средств, вы можете инициировать транзакции только на адреса, которые, как вы знаете, безопасны. Если злоумышленник получит доступ к вашему закрытому ключу, он не сможет перевести средства в пункт назначения, не внесенный в белый список. И даже в этом случае такие изменения могут произойти только после того, как их подтвердят несколько подписей. Это означает, что если злоумышленник хочет, чтобы его адрес был включен в этот список, он должен сначала получить несколько ваших резервных ключей.

Лучшее управление газом

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

Доверенные сеансы

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

Улучшенные онлайн-покупки

Сегодня для каждой транзакции требуется доказательство того, что в настоящий момент в ваш кошелек загружен нужный токен. Но с технологией абстракции аккаунта это похоже на покупки в Интернете: вы заполняете «корзину», нажимаете «Купить», и вся необходимая логика обрабатывается контрактом, а не вводится покупателем вручную.

Подписки в Crypto теперь возможны

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

Блокчейн стал чрезвычайно полезным в самых разных платежных приложениях.

Заключительные мысли

Используя контрактные аккаунты, разработчики освобождаются от ограничений существующих EOA и могут переносить выгодные элементы из web2 в web3, не теряя децентрализации, к которой они стремятся. Здесь мы только что коснулись нескольких примеров того, как пользовательский опыт может быть оптимизирован с помощью абстракции аккаунта, но существует безграничный потенциал для новых творческих идей, которые еще только предстоит реализовать!


Оригинал