diff --git a/CHANGELOG.md b/CHANGELOG.md index 2208521465c7..58f08ac67494 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -74,6 +74,7 @@ The format is based on Keep a Changelog, and this project adheres to Semantic Ve - Removed finalized validator index cache, no longer needed. - Removed validator queue position log on key reload and wait for activation. - Removed outdated spectest exclusions for EIP-6110. +- Removed kzg proof check from blob reconstructor. ### Fixed diff --git a/beacon-chain/execution/engine_client.go b/beacon-chain/execution/engine_client.go index 6acb0eafd7d1..0b853cac1080 100644 --- a/beacon-chain/execution/engine_client.go +++ b/beacon-chain/execution/engine_client.go @@ -623,13 +623,7 @@ func (s *Service) ReconstructBlobSidecars(ctx context.Context, block interfaces. continue } - // Verify the sidecar KZG proof v := s.blobVerifier(roBlob, verification.ELMemPoolRequirements) - if err := v.SidecarKzgProofVerified(); err != nil { - log.WithError(err).WithField("index", i).Error("failed to verify KZG proof for sidecar") - continue - } - verifiedBlob, err := v.VerifiedROBlob() if err != nil { log.WithError(err).WithField("index", i).Error("failed to verify RO blob") diff --git a/beacon-chain/verification/blob.go b/beacon-chain/verification/blob.go index 9ee44562c606..2084169e90dc 100644 --- a/beacon-chain/verification/blob.go +++ b/beacon-chain/verification/blob.go @@ -67,9 +67,11 @@ var InitsyncBlobSidecarRequirements = requirementList(GossipBlobSidecarRequireme RequireSidecarProposerExpected, ) -// ELMemPoolRequirements is a list of verification requirements to be used when importing blobs and proof from -// execution layer mempool. Only the KZG proof verification is required. -var ELMemPoolRequirements = []Requirement{RequireSidecarKzgProofVerified} +// ELMemPoolRequirements defines the verification requirements for importing blobs and proofs +// from the execution layer's mempool. Currently, no requirements are enforced because it is +// assumed that blobs and proofs from the execution layer are correctly formatted, +// given the trusted relationship between the consensus layer and execution layer. +var ELMemPoolRequirements []Requirement // BackfillBlobSidecarRequirements is the same as InitsyncBlobSidecarRequirements. var BackfillBlobSidecarRequirements = requirementList(InitsyncBlobSidecarRequirements).excluding()