Skip to content

caps/eth.md: define block-level access list (BAL)#264

Open
nerolation wants to merge 3 commits intoethereum:masterfrom
nerolation:bal-p2p
Open

caps/eth.md: define block-level access list (BAL)#264
nerolation wants to merge 3 commits intoethereum:masterfrom
nerolation:bal-p2p

Conversation

@nerolation
Copy link

@nerolation nerolation commented Jan 13, 2026

Add eth/70 eth/71 protocol support for EIP-7928 Block-Level Access Lists (BALs).

Changes:

  • Add block-access-list-hash field to block header
  • Add GetBlockAccessLists (0x12) and BlockAccessLists (0x13) messages
  • Document BAL RLP encoding structure

@qu0b
Copy link

qu0b commented Jan 20, 2026

@nerolation do we need this merged for devnet-2?

@nerolation
Copy link
Author

No, I don't think so!
At which point should we add this to a devnet, @fjl ?

@MariusVanDerWijden
Copy link
Member

Yep I think this should be renamed to eth/71

@nerolation
Copy link
Author

One thing that might be worth considering here is adding a diff-only flag to GetBlockAccessLists that omits read-only data from the response, specifically, storage-reads would be returned as an empty list and touched-only accounts would be excluded entirely.
This reduces message size for clients that only need state diffs for parallel execution or state reconstruction, rather than the full data with unchanged state locations.
The trade-off is that diff-only responses cannot be validated against the block-access-list-hash in the header, so clients must verify the resulting state root after updating state (which ends up giving you the same guarantees).

Copy link
Member

@jochem-brouwer jochem-brouwer left a comment

Choose a reason for hiding this comment

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

Some comments! 😄 👍

@jochem-brouwer
Copy link
Member

Ah and could you also open a Networking EIP for this like https://eips.ethereum.org/EIPS/eip-7975?

@MariusVanDerWijden
Copy link
Member

Do we need to paginate the BALs as well? How far away are the worst case BALs from 10MB? The reads should be dependent on gas limit, so the size of the BALs will grow with growing gas limit

@nerolation
Copy link
Author

Do we need to paginate the BALs as well? How far away are the worst case BALs from 10MB? The reads should be dependent on gas limit, so the size of the BALs will grow with growing gas limit

yeah, depends on gas limit and state pricing but right now we're still quite far from the 10 MiB: at 60M gas limit, we may get BALs of 1 MiB and calldata of 5MiB (ignoring that the BAL may become smaller with the glamsterdam repricing for now; same applies for the worst-case calldata block) - so eth/70 is more pressuring for block bodies right now than for the BAL.
Still, I think the pagination should also be done for BALs too.

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.

5 participants