I have been addicted to the information about account abstraction recently. I have read many popular science and summaries written by many people, but I feel that many concepts are mixed together and are not clear and concise enough.

So I also tried to summarize the three core issues. After clarifying some basic issues, it may be easier to understand the background when reading articles about the implementation of EIP-4337.

The first fundamental question: What exactly does the term "account abstraction" mean?

According to the original intention of EIP-86, the original text reads: "...abstract the way of "signature verification" and "nonce check", so that the contract account can perform any "signature verification" and "nonce check" instead of a fixed mechanism written into the transaction process..."

Therefore, what needs to be abstracted most is the level of the "signature verification mechanism" in Ethereum's transaction processing flow: it was originally hardcoded in the consensus, but AA's proposal hopes that these should occur in the EVM (this is to abstract the signature verification mechanism), so that more signature algorithms can be supported.

Source: https://eips.ethereum.org/EIPS/eip-86

Second question: What is the goal of account abstraction?

At least in Vitalik's opinion, in the long run, EOA will be eliminated and EOA and contract accounts will be merged into a category where only contract accounts exist. Of course, how to merge EOA will require a lot of discussion and EIP.

Source: https://ethresear.ch/t/tradeoffs-in-account-abstraction-proposals/263

The third question: What is the core function of account abstraction?

In fact, it is not what everyone calls programmability, because this can be achieved through smart contracts long ago, so the specific programmability of the account is not what AA itself is concerned about. AA is concerned about how to make the "contract account" a type of citizen, so the functions achieved are: you can initiate transactions by yourself and pay for Gas by yourself.

We can see that Argent, Gnosis Safe, and Tornado.cash all require EOA to initiate transactions and pay Gas. This is what will change after AA, and it is also the core function that can make contract accounts first-class citizens.

Source: https://eips.ethereum.org/EIPS/eip-2938