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

Copy link

There has been no activity on this pull request for 2 weeks. It will be closed after 3 months of inactivity. If you would like to move this PR forward, please respond to any outstanding feedback or add a comment indicating that you have addressed all required feedback and are ready for a review.

@github-actions github-actions bot added the w-stale Waiting on activity label Jun 24, 2024
@github-actions github-actions bot removed the w-stale Waiting on activity label Jun 25, 2024
@Scamreno

This comment was marked as spam.

Comment on lines +18 to +21
Inspiration comes from [EIP-3074](./eip-3074.md) and [EIP-5003](./eip-5003.md):

- ([EIP-3074](./eip-3074.md)) + [EIP-5003](./eip-5003.md) = (`AUTH` + `AUTHCALL`) + `AUTHUSURP`
- [EIP-7697](./eip-7697.md) = `AUTHCREATE` = `AUTH` + `AUTHUSURP`
Copy link
Contributor

Choose a reason for hiding this comment

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

Linking to these proposals will prevent this proposal from advancing in status. Not a problem if that's what you want; just wanted to let you know.


#### Gas Cost

_todo: detail_
Copy link
Contributor

Choose a reason for hiding this comment

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

Suggested change
_todo: detail_
_todo: detail_ <!-- TODO -->

If you use HTML-style comments, the linter will make sure you come back and replace them.

Copy link

github-actions bot commented Aug 3, 2024

There has been no activity on this pull request for 2 weeks. It will be closed after 3 months of inactivity. If you would like to move this PR forward, please respond to any outstanding feedback or add a comment indicating that you have addressed all required feedback and are ready for a review.

@github-actions github-actions bot added the w-stale Waiting on activity label Aug 3, 2024
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 w-stale Waiting on activity
Projects
None yet
Development

Successfully merging this pull request may close these issues.

7 participants