Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add EIP: AUTHCREATE opcode #8493

Open
wants to merge 1 commit into
base: master
Choose a base branch
from
Open

Add EIP: AUTHCREATE opcode #8493

wants to merge 1 commit into from

Conversation

txgyy
Copy link

@txgyy txgyy commented Apr 24, 2024

EIP-7697:AUTHCREATE opcode

Abstract

The EIP introduces an EVM instruction AUTHCREATE. It allows a deterministic addresses to migrate to a smart contract.

Inspiration comes from EIP-3074 and EIP-5003:

Motivation

For a long time, the EVM ecosystem has been plagued by two issues:

  1. Difficulty ensuring consistency across addresses on multiple chains, even when using the same bytecode.
  2. EOAs lack contract capabilities, preventing the realization of account abstraction.
    1. Authentication - any form of proving one’s identity.
    2. Authorization - any access policy.
    3. Replay protection - transaction ordering decoupled from replay protection.
    4. Gas payment - gas payment decoupled from the account itself.
    5. Execution - any execution logic.

EIP-7697 will address these issues.

Feature EIP-7697 EIP-3074 EIP-5003 EIP-7377
Deploy the same address ERC-2470 ✅ need 3 opcodes ✅ only EOA
Help EOA to upgrade to CA ✅ need 3 opcodes
Support secp256r1 or more
Reuse existing wallet infrastructure ✅ adapt the contract ✅ adapt the contract ❎ adapt the node rpc
Integrate easily with ERC-4337 and RIP-7560 ✅ support factory contract
Grant temporary CA capabilities to EOA

@txgyy txgyy requested a review from eth-bot as a code owner April 24, 2024 05:35
@github-actions github-actions bot added c-new Creates a brand new proposal s-draft This EIP is a Draft t-core labels Apr 24, 2024
@eth-bot
Copy link
Collaborator

eth-bot commented Apr 24, 2024

File EIPS/eip-7697.md

Requires 1 more reviewers from @axic, @g11tech, @gcolvin, @lightclient, @SamWilsn

@eth-bot eth-bot added e-consensus Waiting on editor consensus e-review Waiting on editor to review labels Apr 24, 2024
@eth-bot eth-bot changed the title EIP-XXXX: AuthCreate Add EIP: AUTH_CREATE opcode Apr 24, 2024
@github-actions github-actions bot added the w-ci Waiting on CI to pass label Apr 24, 2024
@txgyy txgyy force-pushed the AuthCreate branch 3 times, most recently from e79b7dc to 95eba77 Compare April 24, 2024 08:56
@github-actions github-actions bot removed the w-ci Waiting on CI to pass label Apr 24, 2024
@txgyy txgyy force-pushed the AuthCreate branch 3 times, most recently from 6aba06f to e53e0be Compare April 24, 2024 09:05
Copy link

The commit e53e0be (as a parent of 3f63f7b) contains errors.
Please inspect the Run Summary for details.

@github-actions github-actions bot added the w-ci Waiting on CI to pass label Apr 24, 2024
@github-actions github-actions bot removed the w-ci Waiting on CI to pass label Apr 24, 2024
EIPS/eip-7687.md Outdated Show resolved Hide resolved
@txgyy txgyy force-pushed the AuthCreate branch 2 times, most recently from a363aeb to 7fca221 Compare April 25, 2024 01:57
@txgyy txgyy changed the title Add EIP: AUTH_CREATE opcode Add EIP: EIP-7697: AUTH_CREATE opcode Apr 25, 2024
@txgyy txgyy changed the title Add EIP: EIP-7697: AUTH_CREATE opcode Add EIP: EIP-7697: AUTHCREATE opcode Apr 25, 2024
@eth-bot eth-bot changed the title Add EIP: EIP-7697: AUTHCREATE opcode Add EIP: AUTHCREATE opcode Apr 25, 2024
@txgyy txgyy force-pushed the AuthCreate branch 2 times, most recently from 66bf074 to 5ac0114 Compare April 25, 2024 06:54

| Feature | [EIP-7697](./eip-7697.md) | [EIP-3074](./eip-3074.md) | [EIP-5003](./eip-5003.md) | [EIP-7377](./eip-7377.md) |
|--------------------------------------------------------------|----------------------------|---------------------------|---------------------------|---------------------------|
| Deploy the same address [ERC-2470](./eip-2470.md) | ✅ | ❎ | ✅ need 3 opcodes | ✅ only EOA |
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

can you add crosses in red?


### Set Code

1. After the signature verification passes, first set the `nonce` to 0.
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

could you add how this would work/change things in post EOF world

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
c-new Creates a brand new proposal e-consensus Waiting on editor consensus e-review Waiting on editor to review s-draft This EIP is a Draft t-core
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

5 participants