P

Proto-danksharding (EIP-4844) Implementation in LH

Ethereum scaling relies on Rollups, EIP-4844 will significantly reduce fees for rollups allowing greater scalability of Ethereum.


The problem Proto-danksharding (EIP-4844) Implementation in LH solves

The Ethereum scaling roadmap heavily relies on Rollups for scaling. These Rollups need Data Availability to make sure their data is available for fraud provers to download. Right now they rely on CALLDATA to provide this data to their users. CALLDATA has the disadvantage that nodes need to store it forever, so it increases the disk footprint of all Ethereum full nodes. EIP-4844 allows us to store Rollup data for a limited period (4 weeks) after which the data can be forgotten. This will significantly lower fees on Ethereum and is (most likely) the next big upgrade after Withdrawals. In order for this EIP to go ahead it needs to be implemented in all clients. There is a testnet with Prysm - Geth running and we want to join it with our Lighthouse implementation.

Challenges we ran into

The Lighthouse implementation is very complex and we both had no prior knowledge of the code base. On of us had never coded in Rust before which made things more difficult. The testnet configuration was not very clear and used a mainnet config which was modified in a way Lighthouse couldn't natively do. Once we set up our nodes, we couldn't find proper peers on the network since there was an issue with libp2p that we couldn't figure out.

Technologies used

Discussion