Site icon WSJ-Crypto

Exciting News for Blob Users: The Latest on Fusaka!

“`html

tl;dr: In recent days, several L2s observed that their deployments on Sepolia were no longer functioning properly. This is attributed to EIP-7594, which modifies the structure for proofs. In preparation for Fusaka, we urge all blob creators to upgrade their software to generate Cell Proofs instead of blob proofs.

Background

A less discussed feature of EIP-7549 (PeerDAS) involves altering the format for proofs from blob proofs to cell proofs. This enables the downloading of a specific section of the blob instead of the entire blob for data availability sampling.

This modification could disrupt user applications that issue blob transactions. Signed transactions remain valid, but they need to recompute the cell proofs. Certain clients (notably go-ethereum) will accomplish this through the RPC on eth_sendTransaction and eth_sendRawTransaction (1). The conversion from blob proofs to cell proofs takes roughly one second; hence, we encourage blob transaction creators to transition to cell proofs to minimize overhead at the RPC level.

Transactions present in the txpool during the fork may be discarded by some implementations, whereas others may transform them into cell proofs. Therefore, it would be wise to resend your transactions with cell proofs soon after the fork if they aren’t being incorporated into the chain. Some implementations permit the dissemination of blob proof transactions up to a few minutes post-hard fork on the network layer for stability reasons.

Actionable changes

Should you be a blob transaction creator (e.g., an L2), it is essential to modify your transaction sending code to produce cell proofs.

All significant client libraries provide functionality to create these proofs through ComputeCellsAndKZGProofs(), which is accessible in all major languages (2). Usage examples are also available in all major languages within the client libraries (3).

Outlook

We aim to communicate these user-impacting changes more explicitly through the Ethereum blog moving forward and to enhance community outreach to prevent Ethereum users from feeling unprepared for adjustments in the protocol.

We additionally encourage L2s and other stakeholders that rely heavily on the Ethereum roadmap to adhere to the ACD process and engage more directly with the community. We hope to motivate teams to launch their contracts and test infrastructure on the devnets shortly before transitioning to the initial testnets. Another useful resource for staying updated with your changes is utilizing the Ethereum package offered by Kurtosis, which facilitates the creation of local networks with the latest specifications (4).

While it is regrettable that blob creators discovered this late in the hard fork process, it illustrates that the testnet procedure is working effectively and these concerns are identified well before they have the opportunity to surface on mainnet.

(1): go-ethereum will only perform the conversion on eth_sendRawTransaction from current master and v1.16.5 onward
(2): see https://github.com/search?q=repo%3Aethereum%2Fc-kzg-4844%20ComputeCellsAndKZGProofs&type=code
(3) Example for go-ethereum: https://github.com/ethereum/go-ethereum/blob/7c107c2691fa66a1da60e2b95f5946c3a3921b00/crypto/kzg4844/kzg4844_test.go#L194
(4) Ethereum package for kurtosis: https://github.com/ethpandaops/ethereum-package



Source link
“`

Exit mobile version