Keone Hon ⨀ Profile picture
Nov 24 2 tweets 2 min read Read on X
Account Abstraction is confusing because there are a lot of different flavors and a lot of stated benefits.

But the simplest description is: "we want EOAs to have smart contracts"

If we add smart contracts to EOAs, we can (for example) support alternate signature schemes, because the smart contract can:
- keep another public key from another schema (e.g. Passkey) in storage
- verify messages signed by the corresponding Passkey privateKey before executing arbitrary calls via multiCall

Adding smart contracts to EOAs will be a big change and could be chaotic. If it is done naively, accounts will be in a variety of states, and upstream users will have weaker assumptions.

The various flavors of AA (EIP-4337, EIP-3074, EIP-7702) all stem from different approaches to dipping Ethereum's toes in the water with respect to adding smart contracts to EOAs.

EIP-4337 accomplishes "add smart contracts to EOAs" by just telling people "just use a smart contract wallet for now"

EIP-3074 "adds smart contracts to EOAs" by adding two opcodes, AUTH and AUTHCALL, which couple an EOA to a separate smart contract account
- an EOA calls AUTH to attest that a separate contract (the "invoker account") has permission to spend the EOA's assets / call functions on the EOA's behalf
- the invoker acount can use AUTHCALL to make a CALL to a contract as if the EOA were the caller

EIP-7702 "adds smart contracts to EOAs" by allowing EOAs to point to a separate contract account which contains code.
- after this is done, the EOA is "delegated" to that other contract from a code perspective
- people (or the EOA itself) can call the EOA as a contract, and the code from the delegated address will be run as if it were deployed at the EOA
EIP-7702 is elegant in the sense that it doesn't require additional opcodes, and it doesn't open up the EVM to the full craziness of arbitrary bytecode directly on each EOA.

The main protocol modification is adding a new transaction type by which the EOA owner (privateKey holder) signs a delegation to an external contract for its code.

Once that is done, the EOA owner also needs to set up the new authorization method (assuming there is one). For example if another signature scheme like Passkey is going to be used for authentication, the EOA owner needs to upload their Passkey public key to storage along with a ECDSA signature attesting to that newPublicKey.

Once this is done, UserOps can be submitted to the EOA (treating it like a smart contract), signing using the Passkey private key.

• • •

Missing some Tweet in this thread? You can try to force a refresh
 

Keep Current with Keone Hon ⨀

Keone Hon ⨀ Profile picture

Stay in touch and get notified when new unrolls are available from this author!

Read all threads

This Thread may be Removed Anytime!

PDF

Twitter may remove this content at anytime! Save it as PDF for later use!

Try unrolling a thread yourself!

how to unroll video
  1. Follow @ThreadReaderApp to mention us!

  2. From a Twitter thread mention us with a keyword "unroll"
@threadreaderapp unroll

Practice here first or read more on our help page!

More from @keoneHD

Jan 2, 2023
a hierarchy of metrics:
1. net profit (the E in P/E ratio)
2. gross profit (profit before OpEx aka salaries etc)
3. protocol revenue (portion that does or can accrue to tokenholders) net of incentives
4. revenue (protocol revenue + cost of revenue aka LP yield)
5. volume
6. TVL
here is how analysis on protocols can be improved:

A1. be aware that 6/5/4 are easily gamed, and when making comparisons across protocols, endeavor to measure real protocol revenue net of incentives (3)

this might require looking at an unincentivized period or segment
A1 (cont) gamed how?

TVL - gamed by leverage (recursive borrowing) and double-counting from composability - most famously by Dylan&Ian

volume - gamed by wash trading, but also by effectively-negative fees (LOOKS, DYDX, many new platforms)
Read 5 tweets
Dec 3, 2022
Eth net supply growth does NOT mean the network's value accrual (i.e. fee burn minus outlays) is 'unprofitable' for tokenholders in aggregate

It just means it's 'unprofitable' (very slightly) for unstaked Eth holders

Quick thread to elaborate:
Fee burn (post EIP-1559) is a value accrual method. Supply goes down + marketcap flat -> price goes up

Inflation from staking would seem like the opposite effect, but it's mostly not: 2/6
Staking-based inflation results in value transfer from nonstakers to stakers. The extreme was OHM with 7000+% APY to stakers but the same principle applies to Eth

Inflation is a 'cost' to nonstakers but a source of income to stakers. To holders in aggregate it's *mostly* 0

3/6
Read 7 tweets
Sep 26, 2022
Lots of pessimism about crypto right now

Price reflexivity & overindexing on the present make us overly reactive both ways. Overly euphoric in good times, overly pessimistic now

We should reason out what's powerful about on-chain apps, predict the future & act accordingly 🔮 1/
I'm optimistic about crypto & extremely confident that decentralized computation will better everyday people's lives

💪

Why? Bc it allows devs to stack innovation, building up sophisticated apps from simple primitives & open APIs. Speed of innovation is what matters

2/
Smart contract blockchains enable trustless shared global state

They enable a sandbox w a single global namespace in which many apps & assets coexist on one machine

Developers can build new apps that reuse existing apps' fns as subroutines using atomic execution by the VM
🏗️
3/
Read 26 tweets

Did Thread Reader help you today?

Support us! We are indie developers!


This site is made by just two indie developers on a laptop doing marketing, support and development! Read more about the story.

Become a Premium Member ($3/month or $30/year) and get exclusive features!

Become Premium

Don't want to be a Premium member but still want to support us?

Make a small donation by buying us coffee ($5) or help with server cost ($10)

Donate via Paypal

Or Donate anonymously using crypto!

Ethereum

0xfe58350B80634f60Fa6Dc149a72b4DFbc17D341E copy

Bitcoin

3ATGMxNzCUFzxpMCHL5sWSt4DVtS8UqXpi copy

Thank you for your support!

Follow Us!

:(