-
Notifications
You must be signed in to change notification settings - Fork 175
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
Blob Signing APIs #300
Comments
From my current (vague) understanding of the blobs system there is some blob metadata embedded in the blocks, so the block and associated blobs are tightly coupled. If that's the case then having the combined endpoint for both obtaining data to sign seems reasonable. The As the items are decoupled, or going to be decoupled, on the p2p layer it makes sense to keep the endpoints for them separate unless the beacon node is going to carry out its own verification of both items in tandem before broadcasting (i.e. if pre-gossip verification of the blob requires information in the block), in which case there wouldn't be any benefit to having them as separate endpoints. |
Yes this is the case, transactions in the block contain references to the blobs so they're tightly linked
I don't think we'll validate any more than the required gossip conditions before broadcast, and the gossip conditions are being designed so block and blob can each be independently verified (this is the major reason decoupling them generally is advantageous) |
+1 on exposing blinded flow only. Publishing separately nakes sense too |
this is open to a race here where the head changes between block and blob request |
I started working on making a spec for this and had some general thoughts and questions:
Blinded blobs by default
I would propose we only support blinded blob communication in block production because blobs aren't interpret-able by the VC and because they are large. It would also save us work with the blinded block flow for the builder API. Full blobs are still accessible here for purposes outside block production.
How should validators get blobs from the BN for signing?
Separate requests
GET /eth/v1/validator/blobs_sidecar/{slot}
with no query paramsCombined request
How should signed blobs be returned to the BN?
Separate requests
POST /eth/v1/validator/blinded_blob
Combined request
SignedBlockContents
structGET
endpoint if we go that route, but I don't see the benefit this adds otherwise.The text was updated successfully, but these errors were encountered: