consensus/ethash: implement faster difficulty calculators (#21976)
This PR adds re-written difficulty calculators, which are based on uint256. It also adds a fuzzer + oss-fuzz integration for the new fuzzer. It does differential fuzzing between the new and old calculators. Note: this PR does not actually enable the new calculators.
Showing
- consensus/ethash/consensus.go 5 additions, 0 deletionsconsensus/ethash/consensus.go
- consensus/ethash/consensus_test.go 102 additions, 0 deletionsconsensus/ethash/consensus_test.go
- consensus/ethash/difficulty.go 193 additions, 0 deletionsconsensus/ethash/difficulty.go
- oss-fuzz.sh 1 addition, 0 deletionsoss-fuzz.sh
- tests/fuzzers/difficulty/debug/main.go 23 additions, 0 deletionstests/fuzzers/difficulty/debug/main.go
- tests/fuzzers/difficulty/difficulty-fuzz.go 145 additions, 0 deletionstests/fuzzers/difficulty/difficulty-fuzz.go
Loading
Please register or sign in to comment