hyperledger / besu

An enterprise-grade Java-based, Apache 2.0 licensed Ethereum client https://wiki.hyperledger.org/display/besu
https://www.hyperledger.org/projects/besu
Apache License 2.0
1.43k stars 757 forks source link

Feature/use gnark-crypto for ecc precompiles #7262

Open garyschulte opened 1 week ago

garyschulte commented 1 week ago

PR description

Use gnark-crypto from besu-native for ECC precompiles

This will get besu onto a supported and more performant ECC library, and should allow us to remove tech debt in besu-native.

This PR also addresses some templating problems that exist with some of the execution spec tests, where tests are created in directories that do not match their namespace (and thus were not being run)

Fixed Issue(s)

Thanks for sending a pull request! Have you done the following?

Locally, you can run these tests to catch failures early:

macfarla commented 6 days ago

LGTM except there are 10 tests failing

GeneralStateReferenceTest_507 > execution(String, GeneralStateTestCaseEipSpec, boolean) > Name: idPrecomps-Berlin[5] FAILED java.lang.RuntimeException at GeneralStateReferenceTest_507.java:39