By using this site, you agree to the Privacy Policy and Terms of Use.
Accept
KriptotekaKriptoteka
  • Home
  • News
    • Web3
    • Crypto News
    • Market Analysis
  • Market
    • AI
    • Altcoins
    • Bitcoin
    • Blockchain
    • CEX
    • Defi
    • DePIN
    • DEX
    • ETFs
    • Ethereum
    • Gaming
    • ICO/IDO
    • Institutions
    • L1&L2
    • Meme
    • NFT tech
    • RWA
    • Stable coins
  • Data
  • Events
  • Learn
  • Reports
  • Podcasts
  • Pro membership
Reading: Understanding Account Abstraction in Ethereum Blockchain
Share
Notification Show More
Font ResizerAa
Font ResizerAa
KriptotekaKriptoteka
  • Home
  • News
  • Market
  • Data
  • Events
  • Learn
  • Reports
  • Podcasts
  • Pro membership
  • Home
  • News
    • Web3
    • Crypto News
    • Market Analysis
  • Market
    • AI
    • Altcoins
    • Bitcoin
    • Blockchain
    • CEX
    • Defi
    • DePIN
    • DEX
    • ETFs
    • Ethereum
    • Gaming
    • ICO/IDO
    • Institutions
    • L1&L2
    • Meme
    • NFT tech
    • RWA
    • Stable coins
  • Data
  • Events
  • Learn
  • Reports
  • Podcasts
  • Pro membership
Have an existing account? Sign In
Follow US
  • Advertise
© 2022 Foxiz News Network. Ruby Design Company. All Rights Reserved.
Kriptoteka > Web3 > Understanding Account Abstraction in Ethereum Blockchain
Web3

Understanding Account Abstraction in Ethereum Blockchain

marcel.mihalic@gmail.com
Last updated: September 7, 2024 8:53 pm
By marcel.mihalic@gmail.com 8 Min Read
Share
SHARE

What is Account Abstraction?

Account abstraction is a groundbreaking idea in blockchain technology aimed at simplifying and enriching the functionality of user accounts in a decentralized framework. Within the Ethereum ecosystem, there are currently two main account types:

  • Externally Owned Accounts (EOAs): Governed by private keys, typically belonging to individuals or organizations.
  • Contract Accounts: Smart contracts that execute based on specific coded logic.

Account abstraction aims to merge the two types of accounts on Ethereum—EOAs and contract accounts—into a single, more intuitive framework, enabling smart contracts to initiate and validate transactions.

Put simply, this means that instead of depending solely on private keys (as with EOAs), smart contracts can manage and carry out transactions for users, introducing enhanced flexibility and allowing for new features such as customizable security protocols, automated and gasless transactions, meta-transactions, and improved privacy. These advancements streamline user experiences and broaden opportunities within the Ethereum network.

What Challenges Do We Face? Why Is This Needed?

The current framework of the Ethereum network encounters several limitations:

  1. User Experience: EOAs necessitate private keys and gas fees in Ether, creating barriers for newcomers who might find wallet security and gas fee concepts daunting.
  2. Security Risks: The binary nature of private keys exposes them to loss or compromise, resulting in irreversible loss of assets.
  3. Limited Features: EOAs are not programmable, hindering the incorporation of advanced functionalities such as multi-signature wallets or daily transaction ceilings.

Account abstraction is designed to tackle these challenges, enhancing the usability, security, and capabilities of the network.

Methods for Implementing Account Abstraction: Benefits and Drawbacks

1. Protocol-Level Modifications

This involves altering the Ethereum protocol to support native smart contract wallets, necessitating consensus across the entire Ethereum network.

  • Pros: A completely integrated and standardized solution, potentially very efficient.
  • Cons: Slow adoption, requires hard forks, and could introduce compatibility challenges.

2. Layer 2 Solutions

Layer 2 networks can adopt custom transaction validation logic while relieving the main chain of transaction processing burdens.

  • Pros: Quick and adaptable, enabling exploration without impacting the core Ethereum protocol.
  • Cons: Involves complicated bridging and may not entirely address fundamental EOAs issues.

3. ERC-4337 (Ethereum Request for Comments)

Proposes implementing account abstraction entirely at the application level without necessitating changes to the protocol.

  • Pros: Maintains backward-compatibility, offers flexibility, and builds upon pre-existing infrastructure.
  • Cons: Requires an additional bundler infrastructure and introduces a new transaction process.

What Is ERC-4337 and Why Is It the Optimal Solution?

ERC-4337 brings forth a new paradigm for transaction management, utilizing UserOperation objects. Instead of sending transactions straight to the Ethereum blockchain, users sign UserOperation objects that are aggregated and submitted to the blockchain by bundlers. This framework allows smart contract wallets to initiate transactions securely without being reliant on the current transaction process.

Advantages:

  1. Programmability: Empowers developers to craft custom validation logic, enabling features like social recovery and multi-signature wallets.
  2. Cost Efficiency: Bundling transactions can optimize gas usage.
  3. Backward Compatibility: Can coexist with EOAs for a smooth transition.

Specifications, Features, and Structure of ERC-4337

Elements:

1. User:

      1. Off-chain: Generates and signs a UserOperation, encompassing the transaction data.

2. UserOperations:

      1. Off-chain: Encapsulates the transaction data, structured similarly to a traditional transaction.

3. Bundler:

      1. Off-chain: Aggregates multiple UserOperations.
      2. On-chain: Compiles them into a batch transaction and sends it to the EntryPoint contract.

4. EntryPoint Contract:

      1. On-chain: Oversees the execution of UserOperations and maintains transaction consistency.

5. Paymaster:

      1. On-chain: Can subsidize transaction fees by covering gas costs on behalf of users.

Process Flow:

      1. A user creates a UserOperation off-chain and signs it.
      2. The bundler gathers UserOperations from various users and submits them to the EntryPoint contract.
      3. The EntryPoint contract verifies and executes each UserOperation while processing gas fees appropriately.

A Closer Look at Bundlers

Bundlers play a crucial role in the ERC-4337 ecosystem, undertaking several responsibilities:

      1. Aggregation: Gathers multiple UserOperations and combines them into a single batch transaction.
      2. Submission: Sends the combined transaction to the EntryPoint contract for processing.
      3. Fee Management: Handles gas fees either by deducting them from UserOperations or via external sponsorship arrangements.

Eth Infinitism Bundler

Eth Infinitism serves as a reference implementation of a bundler that aligns with the ERC-4337 account abstraction standard, providing a production-ready tool for developers to bundle transactions.

GitHub: https://github.com/eth-infinitism/account-abstraction

Steps to Run the Eth Infinitism Bundler with Geth

Instructions:

1. Launch Geth in a docker container with the following command:

docker run --rm -ti --name geth -p 8545:8545 ethereum/client-go:v1.10.26 \
  --miner.gaslimit 12000000 \
  --http --http.api personal,eth,net,web3,debug \
  --http.vhosts '*,localhost,host.docker.internal' --http.addr "0.0.0.0" \
  --ignore-legacy-receipts --allow-insecure-unlock --rpc.allow-unprotected-txs \
  --dev \
  --verbosity 2 \
  --nodiscover --maxpeers 0 --mine --miner.threads 1 \
  --networkid 1337

2. Clone the Eth-Infinitism GitHub repository – https://github.com/eth-infinitism/bundler

3. Navigate to the directory and execute 


cd bundler yarn && yarn preprocess

4. Now we will deploy the contracts that are part of the bundler using hardhat –

yarn hardhat-deploy --network localhost

5. Now, let’s start the bundler –

yarn run bundler (or yarn run bundler --unsafe, if working with "hardhat node")

Your bundler is now active at http://localhost:3000/rpc

6. To conduct a simple test, execute – 

yarn run runop --deployFactory --network
http://localhost:8545/ --entryPoint
0x0000000071727De22E5E9d8BAf0edAc6f37da032

The runop script:

  • deploys the wallet deployer (if it isn’t already present)
  • creates a random signer (wallet owner)
  • determines the wallet address and funds it
  • executes a transaction (which also creates the wallet)
  • executes another transaction using the existing wallet
  • uses account[0] or a mnemonic file for funding and creating a deployer if needed

Conclusion

In this article, we explored the notion of account abstraction in Ethereum, a forward-thinking strategy aimed at improving blockchain functionality by integrating externally owned accounts (EOAs) with contract accounts. We analyzed the drawbacks of the existing Ethereum account system, investigated various implementation techniques including the key ERC-4337 standard, and highlighted the essential functions of bundlers such as the Eth Infinitism Bundler in streamlining transaction operations.

This examination provides a thorough insight into how account abstraction can yield more secure, user-friendly, and programmable interactions within the Ethereum ecosystem, along with practical guidance on applying these concepts using the Eth-Infinitism bundler in conjunction with Geth.

Contents
What is Account Abstraction?What Challenges Do We Face? Why Is This Needed?Methods for Implementing Account Abstraction: Benefits and Drawbacks1. Protocol-Level Modifications2. Layer 2 Solutions3. ERC-4337 (Ethereum Request for Comments)What Is ERC-4337 and Why Is It the Optimal Solution?Advantages:Specifications, Features, and Structure of ERC-4337Elements:Process Flow:A Closer Look at BundlersEth Infinitism BundlerSteps to Run the Eth Infinitism Bundler with GethConclusion

You Might Also Like

Checksum Verification in Web3j: Protecting Against Attacks

Linea ENS Integration in Hyperledger Web3j for Developers

Run an RPC Node on Base with Moralis: A Step-by-Step Guide[embed]https://www.youtube.com/watch?v=G3sNXEls0HA[/embed]

Moralis Expands with Full Support for Linea Layer-2 Solution

Moralis Unveils Enhanced Wallet API with New DeFi Positions

Share This Article
Facebook Twitter Email Print
Previous Article Why Bitcoin’s Price Fell Below $54,000: Key Factors Explained
Next Article WisdomTree Withdraws Ethereum Trust Registration After 3 Years
Leave a comment

Leave a Reply Cancel reply

Your email address will not be published. Required fields are marked *

Stay Connected

FacebookLike
TwitterFollow
YoutubeSubscribe
TelegramFollow
- Advertisement -
Ad image

Latest News

4 Cryptos to Challenge Solana: Potential Growth for Investors
Defi
Bitcoin ETF Inflows Exceed $3B, Demand Reaches 6-Month Peak
ETFs
Japan’s Push for Bitcoin and Ethereum ETFs Gains Momentum
Institutions
Ripple Appeals Court Ruling on XRP’s Institutional Sales
Meme
//

We influence millions of users and is the number one Crypto and Web3 news network on the planet

Sign Up for Our Newsletter

Subscribe to our newsletter to get our newest articles instantly!

© 2022 Foxiz News Network. Ruby Design Company. All Rights Reserved.
nl Dutchen Englishfr Frenchde Germanel Greekit Italianpt Portugueseru Russianes Spanish
en en
Join Us!

Subscribe to our newsletter and never miss our latest news, podcasts etc..

Zero spam, Unsubscribe at any time.
Welcome Back!

Sign in to your account

Lost your password?