Skip to content

tree hash for blobs bundle #7368

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Closed
wants to merge 1 commit into from

Conversation

ltitanb
Copy link

@ltitanb ltitanb commented Apr 28, 2025

Issue Addressed

ref: #7367

Proposed Changes

Implement TreeHash for BlobsBundle

@jimmygchen
Copy link
Member

I don't believe this is required - please provide rationale if you think otherwise - happy to re-open.

@jimmygchen jimmygchen closed this Apr 29, 2025
@jimmygchen
Copy link
Member

Hi @ltitanb

Sorry for closing this abruptly without details - I'd like to add more info here - in the CL we don't expect to hash this object, that's why this wasn't implemented.

In PeerDAS/Fulu, we've updated the length of VariableList without introducing a new version, hence the hash produced would be different to before. If we need tree hashing on this object, then we'd need to introduce a new BlobsBundle version for PeerDAS, which requires a bit more boilerplate.

@jimmygchen
Copy link
Member

See

// Note on List limit:
// - Deneb to Electra: `MaxBlobCommitmentsPerBlock`
// - Fulu: `MaxCellsPerBlock`
// We choose to use a single type (with the larger value from Fulu as `N`) instead of having to
// introduce a new type for Fulu. This is to avoid messy conversions and having to add extra types
// with no gains - as `N` does not impact serialisation at all, and only affects merkleization,
// which we don't current do on `KzgProofs` anyway.
pub type KzgProofs<E> = VariableList<KzgProof, <E as EthSpec>::MaxCellsPerBlock>;

@ltitanb
Copy link
Author

ltitanb commented Apr 29, 2025

Noted, thanks for the explanation!

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