Artykuł

How ERC-7579 works: a technical introduction

The introduction of ERC-7579 demonstrates a commitment to improving the current standards, specifically ERC-6900, to create a more user — and developer-friendly experience. Additionally, ERC-7579 seeks to enhance the account abstraction capabilities of ERC-4337, opening up new possibilities in the field. Here's our technical guide on how ERC-7579 works.

TL; DR

  • Account Abstraction (AA) via ERC-4337 transforms traditional accounts into smart contracts, enabling advanced features like passkey authentication and gas-free transactions, adopted by leading wallets like Safe, OKX and Biconomy.

  • The new ERC-7579 standard improves smart contract accounts, making them more compatible and easier to create. Industry players developed it and emphasize its simplicity and comprehensiveness.

  • ERC-7579 aims to provide a comprehensive approach to managing accounts, allowing for flexible execution methods and data encoding to enable customizable and versatile account services.

  • ERC-7579's main features include smart account and module configurations for interoperability. It integrates hooks and ERC-1271 forwarding to improve functionality and security.

  • Implementing modular smart account standards, such as ERC-7579, marks a major progression in blockchain technology, offering a more cohesive, flexible, and future-oriented community.

What are ERC-4337 and ERC-7579?

ERC-4337

The introduction of account abstraction (AA), as outlined by ERC-4337, mitigates many issues with traditional externally owned accounts (EOAs) and raises the bar for on-chain interactions. As accounts have been transformed into smart contracts, they can incorporate unique methods for controlling access and implementing new logic that was previously not feasible.

Some of the top wallets in the industry, including Safe, Biconomy, ZeroDev, and OKX, have already introduced advanced functionalities such as passkey authentication, account retrieval, and gas-free transactions.

However, this is only the beginning. Similar to how smartphones transformed how people interact with the digital realm through third-party applications, smart contract accounts will bring about a similar change in Web3 by facilitating an accessible network of account services and modules. DApp initiatives and other developers will be able to effortlessly onboard users and offer personalized experiences.

ERC-7579

ERC-7579 is a smart contract account standard released in a collaboration between Rhinestone, Biconomy, ZeroDev, and OKX. It seeks to push forward AA innovation by providing a set of interfaces and expected behaviors to streamline development efforts and encourage interoperability.

The standard was guided by the principles of minimalism and comprehensiveness. Being minimal, the fundamental theme of ERC-7579, is crucial as it reduces the chance of imposing unnecessary or even incompatible requirements on implementations. At the same time, the standard had to take into account all the possible requirements and ensure compatibility between wallets that vastly diverge in implementation.

What is ERC-7579 core functionality?

The primary goal of ERC-7579 is to create a uniform method for carrying out account tasks. This will provide modules and other integrators with a definitive understanding of what to expect and look for. The guideline should cover all forms of executions, including Single, Batch, and Delegatecall.

Additionally, it must be capable of accommodating intricate execution patterns and various forms of data encoding, which OKX first introduced.

To accomplish this, the standard uses a singular bytes32 argument that encodes all the necessary information.

  • The CallType (single, batch, delegatecall) can be enumerated using the first byte.

  • Using the ExecType flag, executions can also be flagged to not revert on failure, allowing the rest of the userOp (other uncorrelated executions) to proceed.

  • A ModeSelector was included to allow implementations to specify any other nuances they might require, as well as a ModePayLoad to allow for the inclusion of additional data.

These primitives can form any other combination a wallet might require, and implementations can choose which modes to support, with minimal complexity and overhead.

The core of the matter lies within the modules. For modules to be account-agnostic and interoperable, ERC-7579 had to establish interfaces and guidelines, which required meeting several requirements. Accounts need a way to determine a module's capabilities for security and functionality reasons. Modules also need a structured format for interacting with accounts and vice versa.

What are the specifications ERC-7579 highlights?

  • Smart account configurations: To ensure interoperability, smart accounts must have an interface that can provide account identifiers, facilitate checks for execution modes, and enable compatibility checks for module types, all for unique identification.

  • Module configurations: Smart accounts must incorporate a module configuration interface. This guarantees that module types are distinguished for authorization purposes and specifies procedures for installing and uninstalling modules. Additionally, it includes mechanisms for signaling any changes in a module's lifespan.

Extensions: Hooks and ERC-1271 Forwarding

  • Hooks: An optional extension; hooks allow smart accounts to perform custom logic checks before and after executions, highlighting the standard's flexibility in accommodating custom functionalities.

  • ERC-1271 Forwarding: Implementing ERC-1271, smart accounts may forward signature validation calls to validators, showcasing an integration of modular functionality with existing Ethereum standards.

Practical applications and implementations

Biconomy's use of modular smart accounts serves as a real-life demonstration of how these standards can be applied. By incorporating different modules, such as validators and executors, Biconomy makes it easier for users to validate operations and manage the system in a modular manner, highlighting its adaptable and versatile nature.

The platform uses a smart accounts factory to set up initial modules according to ERC-4337 standards. It also introduces new concepts such as ECDSA and Passkey Authorization Modules to improve security and user satisfaction.

The final word

The movement towards establishing consistent modular smart accounts, as seen in proposals like ERC-7579, is a significant step towards harmonizing the way blockchain accounts and modules interact. This promotes compatibility and progress and tackles issues such as being restricted to one vendor and fragmentation within the current system.

Observing the practical advantages and potential of modular smart account implementations, it becomes clear that these standards can create a more adaptable, interconnected, and forward-thinking landscape for blockchain technology.

Wyłączenie odpowiedzialności
Niniejszy artykuł może zawierać treści dotyczące produktów, które nie są dostępne w danym regionie. Jest on dostarczany wyłącznie do ogólnych celów informacyjnych, nie ponosimy odpowiedzialności za jakiekolwiek błędy w faktach lub pominięcia wyrażone w niniejszym dokumencie. Reprezentuje on osobiste poglądy autora(ów) i nie reprezentuje poglądów OKX. Jego celem nie jest udzielanie jakichkolwiek porad, w tym między innymi: (i) doradztwa inwestycyjnego lub rekomendacji inwestycyjnych; (ii) oferty lub zachęty do kupna, sprzedaży lub posiadania aktywów cyfrowych, lub (iii) doradztwa finansowego, księgowego, prawnego lub podatkowego. Posiadanie aktywów cyfrowych, w tym stablecoinów i NFT, wiąże się z wysokim stopniem ryzyka, może podlegać znacznym wahaniom, a nawet stać się bezwartościowe. Powinieneś dokładnie rozważyć, czy handel lub posiadanie aktywów cyfrowych jest dla Ciebie odpowiednie w świetle Twojej sytuacji finansowej. Skonsultuj się ze swoim specjalistą ds. prawnych/podatkowych/inwestycyjnych w przypadku pytań dotyczących Twojej konkretnej sytuacji. Funkcje OKX Web3, w tym OKX Web3 Wallet i OKX NFT Marketplace, podlegają odrębnym warunkom świadczenia usług na stronie www.okx.com.
© 2023 OKX. Niniejszy artykuł może być powielany lub rozpowszechniany w całości lub we fragmentach zawierających maksymalnie 100 słów, pod warunkiem, że takie wykorzystanie jest niekomercyjne. Każda reprodukcja lub dystrybucja całego artykułu musi również zawierać wyraźną informację: „Ten artykuł należy do © 2023 OKX i jest używany za zgodą”. Dozwolone fragmenty muszą odnosić się do nazwy artykułu i zawierać przypisanie, na przykład „Tytuł artykułu, [nazwisko autora, jeśli ma zastosowanie], © 2023 OKX”. Żadne prace pochodne ani inne sposoby wykorzystania tego artykułu nie są dozwolone.
Poszerz
Powiązane artykuły
Wyświetl więcej
Wyświetl więcej