Skip to content

Add EIP-7709 complexity assessment - #120

Open
LouisTsai-Csie wants to merge 1 commit into
mainfrom
feat/eip-7709-assessment
Open

LouisTsai-Csie wants to merge 1 commit into
mainfrom
feat/eip-7709-assessment

Conversation

@LouisTsai-Csie

Copy link
Copy Markdown
Contributor

No description provided.

@LouisTsai-Csie LouisTsai-Csie changed the title feat: add eip-7709 assessment Add EIP-7709 complexity assessment Aug 20, 2026
| Anchor | Score (0–3) | Rationale |
|---|---:|---|
| **EVM Gas rule changes** | 1 | `BLOCKHASH` opcode gas costs now follow state access rules, accounting for cold/warm scenarios. This affects existing `BLOCKHASH` test cases but not other pre-existing scenarios. Given 1 point consider the impact should be limited. |
| **State-access ordering within opcode execution** | 2 | Only `BLOCKHASH` being impacted and now accounting for state access cost. |

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

By rules above, shouldn't this be a 1?

| **New or modified transaction validity mechanisms** | 0 | No changes to transaction validity mechanisms |
| **New block / header fields** | 0 | No new block or header fields are introduced. |
| **New fork activation mechanism** | 0 | No state modifications, internal variables or similar are modified at the fork activation block. |
| **Performance risks** | 1 | The new work reduces to an `SLOAD`, which is already benchmarked and already priced; the EIP strictly raises the cost of the operation, so worst-case throughput moves in the safe direction. |

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

Wouldn't this be a 0 since all cases are already covered, and actually things are getting more expensive so "perf risk" is minimized?

| **New block / header fields** | 0 | No new block or header fields are introduced. |
| **New fork activation mechanism** | 0 | No state modifications, internal variables or similar are modified at the fork activation block. |
| **Performance risks** | 1 | The new work reduces to an `SLOAD`, which is already benchmarked and already priced; the EIP strictly raises the cost of the operation, so worst-case throughput moves in the safe direction. |
| **Security risks** | 1 | 106x cost increase might break `BLOCKHASH` callers. Interacts with EIP-2929/BAL. "MAY" clause risks consensus divergence if warming/recording skipped. Needs targeted review and fuzz testing on state-access accounting. |

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

I think this is fair. Just as an extra note, I did some analysis here, and the 1 score seems fair to me.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants