Skip to content

Why is block extraData limited to 32 bytes? #12

Answered by siladu
siladu asked this question in Q&A
Discussion options

You must be logged in to vote

Answer from @ajsutton:

It just needs to have a limit - the idea is to just give block producers a small amount of data to indicate who created the block or whatever. Previously was called graffiti (and is called that in the beacon chain).

Clique and IBFT do this really odd thing where they still have the 32 byte limit for user supplied extra data, but then they shove a bunch of protocol data on the end to avoid adding additional fields to the block header. This is basically an abomination and so the validation of the extraData length is modified so that it allows the field to be longer, but checks the user supplied data is shorter (or possibly has to be exactly 32 bytes actually).

Replies: 1 comment

Comment options

siladu
Jul 17, 2022
Maintainer Author

You must be logged in to vote
0 replies
Answer selected by siladu
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Category
Q&A
1 participant