Skip to content
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

Endpoint for fetching blinded blocks #241

Merged
merged 1 commit into from
Sep 23, 2022

Conversation

michaelsproul
Copy link
Collaborator

This PR adds a new endpoint analogous to /eth/v2/beacon/blocks/{block_id} that serves blinded blocks rather than full blocks. The new endpoint is /eth/v1/beacon/blinded_blocks/{block_id}.

We already have other endpoints for creating new blinded blocks and POSTing signed blinded blocks back to the BN, so this PR completes the trilogy.

There are several reasons why such an endpoint is useful and desirable:

  • Most consensus clients do not store full blocks with execution payloads in their databases. Fetching a finalized blinded block can be done more quickly and efficiently than serving a full block which has had its payload pruned and would require a call to the EL to reconstruct.
  • Blinded blocks contain a lot of useful information that isn't in block headers, including the execution block hash, execution block number, attestations, exits, etc. For many consensus-oriented tools blinded blocks are sufficient to conduct their analysis (this is true of my block fingerprinting tools, and @jclapis's Rocket Pool tools). Blinded blocks can also be useful for builders and execution-oriented tools which might want to know e.g. the block_number of the head block, without fetching all transactions.

rolfyone
rolfyone previously approved these changes Sep 13, 2022
Copy link
Collaborator

@rolfyone rolfyone left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM. should be easy to implement in teku, I know you were seeking opinions on that too...

Copy link
Contributor

@djrtwo djrtwo left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

looks reasonable

Copy link
Collaborator

@mpetrunic mpetrunic left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Small comment, otherwise looks good!

apis/beacon/blocks/blinded_block.yaml Show resolved Hide resolved
apis/beacon/blocks/blinded_block.yaml Show resolved Hide resolved
@mpetrunic mpetrunic merged commit 1ae226d into ethereum:master Sep 23, 2022
bors bot pushed a commit to sigp/lighthouse that referenced this pull request Nov 10, 2022
## Issue Addressed

ethereum/beacon-APIs#241
ethereum/beacon-APIs#242

## Proposed Changes

Implement two new endpoints for fetching blinded blocks and RANDAO mixes.


Co-authored-by: realbigsean <sean@sigmaprime.io>
bors bot pushed a commit to sigp/lighthouse that referenced this pull request Nov 11, 2022
## Issue Addressed

ethereum/beacon-APIs#241
ethereum/beacon-APIs#242

## Proposed Changes

Implement two new endpoints for fetching blinded blocks and RANDAO mixes.


Co-authored-by: realbigsean <sean@sigmaprime.io>
bors bot pushed a commit to sigp/lighthouse that referenced this pull request Nov 11, 2022
## Issue Addressed

ethereum/beacon-APIs#241
ethereum/beacon-APIs#242

## Proposed Changes

Implement two new endpoints for fetching blinded blocks and RANDAO mixes.


Co-authored-by: realbigsean <sean@sigmaprime.io>
macladson pushed a commit to macladson/lighthouse that referenced this pull request Jan 5, 2023
## Issue Addressed

ethereum/beacon-APIs#241
ethereum/beacon-APIs#242

## Proposed Changes

Implement two new endpoints for fetching blinded blocks and RANDAO mixes.


Co-authored-by: realbigsean <sean@sigmaprime.io>
Woodpile37 pushed a commit to Woodpile37/lighthouse that referenced this pull request Jan 6, 2024
## Issue Addressed

ethereum/beacon-APIs#241
ethereum/beacon-APIs#242

## Proposed Changes

Implement two new endpoints for fetching blinded blocks and RANDAO mixes.


Co-authored-by: realbigsean <sean@sigmaprime.io>
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.

4 participants