-
Notifications
You must be signed in to change notification settings - Fork 5.9k
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
Support for BLOBHASH from EIP-4844 #14740
Comments
Just as a side note, the eip mentions a point evaluation precompile, which I'm not sure we need to implement considering that we lack of support for BLS pairings. Should we also implement this, @ekpyron? For reference, the verify_kzg_proof function is defined here if needed. |
I don't think we have to do anything about precompiles. They don't need special language support like the opcodes, since they can be invoked with a generic You might just need to add some hard-coded results from the precompile for testing (IIRC we have them for other precompiles in |
Yeah, we're aiming for minimal Cancun support only for the next release, for which being able to low-level call the precompile is perfectly fine. It's not like it's a major issue to add high-level support per se, but we won't do it for now and only after strong demand (it's indeed better done via stdlib later on) |
FYI: we have implemented a blob hash getter contract via Assembly code and test it against devnet-12: https://github.com/ethstorage/eip4844-blob-hash-getter |
My two cents: could we introduce |
A Yul builtin is being added by #14757 so it's not either-or. We'll have both. |
Part of #14739
Two steps, first PR:
Second PR:
blobhash(uint index) returns (bytes32)
analog to the existing
blockhash
functionRemark:
Testing this may mean to add bogus values in EVMHost. I.e. check if we can inject values at all - otherwise the hashes may just end up as zero in testing.
Also needs to take care of this not being breaking: #11763
The text was updated successfully, but these errors were encountered: