EIP-6465: SSZ Withdrawals Root

Discussion thread for EIP-6465: SSZ withdrawals root

EIP-4895 reference:

Background

Split from EIP-6404: SSZ Transactions Root

Relevant channel: #typed-transactions on ETH R&D Discord

I would personally much rather see all the SSZ changes in 1 EIP. It will be easier to discuss and reason about.

Splitting the changes into multiple EIPs allows more rollout flexibility; it is not necessary to bundle them in the same release.

This also allows more focused discussion on individual topics. For example, the Union/Onion vs normalized type discussion does not affect withdrawals. And the SSZ Optional may be useful irrespective of the root format in the execution block header, e.g., for EIP-4844.

However, I can also understand the desire to see all changes on 1 page, though. Hopefully, once the PRs are merged, Core | Ethereum Improvement Proposals can be used to regain that overview.

I’m just speaking from the experience of EOF – I think the fractured spec caused much more trouble than was worth. Plus I generally don’t think we should move the accumulators to SSZ piecewise and should instead do them all together.

1 Like

Mostly agree with this idea of consolidating SSZ related EIPS, however I would stop short of including EIP-6493 with the others. 6466, 6465 and 6404 are all improvements to how accumulators work by leveraging SSZ merkleization, and so designing (if not but maybe also delivering) them together makes sense.

Added typed withdrawal envelope to EIP-6465 to support exchange of SSZ Withdrawal; this is the same mechanism as defined in EIP-6493 / EIP-2718

Regarding EIP consolidation, the withdrawals EIP (EIP-6465) seems less connected to the transactions (EIP-6404) / receipts (EIP-6466) ones.