-
Notifications
You must be signed in to change notification settings - Fork 780
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
verkle trees: add 2 fields to ExecutionData #3639
Comments
Hi Guillaume, thanks for writing this up! I have a basic implementation of this here: https://github.com/macladson/lighthouse/tree/verkle-trees and from my local testing it is backwards compatible with standard Geth (just passing around empty Verkle fields). I have a few clarifying questions:
Also, is there a PoS + Verkle enabled version of Geth that I can use for testing in my own local testnets? Something I can use to make sure that fully populated Thanks! |
And thank you for working on it!
🎉
I do!
Both are arbitraty-length, but if you want a maximum number that is safe, set them to 75K each for now.
There isn't, I naively thought it'd be easier for you to make a cl without an el than the other way around 😓 I'll ping you when I got it to work. |
@macladson I have created a test branch here gballet/go-ethereum#136 with the instructions on how to test it with your branch. Let me know if you encounter any issue. |
Will close this for now. Refer to #4042 |
Description
With the verge, proofs and witness of the pre-state of an (EL) block execution are included in the blocks. As discussed with Mac and Paul, I am creating this tracking issue to create a branch with the required fields to be added to the
ExecutionData
.Expected Behaviour
The
ExecutionData
needs to have two more, optional fields:VerkleProof
, a byte array of variable lengthVerkleKeyVals
, an array of (key, value) pairs, in which thekey
is a 32-byte vector, andvalue
is a byte vector of length either 0 (missing value) or 32.If present, these two fields should be propagated over the network with the rest of the
ExecutionData
so that other clients can inject these fields in their verkle-enabled EL.It is currently sufficient if these fields are expected to be present since genesis, as this is for a testnet (i.e. no fork implementation is currently necessary).
The text was updated successfully, but these errors were encountered: