diff --git a/tests/fuzzers/README.md b/tests/fuzzers/README.md
deleted file mode 100644
index 7611c53698..0000000000
--- a/tests/fuzzers/README.md
+++ /dev/null
@@ -1,45 +0,0 @@
-## Fuzzers
-
-To run a fuzzer locally, you need [go-fuzz](https://github.com/dvyukov/go-fuzz) installed.
-
-First build a fuzzing-binary out of the selected package:
-
-```
-(cd ./rlp && CGO_ENABLED=0 go-fuzz-build .)
-```
-That command should generate a `rlp-fuzz.zip` in the `rlp/` directory. If you are already in that directory, you can do
-
-```
-[user@work rlp]$ go-fuzz
-2019/11/26 13:36:54 workers: 6, corpus: 3 (3s ago), crashers: 0, restarts: 1/0, execs: 0 (0/sec), cover: 0, uptime: 3s
-2019/11/26 13:36:57 workers: 6, corpus: 3 (6s ago), crashers: 0, restarts: 1/0, execs: 0 (0/sec), cover: 1054, uptime: 6s
-2019/11/26 13:37:00 workers: 6, corpus: 3 (9s ago), crashers: 0, restarts: 1/8358, execs: 25074 (2786/sec), cover: 1054, uptime: 9s
-2019/11/26 13:37:03 workers: 6, corpus: 3 (12s ago), crashers: 0, restarts: 1/8497, execs: 50986 (4249/sec), cover: 1054, uptime: 12s
-2019/11/26 13:37:06 workers: 6, corpus: 3 (15s ago), crashers: 0, restarts: 1/9330, execs: 74640 (4976/sec), cover: 1054, uptime: 15s
-2019/11/26 13:37:09 workers: 6, corpus: 3 (18s ago), crashers: 0, restarts: 1/9948, execs: 99482 (5527/sec), cover: 1054, uptime: 18s
-2019/11/26 13:37:12 workers: 6, corpus: 3 (21s ago), crashers: 0, restarts: 1/9428, execs: 122568 (5836/sec), cover: 1054, uptime: 21s
-2019/11/26 13:37:15 workers: 6, corpus: 3 (24s ago), crashers: 0, restarts: 1/9676, execs: 145152 (6048/sec), cover: 1054, uptime: 24s
-2019/11/26 13:37:18 workers: 6, corpus: 3 (27s ago), crashers: 0, restarts: 1/9855, execs: 167538 (6205/sec), cover: 1054, uptime: 27s
-2019/11/26 13:37:21 workers: 6, corpus: 3 (30s ago), crashers: 0, restarts: 1/9645, execs: 192901 (6430/sec), cover: 1054, uptime: 30s
-2019/11/26 13:37:24 workers: 6, corpus: 3 (33s ago), crashers: 0, restarts: 1/9967, execs: 219294 (6645/sec), cover: 1054, uptime: 33s
-
-```
-Otherwise:
-```
-go-fuzz -bin ./rlp/rlp-fuzz.zip
-```
-
-### Notes
-
-Once a 'crasher' is found, the fuzzer tries to avoid reporting the same vector twice, so stores the fault in the `suppressions` folder. Thus, if you
-e.g. make changes to fix a bug, you should _remove_ all data from the `suppressions`-folder, to verify that the issue is indeed resolved.
-
-Also, if you have only one and the same exit-point for multiple different types of test, the suppression can make the fuzzer hide different types of errors. So make
-sure that each type of failure is unique (for an example, see the rlp fuzzer, where a counter `i` is used to differentiate between failures:
-
-```golang
- if !bytes.Equal(input, output) {
- panic(fmt.Sprintf("case %d: encode-decode is not equal, \ninput : %x\noutput: %x", i, input, output))
- }
-```
-
diff --git a/tests/fuzzers/bls12381/bls12381_fuzz.go b/tests/fuzzers/bls12381/bls12381_fuzz.go
deleted file mode 100644
index 9a5c566540..0000000000
--- a/tests/fuzzers/bls12381/bls12381_fuzz.go
+++ /dev/null
@@ -1,305 +0,0 @@
-// Copyright 2021 The go-ethereum Authors
-// This file is part of the go-ethereum library.
-//
-// The go-ethereum library is free software: you can redistribute it and/or modify
-// it under the terms of the GNU Lesser General Public License as published by
-// the Free Software Foundation, either version 3 of the License, or
-// (at your option) any later version.
-//
-// The go-ethereum library is distributed in the hope that it will be useful,
-// but WITHOUT ANY WARRANTY; without even the implied warranty of
-// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-// GNU Lesser General Public License for more details.
-//
-// You should have received a copy of the GNU Lesser General Public License
-// along with the go-ethereum library. If not, see .
-
-//go:build cgo
-// +build cgo
-
-package bls
-
-import (
- "bytes"
- "crypto/rand"
- "fmt"
- "io"
- "math/big"
-
- "github.com/consensys/gnark-crypto/ecc"
- gnark "github.com/consensys/gnark-crypto/ecc/bls12-381"
- "github.com/consensys/gnark-crypto/ecc/bls12-381/fp"
- "github.com/consensys/gnark-crypto/ecc/bls12-381/fr"
- "github.com/ethereum/go-ethereum/common"
- "github.com/ethereum/go-ethereum/crypto/bls12381"
- blst "github.com/supranational/blst/bindings/go"
-)
-
-func fuzzCrossPairing(data []byte) int {
- input := bytes.NewReader(data)
-
- // get random G1 points
- kpG1, cpG1, blG1, err := getG1Points(input)
- if err != nil {
- return 0
- }
-
- // get random G2 points
- kpG2, cpG2, blG2, err := getG2Points(input)
- if err != nil {
- return 0
- }
-
- // compute pairing using geth
- engine := bls12381.NewPairingEngine()
- engine.AddPair(kpG1, kpG2)
- kResult := engine.Result()
-
- // compute pairing using gnark
- cResult, err := gnark.Pair([]gnark.G1Affine{*cpG1}, []gnark.G2Affine{*cpG2})
- if err != nil {
- panic(fmt.Sprintf("gnark/bls12381 encountered error: %v", err))
- }
-
- // compare result
- if !(bytes.Equal(cResult.Marshal(), bls12381.NewGT().ToBytes(kResult))) {
- panic("pairing mismatch gnark / geth ")
- }
-
- // compute pairing using blst
- blstResult := blst.Fp12MillerLoop(blG2, blG1)
- blstResult.FinalExp()
- res := massageBLST(blstResult.ToBendian())
- if !(bytes.Equal(res, bls12381.NewGT().ToBytes(kResult))) {
- panic("pairing mismatch blst / geth")
- }
-
- return 1
-}
-
-func massageBLST(in []byte) []byte {
- out := make([]byte, len(in))
- len := 12 * 48
- // 1
- copy(out[0:], in[len-1*48:len])
- copy(out[1*48:], in[len-2*48:len-1*48])
- // 2
- copy(out[6*48:], in[len-3*48:len-2*48])
- copy(out[7*48:], in[len-4*48:len-3*48])
- // 3
- copy(out[2*48:], in[len-5*48:len-4*48])
- copy(out[3*48:], in[len-6*48:len-5*48])
- // 4
- copy(out[8*48:], in[len-7*48:len-6*48])
- copy(out[9*48:], in[len-8*48:len-7*48])
- // 5
- copy(out[4*48:], in[len-9*48:len-8*48])
- copy(out[5*48:], in[len-10*48:len-9*48])
- // 6
- copy(out[10*48:], in[len-11*48:len-10*48])
- copy(out[11*48:], in[len-12*48:len-11*48])
- return out
-}
-
-func fuzzCrossG1Add(data []byte) int {
- input := bytes.NewReader(data)
-
- // get random G1 points
- kp1, cp1, bl1, err := getG1Points(input)
- if err != nil {
- return 0
- }
-
- // get random G1 points
- kp2, cp2, bl2, err := getG1Points(input)
- if err != nil {
- return 0
- }
-
- // compute kp = kp1 + kp2
- g1 := bls12381.NewG1()
- kp := bls12381.PointG1{}
- g1.Add(&kp, kp1, kp2)
-
- // compute cp = cp1 + cp2
- _cp1 := new(gnark.G1Jac).FromAffine(cp1)
- _cp2 := new(gnark.G1Jac).FromAffine(cp2)
- cp := new(gnark.G1Affine).FromJacobian(_cp1.AddAssign(_cp2))
-
- // compare result
- if !(bytes.Equal(cp.Marshal(), g1.ToBytes(&kp))) {
- panic("G1 point addition mismatch gnark / geth ")
- }
-
- bl3 := blst.P1AffinesAdd([]*blst.P1Affine{bl1, bl2})
- if !(bytes.Equal(cp.Marshal(), bl3.Serialize())) {
- panic("G1 point addition mismatch blst / geth ")
- }
-
- return 1
-}
-
-func fuzzCrossG2Add(data []byte) int {
- input := bytes.NewReader(data)
-
- // get random G2 points
- kp1, cp1, bl1, err := getG2Points(input)
- if err != nil {
- return 0
- }
-
- // get random G2 points
- kp2, cp2, bl2, err := getG2Points(input)
- if err != nil {
- return 0
- }
-
- // compute kp = kp1 + kp2
- g2 := bls12381.NewG2()
- kp := bls12381.PointG2{}
- g2.Add(&kp, kp1, kp2)
-
- // compute cp = cp1 + cp2
- _cp1 := new(gnark.G2Jac).FromAffine(cp1)
- _cp2 := new(gnark.G2Jac).FromAffine(cp2)
- cp := new(gnark.G2Affine).FromJacobian(_cp1.AddAssign(_cp2))
-
- // compare result
- if !(bytes.Equal(cp.Marshal(), g2.ToBytes(&kp))) {
- panic("G2 point addition mismatch gnark / geth ")
- }
-
- bl3 := blst.P2AffinesAdd([]*blst.P2Affine{bl1, bl2})
- if !(bytes.Equal(cp.Marshal(), bl3.Serialize())) {
- panic("G1 point addition mismatch blst / geth ")
- }
-
- return 1
-}
-
-func fuzzCrossG1MultiExp(data []byte) int {
- var (
- input = bytes.NewReader(data)
- gethScalars []*big.Int
- gnarkScalars []fr.Element
- gethPoints []*bls12381.PointG1
- gnarkPoints []gnark.G1Affine
- )
- // n random scalars (max 17)
- for i := 0; i < 17; i++ {
- // note that geth/crypto/bls12381 works only with scalars <= 32bytes
- s, err := randomScalar(input, fr.Modulus())
- if err != nil {
- break
- }
- // get a random G1 point as basis
- kp1, cp1, _, err := getG1Points(input)
- if err != nil {
- break
- }
- gethScalars = append(gethScalars, s)
- var gnarkScalar = &fr.Element{}
- gnarkScalar = gnarkScalar.SetBigInt(s)
- gnarkScalars = append(gnarkScalars, *gnarkScalar)
-
- gethPoints = append(gethPoints, new(bls12381.PointG1).Set(kp1))
- gnarkPoints = append(gnarkPoints, *cp1)
- }
- if len(gethScalars) == 0 {
- return 0
- }
- // compute multi exponentiation
- g1 := bls12381.NewG1()
- kp := bls12381.PointG1{}
- if _, err := g1.MultiExp(&kp, gethPoints, gethScalars); err != nil {
- panic(fmt.Sprintf("G1 multi exponentiation errored (geth): %v", err))
- }
- // note that geth/crypto/bls12381.MultiExp mutates the scalars slice (and sets all the scalars to zero)
-
- // gnark multi exp
- cp := new(gnark.G1Affine)
- cp.MultiExp(gnarkPoints, gnarkScalars, ecc.MultiExpConfig{})
-
- // compare result
- if !(bytes.Equal(cp.Marshal(), g1.ToBytes(&kp))) {
- panic("G1 multi exponentiation mismatch gnark / geth ")
- }
-
- return 1
-}
-
-func getG1Points(input io.Reader) (*bls12381.PointG1, *gnark.G1Affine, *blst.P1Affine, error) {
- // sample a random scalar
- s, err := randomScalar(input, fp.Modulus())
- if err != nil {
- return nil, nil, nil, err
- }
-
- // compute a random point
- cp := new(gnark.G1Affine)
- _, _, g1Gen, _ := gnark.Generators()
- cp.ScalarMultiplication(&g1Gen, s)
- cpBytes := cp.Marshal()
-
- // marshal gnark point -> geth point
- g1 := bls12381.NewG1()
- kp, err := g1.FromBytes(cpBytes)
- if err != nil {
- panic(fmt.Sprintf("Could not marshal gnark.G1 -> geth.G1: %v", err))
- }
- if !bytes.Equal(g1.ToBytes(kp), cpBytes) {
- panic("bytes(gnark.G1) != bytes(geth.G1)")
- }
-
- // marshal gnark point -> blst point
- scalar := new(blst.Scalar).FromBEndian(common.LeftPadBytes(s.Bytes(), 32))
- p1 := new(blst.P1Affine).From(scalar)
- if !bytes.Equal(p1.Serialize(), cpBytes) {
- panic("bytes(blst.G1) != bytes(geth.G1)")
- }
-
- return kp, cp, p1, nil
-}
-
-func getG2Points(input io.Reader) (*bls12381.PointG2, *gnark.G2Affine, *blst.P2Affine, error) {
- // sample a random scalar
- s, err := randomScalar(input, fp.Modulus())
- if err != nil {
- return nil, nil, nil, err
- }
-
- // compute a random point
- cp := new(gnark.G2Affine)
- _, _, _, g2Gen := gnark.Generators()
- cp.ScalarMultiplication(&g2Gen, s)
- cpBytes := cp.Marshal()
-
- // marshal gnark point -> geth point
- g2 := bls12381.NewG2()
- kp, err := g2.FromBytes(cpBytes)
- if err != nil {
- panic(fmt.Sprintf("Could not marshal gnark.G2 -> geth.G2: %v", err))
- }
- if !bytes.Equal(g2.ToBytes(kp), cpBytes) {
- panic("bytes(gnark.G2) != bytes(geth.G2)")
- }
-
- // marshal gnark point -> blst point
- // Left pad the scalar to 32 bytes
- scalar := new(blst.Scalar).FromBEndian(common.LeftPadBytes(s.Bytes(), 32))
- p2 := new(blst.P2Affine).From(scalar)
- if !bytes.Equal(p2.Serialize(), cpBytes) {
- panic("bytes(blst.G2) != bytes(geth.G2)")
- }
-
- return kp, cp, p2, nil
-}
-
-func randomScalar(r io.Reader, max *big.Int) (k *big.Int, err error) {
- for {
- k, err = rand.Int(r, max)
- if err != nil || k.Sign() > 0 {
- return
- }
- }
-}
diff --git a/tests/fuzzers/bls12381/bls12381_test.go b/tests/fuzzers/bls12381/bls12381_test.go
deleted file mode 100644
index 3e88979d16..0000000000
--- a/tests/fuzzers/bls12381/bls12381_test.go
+++ /dev/null
@@ -1,100 +0,0 @@
-// Copyright 2023 The go-ethereum Authors
-// This file is part of the go-ethereum library.
-//
-// The go-ethereum library is free software: you can redistribute it and/or modify
-// it under the terms of the GNU Lesser General Public License as published by
-// the Free Software Foundation, either version 3 of the License, or
-// (at your option) any later version.
-//
-// The go-ethereum library is distributed in the hope that it will be useful,
-// but WITHOUT ANY WARRANTY; without even the implied warranty of
-// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-// GNU Lesser General Public License for more details.
-//
-// You should have received a copy of the GNU Lesser General Public License
-// along with the go-ethereum library. If not, see .
-
-//go:build cgo
-// +build cgo
-
-package bls
-
-import "testing"
-
-func FuzzCrossPairing(f *testing.F) {
- f.Fuzz(func(t *testing.T, data []byte) {
- fuzzCrossPairing(data)
- })
-}
-
-func FuzzCrossG1Add(f *testing.F) {
- f.Fuzz(func(t *testing.T, data []byte) {
- fuzzCrossG1Add(data)
- })
-}
-
-func FuzzCrossG2Add(f *testing.F) {
- f.Fuzz(func(t *testing.T, data []byte) {
- fuzzCrossG2Add(data)
- })
-}
-
-func FuzzCrossG1MultiExp(f *testing.F) {
- f.Fuzz(func(t *testing.T, data []byte) {
- fuzzCrossG1MultiExp(data)
- })
-}
-
-func FuzzG1Add(f *testing.F) {
- f.Fuzz(func(t *testing.T, data []byte) {
- fuzz(blsG1Add, data)
- })
-}
-
-func FuzzG1Mul(f *testing.F) {
- f.Fuzz(func(t *testing.T, data []byte) {
- fuzz(blsG1Mul, data)
- })
-}
-
-func FuzzG1MultiExp(f *testing.F) {
- f.Fuzz(func(t *testing.T, data []byte) {
- fuzz(blsG1MultiExp, data)
- })
-}
-
-func FuzzG2Add(f *testing.F) {
- f.Fuzz(func(t *testing.T, data []byte) {
- fuzz(blsG2Add, data)
- })
-}
-
-func FuzzG2Mul(f *testing.F) {
- f.Fuzz(func(t *testing.T, data []byte) {
- fuzz(blsG2Mul, data)
- })
-}
-
-func FuzzG2MultiExp(f *testing.F) {
- f.Fuzz(func(t *testing.T, data []byte) {
- fuzz(blsG2MultiExp, data)
- })
-}
-
-func FuzzPairing(f *testing.F) {
- f.Fuzz(func(t *testing.T, data []byte) {
- fuzz(blsPairing, data)
- })
-}
-
-func FuzzMapG1(f *testing.F) {
- f.Fuzz(func(t *testing.T, data []byte) {
- fuzz(blsMapG1, data)
- })
-}
-
-func FuzzMapG2(f *testing.F) {
- f.Fuzz(func(t *testing.T, data []byte) {
- fuzz(blsMapG2, data)
- })
-}
diff --git a/tests/fuzzers/bls12381/precompile_fuzzer.go b/tests/fuzzers/bls12381/precompile_fuzzer.go
deleted file mode 100644
index 763ed56e9f..0000000000
--- a/tests/fuzzers/bls12381/precompile_fuzzer.go
+++ /dev/null
@@ -1,93 +0,0 @@
-// Copyright 2020 The go-ethereum Authors
-// This file is part of the go-ethereum library.
-//
-// The go-ethereum library is free software: you can redistribute it and/or modify
-// it under the terms of the GNU Lesser General Public License as published by
-// the Free Software Foundation, either version 3 of the License, or
-// (at your option) any later version.
-//
-// The go-ethereum library is distributed in the hope that it will be useful,
-// but WITHOUT ANY WARRANTY; without even the implied warranty of
-// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-// GNU Lesser General Public License for more details.
-//
-// You should have received a copy of the GNU Lesser General Public License
-// along with the go-ethereum library. If not, see .
-
-package bls
-
-import (
- "bytes"
- "fmt"
-
- "github.com/ethereum/go-ethereum/common"
- "github.com/ethereum/go-ethereum/core/vm"
-)
-
-const (
- blsG1Add = byte(10)
- blsG1Mul = byte(11)
- blsG1MultiExp = byte(12)
- blsG2Add = byte(13)
- blsG2Mul = byte(14)
- blsG2MultiExp = byte(15)
- blsPairing = byte(16)
- blsMapG1 = byte(17)
- blsMapG2 = byte(18)
-)
-
-func checkInput(id byte, inputLen int) bool {
- switch id {
- case blsG1Add:
- return inputLen == 256
- case blsG1Mul:
- return inputLen == 160
- case blsG1MultiExp:
- return inputLen%160 == 0
- case blsG2Add:
- return inputLen == 512
- case blsG2Mul:
- return inputLen == 288
- case blsG2MultiExp:
- return inputLen%288 == 0
- case blsPairing:
- return inputLen%384 == 0
- case blsMapG1:
- return inputLen == 64
- case blsMapG2:
- return inputLen == 128
- }
- panic("programmer error")
-}
-
-// The function must return
-//
-// - 1 if the fuzzer should increase priority of the
-// given input during subsequent fuzzing (for example, the input is lexically
-// correct and was parsed successfully);
-// - -1 if the input must not be added to corpus even if gives new coverage; and
-// - 0 otherwise
-//
-// other values are reserved for future use.
-func fuzz(id byte, data []byte) int {
- // Even on bad input, it should not crash, so we still test the gas calc
- precompile := vm.PrecompiledContractsBLS[common.BytesToAddress([]byte{id})]
- gas := precompile.RequiredGas(data)
- if !checkInput(id, len(data)) {
- return 0
- }
- // If the gas cost is too large (25M), bail out
- if gas > 25*1000*1000 {
- return 0
- }
- cpy := make([]byte, len(data))
- copy(cpy, data)
- _, err := precompile.Run(cpy)
- if !bytes.Equal(cpy, data) {
- panic(fmt.Sprintf("input data modified, precompile %d: %x %x", id, data, cpy))
- }
- if err != nil {
- return 0
- }
- return 1
-}
diff --git a/tests/fuzzers/bls12381/testdata/fuzz_g1_add_seed_corpus.zip b/tests/fuzzers/bls12381/testdata/fuzz_g1_add_seed_corpus.zip
deleted file mode 100644
index 16498c1cba..0000000000
Binary files a/tests/fuzzers/bls12381/testdata/fuzz_g1_add_seed_corpus.zip and /dev/null differ
diff --git a/tests/fuzzers/bls12381/testdata/fuzz_g1_mul_seed_corpus.zip b/tests/fuzzers/bls12381/testdata/fuzz_g1_mul_seed_corpus.zip
deleted file mode 100644
index 57f9d6696d..0000000000
Binary files a/tests/fuzzers/bls12381/testdata/fuzz_g1_mul_seed_corpus.zip and /dev/null differ
diff --git a/tests/fuzzers/bls12381/testdata/fuzz_g1_multiexp_seed_corpus.zip b/tests/fuzzers/bls12381/testdata/fuzz_g1_multiexp_seed_corpus.zip
deleted file mode 100644
index 7271f040f3..0000000000
Binary files a/tests/fuzzers/bls12381/testdata/fuzz_g1_multiexp_seed_corpus.zip and /dev/null differ
diff --git a/tests/fuzzers/bls12381/testdata/fuzz_g2_add_seed_corpus.zip b/tests/fuzzers/bls12381/testdata/fuzz_g2_add_seed_corpus.zip
deleted file mode 100644
index cd5206ca0b..0000000000
Binary files a/tests/fuzzers/bls12381/testdata/fuzz_g2_add_seed_corpus.zip and /dev/null differ
diff --git a/tests/fuzzers/bls12381/testdata/fuzz_g2_mul_seed_corpus.zip b/tests/fuzzers/bls12381/testdata/fuzz_g2_mul_seed_corpus.zip
deleted file mode 100644
index f784a5a3d7..0000000000
Binary files a/tests/fuzzers/bls12381/testdata/fuzz_g2_mul_seed_corpus.zip and /dev/null differ
diff --git a/tests/fuzzers/bls12381/testdata/fuzz_g2_multiexp_seed_corpus.zip b/tests/fuzzers/bls12381/testdata/fuzz_g2_multiexp_seed_corpus.zip
deleted file mode 100644
index c205117a46..0000000000
Binary files a/tests/fuzzers/bls12381/testdata/fuzz_g2_multiexp_seed_corpus.zip and /dev/null differ
diff --git a/tests/fuzzers/bls12381/testdata/fuzz_map_g1_seed_corpus.zip b/tests/fuzzers/bls12381/testdata/fuzz_map_g1_seed_corpus.zip
deleted file mode 100644
index 70382fbe53..0000000000
Binary files a/tests/fuzzers/bls12381/testdata/fuzz_map_g1_seed_corpus.zip and /dev/null differ
diff --git a/tests/fuzzers/bls12381/testdata/fuzz_map_g2_seed_corpus.zip b/tests/fuzzers/bls12381/testdata/fuzz_map_g2_seed_corpus.zip
deleted file mode 100644
index 67adc5b5e8..0000000000
Binary files a/tests/fuzzers/bls12381/testdata/fuzz_map_g2_seed_corpus.zip and /dev/null differ
diff --git a/tests/fuzzers/bls12381/testdata/fuzz_pairing_seed_corpus.zip b/tests/fuzzers/bls12381/testdata/fuzz_pairing_seed_corpus.zip
deleted file mode 100644
index e24d2b0a52..0000000000
Binary files a/tests/fuzzers/bls12381/testdata/fuzz_pairing_seed_corpus.zip and /dev/null differ
diff --git a/tests/fuzzers/bn256/bn256_fuzz.go b/tests/fuzzers/bn256/bn256_fuzz.go
deleted file mode 100644
index 75f7d59dee..0000000000
--- a/tests/fuzzers/bn256/bn256_fuzz.go
+++ /dev/null
@@ -1,183 +0,0 @@
-// Copyright 2018 The go-ethereum Authors
-// This file is part of the go-ethereum library.
-//
-// The go-ethereum library is free software: you can redistribute it and/or modify
-// it under the terms of the GNU Lesser General Public License as published by
-// the Free Software Foundation, either version 3 of the License, or
-// (at your option) any later version.
-//
-// The go-ethereum library is distributed in the hope that it will be useful,
-// but WITHOUT ANY WARRANTY; without even the implied warranty of
-// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-// GNU Lesser General Public License for more details.
-//
-// You should have received a copy of the GNU Lesser General Public License
-// along with the go-ethereum library. If not, see .
-
-package bn256
-
-import (
- "bytes"
- "fmt"
- "io"
- "math/big"
-
- "github.com/consensys/gnark-crypto/ecc/bn254"
- cloudflare "github.com/ethereum/go-ethereum/crypto/bn256/cloudflare"
- google "github.com/ethereum/go-ethereum/crypto/bn256/google"
-)
-
-func getG1Points(input io.Reader) (*cloudflare.G1, *google.G1, *bn254.G1Affine) {
- _, xc, err := cloudflare.RandomG1(input)
- if err != nil {
- // insufficient input
- return nil, nil, nil
- }
- xg := new(google.G1)
- if _, err := xg.Unmarshal(xc.Marshal()); err != nil {
- panic(fmt.Sprintf("Could not marshal cloudflare -> google: %v", err))
- }
- xs := new(bn254.G1Affine)
- if err := xs.Unmarshal(xc.Marshal()); err != nil {
- panic(fmt.Sprintf("Could not marshal cloudflare -> gnark: %v", err))
- }
- return xc, xg, xs
-}
-
-func getG2Points(input io.Reader) (*cloudflare.G2, *google.G2, *bn254.G2Affine) {
- _, xc, err := cloudflare.RandomG2(input)
- if err != nil {
- // insufficient input
- return nil, nil, nil
- }
- xg := new(google.G2)
- if _, err := xg.Unmarshal(xc.Marshal()); err != nil {
- panic(fmt.Sprintf("Could not marshal cloudflare -> google: %v", err))
- }
- xs := new(bn254.G2Affine)
- if err := xs.Unmarshal(xc.Marshal()); err != nil {
- panic(fmt.Sprintf("Could not marshal cloudflare -> gnark: %v", err))
- }
- return xc, xg, xs
-}
-
-// fuzzAdd fuzzez bn256 addition between the Google and Cloudflare libraries.
-func fuzzAdd(data []byte) int {
- input := bytes.NewReader(data)
- xc, xg, xs := getG1Points(input)
- if xc == nil {
- return 0
- }
- yc, yg, ys := getG1Points(input)
- if yc == nil {
- return 0
- }
- // Ensure both libs can parse the second curve point
- // Add the two points and ensure they result in the same output
- rc := new(cloudflare.G1)
- rc.Add(xc, yc)
-
- rg := new(google.G1)
- rg.Add(xg, yg)
-
- tmpX := new(bn254.G1Jac).FromAffine(xs)
- tmpY := new(bn254.G1Jac).FromAffine(ys)
- rs := new(bn254.G1Affine).FromJacobian(tmpX.AddAssign(tmpY))
-
- if !bytes.Equal(rc.Marshal(), rg.Marshal()) {
- panic("add mismatch: cloudflare/google")
- }
-
- if !bytes.Equal(rc.Marshal(), rs.Marshal()) {
- panic("add mismatch: cloudflare/gnark")
- }
- return 1
-}
-
-// fuzzMul fuzzez bn256 scalar multiplication between the Google and Cloudflare
-// libraries.
-func fuzzMul(data []byte) int {
- input := bytes.NewReader(data)
- pc, pg, ps := getG1Points(input)
- if pc == nil {
- return 0
- }
- // Add the two points and ensure they result in the same output
- remaining := input.Len()
- if remaining == 0 {
- return 0
- }
- if remaining > 128 {
- // The evm only ever uses 32 byte integers, we need to cap this otherwise
- // we run into slow exec. A 236Kb byte integer cause oss-fuzz to report it as slow.
- // 128 bytes should be fine though
- return 0
- }
- buf := make([]byte, remaining)
- input.Read(buf)
-
- rc := new(cloudflare.G1)
- rc.ScalarMult(pc, new(big.Int).SetBytes(buf))
-
- rg := new(google.G1)
- rg.ScalarMult(pg, new(big.Int).SetBytes(buf))
-
- rs := new(bn254.G1Jac)
- psJac := new(bn254.G1Jac).FromAffine(ps)
- rs.ScalarMultiplication(psJac, new(big.Int).SetBytes(buf))
- rsAffine := new(bn254.G1Affine).FromJacobian(rs)
-
- if !bytes.Equal(rc.Marshal(), rg.Marshal()) {
- panic("scalar mul mismatch: cloudflare/google")
- }
- if !bytes.Equal(rc.Marshal(), rsAffine.Marshal()) {
- panic("scalar mul mismatch: cloudflare/gnark")
- }
- return 1
-}
-
-func fuzzPair(data []byte) int {
- input := bytes.NewReader(data)
- pc, pg, ps := getG1Points(input)
- if pc == nil {
- return 0
- }
- tc, tg, ts := getG2Points(input)
- if tc == nil {
- return 0
- }
-
- // Pair the two points and ensure they result in the same output
- clPair := cloudflare.Pair(pc, tc).Marshal()
- gPair := google.Pair(pg, tg).Marshal()
- if !bytes.Equal(clPair, gPair) {
- panic("pairing mismatch: cloudflare/google")
- }
- cPair, err := bn254.Pair([]bn254.G1Affine{*ps}, []bn254.G2Affine{*ts})
- if err != nil {
- panic(fmt.Sprintf("gnark/bn254 encountered error: %v", err))
- }
-
- // gnark uses a different pairing algorithm which might produce
- // different but also correct outputs, we need to scale the output by s
-
- u, _ := new(big.Int).SetString("0x44e992b44a6909f1", 0)
- u_exp2 := new(big.Int).Exp(u, big.NewInt(2), nil) // u^2
- u_6_exp2 := new(big.Int).Mul(big.NewInt(6), u_exp2) // 6*u^2
- u_3 := new(big.Int).Mul(big.NewInt(3), u) // 3*u
- inner := u_6_exp2.Add(u_6_exp2, u_3) // 6*u^2 + 3*u
- inner.Add(inner, big.NewInt(1)) // 6*u^2 + 3*u + 1
- u_2 := new(big.Int).Mul(big.NewInt(2), u) // 2*u
- s := u_2.Mul(u_2, inner) // 2*u(6*u^2 + 3*u + 1)
-
- gRes := new(bn254.GT)
- if err := gRes.SetBytes(clPair); err != nil {
- panic(err)
- }
- gRes = gRes.Exp(*gRes, s)
- if !bytes.Equal(cPair.Marshal(), gRes.Marshal()) {
- panic("pairing mismatch: cloudflare/gnark")
- }
-
- return 1
-}
diff --git a/tests/fuzzers/bn256/bn256_test.go b/tests/fuzzers/bn256/bn256_test.go
deleted file mode 100644
index 8b2f962284..0000000000
--- a/tests/fuzzers/bn256/bn256_test.go
+++ /dev/null
@@ -1,37 +0,0 @@
-// Copyright 2023 The go-ethereum Authors
-// This file is part of the go-ethereum library.
-//
-// The go-ethereum library is free software: you can redistribute it and/or modify
-// it under the terms of the GNU Lesser General Public License as published by
-// the Free Software Foundation, either version 3 of the License, or
-// (at your option) any later version.
-//
-// The go-ethereum library is distributed in the hope that it will be useful,
-// but WITHOUT ANY WARRANTY; without even the implied warranty of
-// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-// GNU Lesser General Public License for more details.
-//
-// You should have received a copy of the GNU Lesser General Public License
-// along with the go-ethereum library. If not, see .
-
-package bn256
-
-import "testing"
-
-func FuzzAdd(f *testing.F) {
- f.Fuzz(func(t *testing.T, data []byte) {
- fuzzAdd(data)
- })
-}
-
-func FuzzMul(f *testing.F) {
- f.Fuzz(func(t *testing.T, data []byte) {
- fuzzMul(data)
- })
-}
-
-func FuzzPair(f *testing.F) {
- f.Fuzz(func(t *testing.T, data []byte) {
- fuzzPair(data)
- })
-}
diff --git a/tests/fuzzers/difficulty/difficulty-fuzz.go b/tests/fuzzers/difficulty/difficulty-fuzz.go
deleted file mode 100644
index fbbd7f6876..0000000000
--- a/tests/fuzzers/difficulty/difficulty-fuzz.go
+++ /dev/null
@@ -1,146 +0,0 @@
-// Copyright 2020 The go-ethereum Authors
-// This file is part of the go-ethereum library.
-//
-// The go-ethereum library is free software: you can redistribute it and/or modify
-// it under the terms of the GNU Lesser General Public License as published by
-// the Free Software Foundation, either version 3 of the License, or
-// (at your option) any later version.
-//
-// The go-ethereum library is distributed in the hope that it will be useful,
-// but WITHOUT ANY WARRANTY; without even the implied warranty of
-// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-// GNU Lesser General Public License for more details.
-//
-// You should have received a copy of the GNU Lesser General Public License
-// along with the go-ethereum library. If not, see .
-
-package difficulty
-
-import (
- "bytes"
- "encoding/binary"
- "fmt"
- "io"
- "math/big"
-
- "github.com/ethereum/go-ethereum/consensus/ethash"
- "github.com/ethereum/go-ethereum/core/types"
-)
-
-type fuzzer struct {
- input io.Reader
- exhausted bool
-}
-
-func (f *fuzzer) read(size int) []byte {
- out := make([]byte, size)
- if _, err := f.input.Read(out); err != nil {
- f.exhausted = true
- }
- return out
-}
-
-func (f *fuzzer) readSlice(min, max int) []byte {
- var a uint16
- binary.Read(f.input, binary.LittleEndian, &a)
- size := min + int(a)%(max-min)
- out := make([]byte, size)
- if _, err := f.input.Read(out); err != nil {
- f.exhausted = true
- }
- return out
-}
-
-func (f *fuzzer) readUint64(min, max uint64) uint64 {
- if min == max {
- return min
- }
- var a uint64
- if err := binary.Read(f.input, binary.LittleEndian, &a); err != nil {
- f.exhausted = true
- }
- a = min + a%(max-min)
- return a
-}
-func (f *fuzzer) readBool() bool {
- return f.read(1)[0]&0x1 == 0
-}
-
-// Fuzz function must return
-//
-// - 1 if the fuzzer should increase priority of the
-// given input during subsequent fuzzing (for example, the input is lexically
-// correct and was parsed successfully);
-// - -1 if the input must not be added to corpus even if gives new coverage; and
-// - 0 otherwise
-//
-// other values are reserved for future use.
-func fuzz(data []byte) int {
- f := fuzzer{
- input: bytes.NewReader(data),
- exhausted: false,
- }
- return f.fuzz()
-}
-
-var minDifficulty = big.NewInt(0x2000)
-
-type calculator func(time uint64, parent *types.Header) *big.Int
-
-func (f *fuzzer) fuzz() int {
- // A parent header
- header := &types.Header{}
- if f.readBool() {
- header.UncleHash = types.EmptyUncleHash
- }
- // Difficulty can range between 0x2000 (2 bytes) and up to 32 bytes
- {
- diff := new(big.Int).SetBytes(f.readSlice(2, 32))
- if diff.Cmp(minDifficulty) < 0 {
- diff.Set(minDifficulty)
- }
- header.Difficulty = diff
- }
- // Number can range between 0 and up to 32 bytes (but not so that the child exceeds it)
- {
- // However, if we use astronomic numbers, then the bomb exp karatsuba calculation
- // in the legacy methods)
- // times out, so we limit it to fit within reasonable bounds
- number := new(big.Int).SetBytes(f.readSlice(0, 4)) // 4 bytes: 32 bits: block num max 4 billion
- header.Number = number
- }
- // Both parent and child time must fit within uint64
- var time uint64
- {
- childTime := f.readUint64(1, 0xFFFFFFFFFFFFFFFF)
- //fmt.Printf("childTime: %x\n",childTime)
- delta := f.readUint64(1, childTime)
- //fmt.Printf("delta: %v\n", delta)
- pTime := childTime - delta
- header.Time = pTime
- time = childTime
- }
- // Bomb delay will never exceed uint64
- bombDelay := new(big.Int).SetUint64(f.readUint64(1, 0xFFFFFFFFFFFFFFFe))
-
- if f.exhausted {
- return 0
- }
-
- for i, pair := range []struct {
- bigFn calculator
- u256Fn calculator
- }{
- {ethash.FrontierDifficultyCalculator, ethash.CalcDifficultyFrontierU256},
- {ethash.HomesteadDifficultyCalculator, ethash.CalcDifficultyHomesteadU256},
- {ethash.DynamicDifficultyCalculator(bombDelay), ethash.MakeDifficultyCalculatorU256(bombDelay)},
- } {
- want := pair.bigFn(time, header)
- have := pair.u256Fn(time, header)
- if want.Cmp(have) != 0 {
- panic(fmt.Sprintf("pair %d: want %x have %x\nparent.Number: %x\np.Time: %x\nc.Time: %x\nBombdelay: %v\n", i, want, have,
- header.Number, header.Time, time, bombDelay))
- }
- }
- return 1
-}
diff --git a/tests/fuzzers/difficulty/difficulty_test.go b/tests/fuzzers/difficulty/difficulty_test.go
deleted file mode 100644
index 49beedb486..0000000000
--- a/tests/fuzzers/difficulty/difficulty_test.go
+++ /dev/null
@@ -1,25 +0,0 @@
-// Copyright 2023 The go-ethereum Authors
-// This file is part of the go-ethereum library.
-//
-// The go-ethereum library is free software: you can redistribute it and/or modify
-// it under the terms of the GNU Lesser General Public License as published by
-// the Free Software Foundation, either version 3 of the License, or
-// (at your option) any later version.
-//
-// The go-ethereum library is distributed in the hope that it will be useful,
-// but WITHOUT ANY WARRANTY; without even the implied warranty of
-// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-// GNU Lesser General Public License for more details.
-//
-// You should have received a copy of the GNU Lesser General Public License
-// along with the go-ethereum library. If not, see .
-
-package difficulty
-
-import "testing"
-
-func Fuzz(f *testing.F) {
- f.Fuzz(func(t *testing.T, data []byte) {
- fuzz(data)
- })
-}
diff --git a/tests/fuzzers/rangeproof/corpus/1c14030f26872e57bf1481084f151d71eed8161c-1 b/tests/fuzzers/rangeproof/corpus/1c14030f26872e57bf1481084f151d71eed8161c-1
deleted file mode 100644
index 31c08bafaf..0000000000
Binary files a/tests/fuzzers/rangeproof/corpus/1c14030f26872e57bf1481084f151d71eed8161c-1 and /dev/null differ
diff --git a/tests/fuzzers/rangeproof/corpus/27e54254422543060a13ea8a4bc913d768e4adb6-2 b/tests/fuzzers/rangeproof/corpus/27e54254422543060a13ea8a4bc913d768e4adb6-2
deleted file mode 100644
index 7bce13ef80..0000000000
Binary files a/tests/fuzzers/rangeproof/corpus/27e54254422543060a13ea8a4bc913d768e4adb6-2 and /dev/null differ
diff --git a/tests/fuzzers/rangeproof/corpus/6bfc2cbe2d7a43361e240118439785445a0fdfb7-5 b/tests/fuzzers/rangeproof/corpus/6bfc2cbe2d7a43361e240118439785445a0fdfb7-5
deleted file mode 100644
index 613e76a020..0000000000
Binary files a/tests/fuzzers/rangeproof/corpus/6bfc2cbe2d7a43361e240118439785445a0fdfb7-5 and /dev/null differ
diff --git a/tests/fuzzers/rangeproof/corpus/a67e63bc0c0004bd009944a6061297cb7d4ac238-1 b/tests/fuzzers/rangeproof/corpus/a67e63bc0c0004bd009944a6061297cb7d4ac238-1
deleted file mode 100644
index 805ad8df77..0000000000
Binary files a/tests/fuzzers/rangeproof/corpus/a67e63bc0c0004bd009944a6061297cb7d4ac238-1 and /dev/null differ
diff --git a/tests/fuzzers/rangeproof/corpus/ae892bbae0a843950bc8316496e595b1a194c009-4 b/tests/fuzzers/rangeproof/corpus/ae892bbae0a843950bc8316496e595b1a194c009-4
deleted file mode 100644
index 605acf81c1..0000000000
Binary files a/tests/fuzzers/rangeproof/corpus/ae892bbae0a843950bc8316496e595b1a194c009-4 and /dev/null differ
diff --git a/tests/fuzzers/rangeproof/corpus/ee05d0d813f6261b3dba16506f9ea03d9c5e993d-2 b/tests/fuzzers/rangeproof/corpus/ee05d0d813f6261b3dba16506f9ea03d9c5e993d-2
deleted file mode 100644
index 8f32dd775a..0000000000
Binary files a/tests/fuzzers/rangeproof/corpus/ee05d0d813f6261b3dba16506f9ea03d9c5e993d-2 and /dev/null differ
diff --git a/tests/fuzzers/rangeproof/corpus/f50a6d57a46d30184aa294af5b252ab9701af7c9-2 b/tests/fuzzers/rangeproof/corpus/f50a6d57a46d30184aa294af5b252ab9701af7c9-2
deleted file mode 100644
index af96210f20..0000000000
Binary files a/tests/fuzzers/rangeproof/corpus/f50a6d57a46d30184aa294af5b252ab9701af7c9-2 and /dev/null differ
diff --git a/tests/fuzzers/rangeproof/corpus/random.dat b/tests/fuzzers/rangeproof/corpus/random.dat
deleted file mode 100644
index 2c998ad812..0000000000
Binary files a/tests/fuzzers/rangeproof/corpus/random.dat and /dev/null differ
diff --git a/tests/fuzzers/rangeproof/rangeproof-fuzzer.go b/tests/fuzzers/rangeproof/rangeproof-fuzzer.go
deleted file mode 100644
index 6b5ca90880..0000000000
--- a/tests/fuzzers/rangeproof/rangeproof-fuzzer.go
+++ /dev/null
@@ -1,198 +0,0 @@
-// Copyright 2020 The go-ethereum Authors
-// This file is part of the go-ethereum library.
-//
-// The go-ethereum library is free software: you can redistribute it and/or modify
-// it under the terms of the GNU Lesser General Public License as published by
-// the Free Software Foundation, either version 3 of the License, or
-// (at your option) any later version.
-//
-// The go-ethereum library is distributed in the hope that it will be useful,
-// but WITHOUT ANY WARRANTY; without even the implied warranty of
-// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-// GNU Lesser General Public License for more details.
-//
-// You should have received a copy of the GNU Lesser General Public License
-// along with the go-ethereum library. If not, see .
-
-package rangeproof
-
-import (
- "bytes"
- "encoding/binary"
- "fmt"
- "io"
-
- "github.com/ethereum/go-ethereum/common"
- "github.com/ethereum/go-ethereum/core/rawdb"
- "github.com/ethereum/go-ethereum/ethdb/memorydb"
- "github.com/ethereum/go-ethereum/trie"
- "golang.org/x/exp/slices"
-)
-
-type kv struct {
- k, v []byte
- t bool
-}
-
-type fuzzer struct {
- input io.Reader
- exhausted bool
-}
-
-func (f *fuzzer) randBytes(n int) []byte {
- r := make([]byte, n)
- if _, err := f.input.Read(r); err != nil {
- f.exhausted = true
- }
- return r
-}
-
-func (f *fuzzer) readInt() uint64 {
- var x uint64
- if err := binary.Read(f.input, binary.LittleEndian, &x); err != nil {
- f.exhausted = true
- }
- return x
-}
-
-func (f *fuzzer) randomTrie(n int) (*trie.Trie, map[string]*kv) {
- trie := trie.NewEmpty(trie.NewDatabase(rawdb.NewMemoryDatabase(), nil))
- vals := make(map[string]*kv)
- size := f.readInt()
- // Fill it with some fluff
- for i := byte(0); i < byte(size); i++ {
- value := &kv{common.LeftPadBytes([]byte{i}, 32), []byte{i}, false}
- value2 := &kv{common.LeftPadBytes([]byte{i + 10}, 32), []byte{i}, false}
- trie.MustUpdate(value.k, value.v)
- trie.MustUpdate(value2.k, value2.v)
- vals[string(value.k)] = value
- vals[string(value2.k)] = value2
- }
- if f.exhausted {
- return nil, nil
- }
- // And now fill with some random
- for i := 0; i < n; i++ {
- k := f.randBytes(32)
- v := f.randBytes(20)
- value := &kv{k, v, false}
- trie.MustUpdate(k, v)
- vals[string(k)] = value
- if f.exhausted {
- return nil, nil
- }
- }
- return trie, vals
-}
-
-func (f *fuzzer) fuzz() int {
- maxSize := 200
- tr, vals := f.randomTrie(1 + int(f.readInt())%maxSize)
- if f.exhausted {
- return 0 // input too short
- }
- var entries []*kv
- for _, kv := range vals {
- entries = append(entries, kv)
- }
- if len(entries) <= 1 {
- return 0
- }
- slices.SortFunc(entries, func(a, b *kv) int {
- return bytes.Compare(a.k, b.k)
- })
-
- var ok = 0
- for {
- start := int(f.readInt() % uint64(len(entries)))
- end := 1 + int(f.readInt()%uint64(len(entries)-1))
- testcase := int(f.readInt() % uint64(6))
- index := int(f.readInt() & 0xFFFFFFFF)
- index2 := int(f.readInt() & 0xFFFFFFFF)
- if f.exhausted {
- break
- }
- proof := memorydb.New()
- if err := tr.Prove(entries[start].k, proof); err != nil {
- panic(fmt.Sprintf("Failed to prove the first node %v", err))
- }
- if err := tr.Prove(entries[end-1].k, proof); err != nil {
- panic(fmt.Sprintf("Failed to prove the last node %v", err))
- }
- var keys [][]byte
- var vals [][]byte
- for i := start; i < end; i++ {
- keys = append(keys, entries[i].k)
- vals = append(vals, entries[i].v)
- }
- if len(keys) == 0 {
- return 0
- }
- var first = keys[0]
- testcase %= 6
- switch testcase {
- case 0:
- // Modified key
- keys[index%len(keys)] = f.randBytes(32) // In theory it can't be same
- case 1:
- // Modified val
- vals[index%len(vals)] = f.randBytes(20) // In theory it can't be same
- case 2:
- // Gapped entry slice
- index = index % len(keys)
- keys = append(keys[:index], keys[index+1:]...)
- vals = append(vals[:index], vals[index+1:]...)
- case 3:
- // Out of order
- index1 := index % len(keys)
- index2 := index2 % len(keys)
- keys[index1], keys[index2] = keys[index2], keys[index1]
- vals[index1], vals[index2] = vals[index2], vals[index1]
- case 4:
- // Set random key to nil, do nothing
- keys[index%len(keys)] = nil
- case 5:
- // Set random value to nil, deletion
- vals[index%len(vals)] = nil
-
- // Other cases:
- // Modify something in the proof db
- // add stuff to proof db
- // drop stuff from proof db
- }
- if f.exhausted {
- break
- }
- ok = 1
- //nodes, subtrie
- hasMore, err := trie.VerifyRangeProof(tr.Hash(), first, keys, vals, proof)
- if err != nil {
- if hasMore {
- panic("err != nil && hasMore == true")
- }
- }
- }
- return ok
-}
-
-// Fuzz is the fuzzing entry-point.
-// The function must return
-//
-// - 1 if the fuzzer should increase priority of the
-// given input during subsequent fuzzing (for example, the input is lexically
-// correct and was parsed successfully);
-// - -1 if the input must not be added to corpus even if gives new coverage; and
-// - 0 otherwise
-//
-// other values are reserved for future use.
-func fuzz(input []byte) int {
- if len(input) < 100 {
- return 0
- }
- r := bytes.NewReader(input)
- f := fuzzer{
- input: r,
- exhausted: false,
- }
- return f.fuzz()
-}
diff --git a/tests/fuzzers/rangeproof/rangeproof_test.go b/tests/fuzzers/rangeproof/rangeproof_test.go
deleted file mode 100644
index bc7badc5b3..0000000000
--- a/tests/fuzzers/rangeproof/rangeproof_test.go
+++ /dev/null
@@ -1,25 +0,0 @@
-// Copyright 2023 The go-ethereum Authors
-// This file is part of the go-ethereum library.
-//
-// The go-ethereum library is free software: you can redistribute it and/or modify
-// it under the terms of the GNU Lesser General Public License as published by
-// the Free Software Foundation, either version 3 of the License, or
-// (at your option) any later version.
-//
-// The go-ethereum library is distributed in the hope that it will be useful,
-// but WITHOUT ANY WARRANTY; without even the implied warranty of
-// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-// GNU Lesser General Public License for more details.
-//
-// You should have received a copy of the GNU Lesser General Public License
-// along with the go-ethereum library. If not, see .
-
-package rangeproof
-
-import "testing"
-
-func Fuzz(f *testing.F) {
- f.Fuzz(func(t *testing.T, data []byte) {
- fuzz(data)
- })
-}
diff --git a/tests/fuzzers/secp256k1/secp_test.go b/tests/fuzzers/secp256k1/secp_test.go
deleted file mode 100644
index ca3039764b..0000000000
--- a/tests/fuzzers/secp256k1/secp_test.go
+++ /dev/null
@@ -1,53 +0,0 @@
-// Copyright 2021 The go-ethereum Authors
-// This file is part of the go-ethereum library.
-//
-// The go-ethereum library is free software: you can redistribute it and/or modify
-// it under the terms of the GNU Lesser General Public License as published by
-// the Free Software Foundation, either version 3 of the License, or
-// (at your option) any later version.
-//
-// The go-ethereum library is distributed in the hope that it will be useful,
-// but WITHOUT ANY WARRANTY; without even the implied warranty of
-// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-// GNU Lesser General Public License for more details.
-//
-// You should have received a copy of the GNU Lesser General Public License
-// along with the go-ethereum library. If not, see .
-
-package secp256k1
-
-import (
- "fmt"
- "testing"
-
- "github.com/btcsuite/btcd/btcec/v2"
- "github.com/ethereum/go-ethereum/crypto/secp256k1"
-)
-
-func TestFuzzer(t *testing.T) {
- a, b := "00000000N0000000/R0000000000000000", "0U0000S0000000mkhP000000000000000U"
- fuzz([]byte(a), []byte(b))
-}
-
-func Fuzz(f *testing.F) {
- f.Fuzz(func(t *testing.T, a, b []byte) {
- fuzz(a, b)
- })
-}
-
-func fuzz(dataP1, dataP2 []byte) {
- var (
- curveA = secp256k1.S256()
- curveB = btcec.S256()
- )
- // first point
- x1, y1 := curveB.ScalarBaseMult(dataP1)
- // second points
- x2, y2 := curveB.ScalarBaseMult(dataP2)
- resAX, resAY := curveA.Add(x1, y1, x2, y2)
- resBX, resBY := curveB.Add(x1, y1, x2, y2)
- if resAX.Cmp(resBX) != 0 || resAY.Cmp(resBY) != 0 {
- fmt.Printf("%s %s %s %s\n", x1, y1, x2, y2)
- panic(fmt.Sprintf("Addition failed: geth: %s %s btcd: %s %s", resAX, resAY, resBX, resBY))
- }
-}
diff --git a/tests/fuzzers/txfetcher/corpus/0151ee1d0db4c74d3bcdfa4f7396a4c8538748c9-2 b/tests/fuzzers/txfetcher/corpus/0151ee1d0db4c74d3bcdfa4f7396a4c8538748c9-2
deleted file mode 100644
index 2c75e9c7a7..0000000000
--- a/tests/fuzzers/txfetcher/corpus/0151ee1d0db4c74d3bcdfa4f7396a4c8538748c9-2
+++ /dev/null
@@ -1 +0,0 @@
-¿½
\ No newline at end of file
diff --git a/tests/fuzzers/txfetcher/corpus/020dd7b492a6eb34ff0b7d8ee46189422c37e4a7-6 b/tests/fuzzers/txfetcher/corpus/020dd7b492a6eb34ff0b7d8ee46189422c37e4a7-6
deleted file mode 100644
index 8d3b57789e..0000000000
Binary files a/tests/fuzzers/txfetcher/corpus/020dd7b492a6eb34ff0b7d8ee46189422c37e4a7-6 and /dev/null differ
diff --git a/tests/fuzzers/txfetcher/corpus/021d1144e359233c496e22c3250609b11b213e9f-4 b/tests/fuzzers/txfetcher/corpus/021d1144e359233c496e22c3250609b11b213e9f-4
deleted file mode 100644
index 73731899d5..0000000000
--- a/tests/fuzzers/txfetcher/corpus/021d1144e359233c496e22c3250609b11b213e9f-4
+++ /dev/null
@@ -1,12 +0,0 @@
- TESTING KEY-----
-MIICXgIBAAKBgQDuLnQAI3mDgey3VBzWnB2L39JUU4txjeVE6myuDqkM/uGlfjb9
-SjY1bIw4iAJm2gsvvZhIrCHS3l6afab4pZB
-l2+XsDlrKBxKKtDrGxlG4LjncdabFn9gvLZad2bSysqz/qTAUStTtqJQIDAQAB
-AoGAGRzwwir7XvBOAy5tuV6ef6anZzus1s1Y1Clb6HbnWWF/wbZGOpet
-3m4vD6MXc7jpTLryzTQIvVdfQbRc6+MUVeLKZTXtdZrh+k7hx0nTP8Jcb
-uqFk541awmMogY/EfbWd6IOkp+4xqjlFBEDytgbIECQQDvH/6nk+hgN4H
-qzzVtxxr397vWrjrIgPbJpQvBsafG7b0dA4AFjwVbFLmQcj2PprIMmPcQrooz84SHEg1Ak/7KCxmD/sfgS5TeuNi8DoUBEmiSJwm7FX
-ftxuvL7XvjwjN5B30pNEbc6Iuyt7y4MQJBAIt21su43sjXNueLKH8+ph2UfQuU9txblTu14q3N7gHRZB4ZMhFYyDy8CKrN2cPg/Fvyt0Xl/DoCzjA0CQQDU
-y2pGsuSmgUtWj3NM9xuwYPm+Z/F84K6+ARYiZ6PYj013sovGKUFfYAqVXVlxtIáo‡X
-qUn3Xh9ps8ZfjLZO7BAkEAlT4R5Yl6cGhaJQYZHOde3JMhNRcVFMO8dDaFo
-f9Oeos0UotgiDktdQHxdNEwLjQlJBz+OtwwA=---E RATTIEY-
\ No newline at end of file
diff --git a/tests/fuzzers/txfetcher/corpus/0d28327b1fb52c1ba02a6eb96675c31633921bb2-2 b/tests/fuzzers/txfetcher/corpus/0d28327b1fb52c1ba02a6eb96675c31633921bb2-2
deleted file mode 100644
index 8cc3039cb8..0000000000
--- a/tests/fuzzers/txfetcher/corpus/0d28327b1fb52c1ba02a6eb96675c31633921bb2-2
+++ /dev/null
@@ -1,15 +0,0 @@
-¸&^£áo‡È—-----BEGIN RSA TESTING KEY-----
-MIICXgIBAAKBgQDuLnQAI3mDgey3VBzWnB2L39JUU4txjeVE6myuDqkM/uGlfjb9
-SjY1bIw4iA5sBBZzHi3z0h1YV8QPuxEbi4nW91IJm2gsvvZhIrCHS3l6afab4pZB
-l2+XsDulrKBxKKtD1rGxlG4LjncdabFn9gvLZad2bSysqz/qTAUStTvqJQIDAQAB
-AoGAGRzwwir7XvBOAy5tM/uV6e+Zf6anZzus1s1Y1ClbjbE6HXbnWWF/wbZGOpet
-3Zm4vD6MXc7jpTLryzTQIvVdfQbRc6+MUVeLKwZatTXtdZrhu+Jk7hx0nTPy8Jcb
-uJqFk541aEw+mMogY/xEcfbWd6IOkp+4xqjlFLBEDytgbIECQQDvH/E6nk+hgN4H
-qzzVtxxr397vWrjrIgPbJpQvBsafG7b0dA4AFjwVbFLmQcj2PprIMmPcQrooz8vp
-jy4SHEg1AkEA/v13/5M47K9vCxmb8QeD/asydfsgS5TeuNi8DoUBEmiSJwma7FXY
-fFUtxuvL7XvjwjN5B30pNEbc6Iuyt7y4MQJBAIt21su4b3sjXNueLKH85Q+phy2U
-fQtuUE9txblTu14q3N7gHRZB4ZMhFYyDy8CKrN2cPg/Fvyt0Xlp/DoCzjA0CQQDU
-y2ptGsuSmgUtWj3NM9xuwYPm+Z/F84K6+ARYiZ6PYj013sovGKUFfYAqVXVlxtIX
-qyUBnu3X9ps8ZfjLZO7BAkEAlT4R5Yl6cGhaJQYZHOde3JEMhNRcVFMO8dJDaFeo
-f9Oeos0UUothgiDktdQHxdNEwLjQf7lJJBzV+5OtwswCWA==
------END RSA TESTING KEY-----Q_
\ No newline at end of file
diff --git a/tests/fuzzers/txfetcher/corpus/0fcd827b57ded58e91f7ba2ac2b7ea4d25ebedca-7 b/tests/fuzzers/txfetcher/corpus/0fcd827b57ded58e91f7ba2ac2b7ea4d25ebedca-7
deleted file mode 100644
index 8ceee16af1..0000000000
--- a/tests/fuzzers/txfetcher/corpus/0fcd827b57ded58e91f7ba2ac2b7ea4d25ebedca-7
+++ /dev/null
@@ -1 +0,0 @@
-ð½apï¿ïï��ï¿ï¿¿½½½¿¿½½ï¿½ï¿½¿½ï¿ï¿½ï¿ïÓÌV½¿½ïïï¿ï¿½#ï¿ï¿½&��
\ No newline at end of file
diff --git a/tests/fuzzers/txfetcher/corpus/109bc9b8fd4fef63493e104c703c79bc4a5e8d34-6 b/tests/fuzzers/txfetcher/corpus/109bc9b8fd4fef63493e104c703c79bc4a5e8d34-6
deleted file mode 100644
index df9b986af1..0000000000
Binary files a/tests/fuzzers/txfetcher/corpus/109bc9b8fd4fef63493e104c703c79bc4a5e8d34-6 and /dev/null differ
diff --git a/tests/fuzzers/txfetcher/corpus/163785ab002746452619f31e8dfcb4549e6f8b6e-6 b/tests/fuzzers/txfetcher/corpus/163785ab002746452619f31e8dfcb4549e6f8b6e-6
deleted file mode 100644
index 55467373d4..0000000000
Binary files a/tests/fuzzers/txfetcher/corpus/163785ab002746452619f31e8dfcb4549e6f8b6e-6 and /dev/null differ
diff --git a/tests/fuzzers/txfetcher/corpus/1adfa6b9ddf5766220c8ff7ede2926ca241bb947-3 b/tests/fuzzers/txfetcher/corpus/1adfa6b9ddf5766220c8ff7ede2926ca241bb947-3
deleted file mode 100644
index 4a593aa28d..0000000000
--- a/tests/fuzzers/txfetcher/corpus/1adfa6b9ddf5766220c8ff7ede2926ca241bb947-3
+++ /dev/null
@@ -1,11 +0,0 @@
-TAKBgDuLnQA3gey3VBznB39JUtxjeE6myuDkM/uGlfjb
-S1w4iA5sBzzh8uxEbi4nW91IJm2gsvvZhICHS3l6ab4pZB
-l2DulrKBxKKtD1rGxlG4LncabFn9vLZad2bSysqz/qTAUSTvqJQIDAQAB
-AoGAGRzwwir7XvBOAy5tM/uV6e+Zf6anZzus1s1Y1ClbjbE6HXbnWWF/wbZGOpet
-3Z4vMXc7jpTLryzTQIvVdfQbRc6+MUVeLKZatTXtdZrhu+Jk7hx0nTPy8Jcb
-uJqFk54MogxEcfbWd6IOkp+4xqFLBEDtgbIECnk+hgN4H
-qzzxxr397vWrjrIgbJpQvBv8QeeuNi8DoUBEmiSJwa7FXY
-FUtxuvL7XvjwjN5B30pEbc6Iuyt7y4MQJBAIt21su4b3sjphy2tuUE9xblTu14qgHZ6+AiZovGKU--FfYAqVXVlxtIX
-qyU3X9ps8ZfjLZ45l6cGhaJQYZHOde3JEMhNRcVFMO8dJDaFeo
-f9Oeos0UUothgiDktdQHxdNEwLjQf7lJJBzV+5OtwswCWA==
------END RSA T
\ No newline at end of file
diff --git a/tests/fuzzers/txfetcher/corpus/1b9a02e9a48fea1d2fc3fb77946ada278e152079-4 b/tests/fuzzers/txfetcher/corpus/1b9a02e9a48fea1d2fc3fb77946ada278e152079-4
deleted file mode 100644
index 4a56f93d3b..0000000000
Binary files a/tests/fuzzers/txfetcher/corpus/1b9a02e9a48fea1d2fc3fb77946ada278e152079-4 and /dev/null differ
diff --git a/tests/fuzzers/txfetcher/corpus/1e14c7ea1faef92890988061b5abe96db7190f98-7 b/tests/fuzzers/txfetcher/corpus/1e14c7ea1faef92890988061b5abe96db7190f98-7
deleted file mode 100644
index d2442fc5a6..0000000000
--- a/tests/fuzzers/txfetcher/corpus/1e14c7ea1faef92890988061b5abe96db7190f98-7
+++ /dev/null
@@ -1 +0,0 @@
-0000000000000000000000000000000000000000000000000000000000000000000000000
\ No newline at end of file
diff --git a/tests/fuzzers/txfetcher/corpus/1e7d05f00e99cbf3ff0ef1cd7ea8dd07ad6dff23-6 b/tests/fuzzers/txfetcher/corpus/1e7d05f00e99cbf3ff0ef1cd7ea8dd07ad6dff23-6
deleted file mode 100644
index 1c342ff53a..0000000000
Binary files a/tests/fuzzers/txfetcher/corpus/1e7d05f00e99cbf3ff0ef1cd7ea8dd07ad6dff23-6 and /dev/null differ
diff --git a/tests/fuzzers/txfetcher/corpus/1ec95e347fd522e6385b5091aa81aa2485be4891-4 b/tests/fuzzers/txfetcher/corpus/1ec95e347fd522e6385b5091aa81aa2485be4891-4
deleted file mode 100644
index b0c776bd4d..0000000000
Binary files a/tests/fuzzers/txfetcher/corpus/1ec95e347fd522e6385b5091aa81aa2485be4891-4 and /dev/null differ
diff --git a/tests/fuzzers/txfetcher/corpus/1fbfa5d214060d2a0905846a589fd6f78d411451-4 b/tests/fuzzers/txfetcher/corpus/1fbfa5d214060d2a0905846a589fd6f78d411451-4
deleted file mode 100644
index 75de835c98..0000000000
Binary files a/tests/fuzzers/txfetcher/corpus/1fbfa5d214060d2a0905846a589fd6f78d411451-4 and /dev/null differ
diff --git a/tests/fuzzers/txfetcher/corpus/1fd84ee194e791783a7f18f0a6deab8efe05fc04-2 b/tests/fuzzers/txfetcher/corpus/1fd84ee194e791783a7f18f0a6deab8efe05fc04-2
deleted file mode 100644
index 3b6d2560ae..0000000000
--- a/tests/fuzzers/txfetcher/corpus/1fd84ee194e791783a7f18f0a6deab8efe05fc04-2
+++ /dev/null
@@ -1 +0,0 @@
-¸&
\ No newline at end of file
diff --git a/tests/fuzzers/txfetcher/corpus/21e76b9fca21d94d97f860c1c82f40697a83471b-8 b/tests/fuzzers/txfetcher/corpus/21e76b9fca21d94d97f860c1c82f40697a83471b-8
deleted file mode 100644
index 1d4620f49f..0000000000
--- a/tests/fuzzers/txfetcher/corpus/21e76b9fca21d94d97f860c1c82f40697a83471b-8
+++ /dev/null
@@ -1,3 +0,0 @@
-DtQvfQ+MULKZTXk78c
-/fWkpxlQQ/+hgNzVtx9vWgJsafG7b0dA4AFjwVbFLmQcj2PprIMmPNQrooX
-L
\ No newline at end of file
diff --git a/tests/fuzzers/txfetcher/corpus/220a87fed0c92474923054094eb7aff14289cf5e-4 b/tests/fuzzers/txfetcher/corpus/220a87fed0c92474923054094eb7aff14289cf5e-4
deleted file mode 100644
index 175f74fd5a..0000000000
Binary files a/tests/fuzzers/txfetcher/corpus/220a87fed0c92474923054094eb7aff14289cf5e-4 and /dev/null differ
diff --git a/tests/fuzzers/txfetcher/corpus/23ddcd66aa92fe3d78b7f5b6e7cddb1b55c5f5df-3 b/tests/fuzzers/txfetcher/corpus/23ddcd66aa92fe3d78b7f5b6e7cddb1b55c5f5df-3
deleted file mode 100644
index 95892c7b00..0000000000
--- a/tests/fuzzers/txfetcher/corpus/23ddcd66aa92fe3d78b7f5b6e7cddb1b55c5f5df-3
+++ /dev/null
@@ -1,12 +0,0 @@
-4txjeVE6myuDqkM/uGlfjb9
-SjY1bIw4iA5sBBZzHi3z0h1YV8QPuxEbi4nW91IJm2gsvvZeIrCHS3l6afab4pZB
-l2+XsDlrKBxKKtD1rGxlG4jncdabFn9gvLZad2bSysqz/qTAUSTvqJQIDAQAB
-AoGAGRzwwXvBOAy5tM/uV6e+Zf6aZzus1s1Y1ClbjbE6HXbnWWF/wbZGOpet
-3Z4vD6Mc7pLryzTQIVdfQbRc6+MUVeLKZaTXtdZru+Jk70PJJqFk541aEw+mMogY/xEcfbWd6IOkp+4xqjlFLBEDytgbIECQQDvH/E6nk+gN4H
-qzzVtxxr397vWrjrIgPbJpQvBsafG7b0dA4AFjwVbFLmQ2PprIMPcQroo8vpjSHg1Ev14KxmQeDydfsgeuN8UBESJwm7F
-UtuL7Xvjw50pNEbc6Iuyty4QJA21su4sjXNueLQphy2U
-fQtuUE9txblTu14qN7gHRZB4ZMhFYyDy8CKrN2cPg/Fvyt0Xlp/DoCzjA0CQQDU
-y2ptGsuSmgUtWj3NM9xuwYPm+Z/F84K6ARYiZPYj1oGUFfYAVVxtI
-qyBnu3X9pfLZOAkEAlT4R5Yl6cJQYZHOde3JEhNRcVFMO8dJFo
-f9Oeos0UUhgiDkQxdEwLjQf7lJJz5OtwC=
--NRSA TESINGKEY-Q_
\ No newline at end of file
diff --git a/tests/fuzzers/txfetcher/corpus/2441d249faf9a859e38c49f6e305b394280c6ea5-1 b/tests/fuzzers/txfetcher/corpus/2441d249faf9a859e38c49f6e305b394280c6ea5-1
deleted file mode 100644
index d76207e992..0000000000
Binary files a/tests/fuzzers/txfetcher/corpus/2441d249faf9a859e38c49f6e305b394280c6ea5-1 and /dev/null differ
diff --git a/tests/fuzzers/txfetcher/corpus/2da1f0635e11283b1927974f418aadd8837ad31e-7 b/tests/fuzzers/txfetcher/corpus/2da1f0635e11283b1927974f418aadd8837ad31e-7
deleted file mode 100644
index 73ae705701..0000000000
Binary files a/tests/fuzzers/txfetcher/corpus/2da1f0635e11283b1927974f418aadd8837ad31e-7 and /dev/null differ
diff --git a/tests/fuzzers/txfetcher/corpus/2e1853fbf8efe40098b1583224fe3b5f335e7037-6 b/tests/fuzzers/txfetcher/corpus/2e1853fbf8efe40098b1583224fe3b5f335e7037-6
deleted file mode 100644
index 692981e614..0000000000
Binary files a/tests/fuzzers/txfetcher/corpus/2e1853fbf8efe40098b1583224fe3b5f335e7037-6 and /dev/null differ
diff --git a/tests/fuzzers/txfetcher/corpus/2f25490dc49c103d653843ed47324b310ee7105e-7 b/tests/fuzzers/txfetcher/corpus/2f25490dc49c103d653843ed47324b310ee7105e-7
deleted file mode 100644
index 5cf7da75df..0000000000
Binary files a/tests/fuzzers/txfetcher/corpus/2f25490dc49c103d653843ed47324b310ee7105e-7 and /dev/null differ
diff --git a/tests/fuzzers/txfetcher/corpus/30494b85bb60ad7f099fa49d427007a761620d8f-5 b/tests/fuzzers/txfetcher/corpus/30494b85bb60ad7f099fa49d427007a761620d8f-5
deleted file mode 100644
index 7ff9d39752..0000000000
--- a/tests/fuzzers/txfetcher/corpus/30494b85bb60ad7f099fa49d427007a761620d8f-5
+++ /dev/null
@@ -1,10 +0,0 @@
-jXbnWWF/wbZGOpet
-3Zm4vD6MXc7jpTLryzTQIvVdfQbRc6+MUVeLKwZatTXtdZrhu+Jk7hx0nTPy8Jcb
-uJqFk541aEw+mMogY/xEcfbWd6IOkp+4xqjlFLBEDytgbIECQQDvH/E6nk+hgN4H
-qzzVtxxr397vWrjrIgPbJpQvBsafG7b0dA4AFjwVbFLmQcj2PprIMmPcQrooz8vp
-jy4SHEg1AkEA/v13/5M47K9vCxb8QeD/asydfsgS5TeuNi8DoUBEmiSJwma7FXY
-fFUtxuvL7XvjwjN5B30pNEbc6Iuyt7y4MQJBAIt21su4b3sjXNueLKH85Q+phy2U
-fQtuUE9txblTu14q3N7gHRZB4ZMhFYyDy8CKrN2cPg/Fvyt0Xl/DoCzjA0CQQDU
-y2ptGsuSmgUtWj3NM9xuwYPm+Z/F84K6+ARYiZ6Yj013sovGKUFfYAqVXVlxtIX
-qyUBnu3Xh9ps8ZfjLZO7BAkEAlT4R5Yl6cGhaJQYZHOde3JEMhNRcVFMO8dDaFeo
-f9Oeos0UotgiDktdQHxdNEwLjQfl
\ No newline at end of file
diff --git a/tests/fuzzers/txfetcher/corpus/316024ca3aaf09c1de5258733ff5fe3d799648d3-4 b/tests/fuzzers/txfetcher/corpus/316024ca3aaf09c1de5258733ff5fe3d799648d3-4
deleted file mode 100644
index 61f7d78f34..0000000000
--- a/tests/fuzzers/txfetcher/corpus/316024ca3aaf09c1de5258733ff5fe3d799648d3-4
+++ /dev/null
@@ -1,15 +0,0 @@
-¸^áo‡È—----BEGIN RA TTING KEY-----
-IIXgIBAAKBQDuLnQI3mDgey3VBzWnB2L39JUU4txjeVE6myuDqkM/uGlfjb9
-SjY1bIw4iA5sBBZzHi3z0h1YV8QPuxEbi4nW91IJmgsvvZhrCHSl6afab4pZB
-l2+XsDulrKBxKKtD1rGxlG4LjcdabF9gvLZad2bSysqz/qTAUStTvqJQDAQAB
-AoGAGRzwwir7XvBOAy5tM/uV6e+Zf6anZzus1s1Y1ClbjbE6HXbnWWF/wbZGOpet
-3Z4vD6MXc7jpTLryzTQIvVdfQbRc6+MUVeLKwZatTXtdZrhu+Jk7hx0nTPy8Jcb
-uJqFk541aEw+mMogY/xEcfbWd6IOkp+4xqjlFLBEDytgbIECQQDvH/E6nk+hgN4H
-qzzVtxxr397vWrjrIgPbJpQvBsafG7b0dA4AFjwVbFLmQcj2PprIMmPcQrooz8vp
-jy4SHEg1AkEA/v13/5M47K9vCxmb8QeD/asydfsgS5TeuNi8DoUBEmiSJwma7FXY
-fFUtxuvL7XvjwjN5B30pNEbc6Iuyt7y4MQJBAIt21su4b3sjXNueLKH85Q+phy2U
-fQtuUE9txblTu14q3N7gHRZB4ZMhFYyDy8CKrN2cPg/Fvyt0Xlp/DoCzjA0CQQDU
-y2ptGsuSmgUtWj3NM9xuwYPm+Z/F84K6+ARYiZ6PYj043sovGKUFfYAqVXVlxtIX
-qyUBnu3X9ps8ZfjLZO7BAkEAlT4R5Yl6cGhaJQYZHOde3JEMhNRcVFMO8dJDaFeo
-f9Oeos0UUothgiDktdQHxdNEwLjQf7lJJBzV+5OtwswCWA==
------END RSA TESTING KEY-----Q_
\ No newline at end of file
diff --git a/tests/fuzzers/txfetcher/corpus/32a089e2c439a91f4c1b67a13d52429bcded0dd9-7 b/tests/fuzzers/txfetcher/corpus/32a089e2c439a91f4c1b67a13d52429bcded0dd9-7
deleted file mode 100644
index a986a9d8e7..0000000000
Binary files a/tests/fuzzers/txfetcher/corpus/32a089e2c439a91f4c1b67a13d52429bcded0dd9-7 and /dev/null differ
diff --git a/tests/fuzzers/txfetcher/corpus/33ec1dc0bfeb93d16edee3c07125fec6ac1aa17d-2 b/tests/fuzzers/txfetcher/corpus/33ec1dc0bfeb93d16edee3c07125fec6ac1aa17d-2
deleted file mode 100644
index d41771b86c..0000000000
--- a/tests/fuzzers/txfetcher/corpus/33ec1dc0bfeb93d16edee3c07125fec6ac1aa17d-2
+++ /dev/null
@@ -1 +0,0 @@
-ï¿
\ No newline at end of file
diff --git a/tests/fuzzers/txfetcher/corpus/37a0d207700b52caa005ec8aeb344dcb13150ed2-5 b/tests/fuzzers/txfetcher/corpus/37a0d207700b52caa005ec8aeb344dcb13150ed2-5
deleted file mode 100644
index 2f09c6e28f..0000000000
Binary files a/tests/fuzzers/txfetcher/corpus/37a0d207700b52caa005ec8aeb344dcb13150ed2-5 and /dev/null differ
diff --git a/tests/fuzzers/txfetcher/corpus/382f59c66d0ddb6747d3177263279789ca15c2db-5 b/tests/fuzzers/txfetcher/corpus/382f59c66d0ddb6747d3177263279789ca15c2db-5
deleted file mode 100644
index 84441ac374..0000000000
Binary files a/tests/fuzzers/txfetcher/corpus/382f59c66d0ddb6747d3177263279789ca15c2db-5 and /dev/null differ
diff --git a/tests/fuzzers/txfetcher/corpus/3a010483a4ad8d7215447ce27e0fac3791235c99-4 b/tests/fuzzers/txfetcher/corpus/3a010483a4ad8d7215447ce27e0fac3791235c99-4
deleted file mode 100644
index 28f5d99b98..0000000000
--- a/tests/fuzzers/txfetcher/corpus/3a010483a4ad8d7215447ce27e0fac3791235c99-4
+++ /dev/null
@@ -1,7 +0,0 @@
-
-lGAGRzwwir7XvBOAy5tM/uV6e+Zf6anZzus1s1Y1ClbjbE6HXbnWWF/wbZGOpet
-3Zm4vD6MXc7jpTLryzTQIvVdfQbRc6+MUVeLKwZatTXtdZrhu+Jk7hx0nTPy8Jcb
-uJqFk541aEw+mMogY/xEcfbWd6IOkp+4xqjlFLBEDytgbIECQQDvH/E6nk+hgN4H
-qzzVtxxr397vWrjrIgPbJpQvBsafG7b0dA4AFjwVbFLmQcj2PprIMmPcQrooz8vp
-jy4SHEg1AkEA/v13/5M47K9vCxmb8QeD/asydfsgS5TeuNi8DoUBEmiSJwma7FXY
-fFUtxuvL7XvjwjN5
\ No newline at end of file
diff --git a/tests/fuzzers/txfetcher/corpus/3a3b717fcfe7ffb000b906e5a76f32248a576bf7-6 b/tests/fuzzers/txfetcher/corpus/3a3b717fcfe7ffb000b906e5a76f32248a576bf7-6
deleted file mode 100644
index 022de3c61d..0000000000
Binary files a/tests/fuzzers/txfetcher/corpus/3a3b717fcfe7ffb000b906e5a76f32248a576bf7-6 and /dev/null differ
diff --git a/tests/fuzzers/txfetcher/corpus/3c37f6d58b8029971935f127f53e6aaeba558445-6 b/tests/fuzzers/txfetcher/corpus/3c37f6d58b8029971935f127f53e6aaeba558445-6
deleted file mode 100644
index 9f3bf093ad..0000000000
--- a/tests/fuzzers/txfetcher/corpus/3c37f6d58b8029971935f127f53e6aaeba558445-6
+++ /dev/null
@@ -1,2 +0,0 @@
-¶Èíw¿½ï¿½Â€ï¿½ï¿½ï¿½ï¿½ï¿½ï¿½ï¿½ï¿½ï¿½ �
-���
���ï¿ï¿½ï¿½ï¿½ï¿½ï¿½ï¿½ï¿½ï¿½ï¿½ï¿½ï¿½ï¿½ï¿½ï¿½ï¿½ �!�"�#�$�%�&�'�(�)�*�+�,�-�.�/¿½0
\ No newline at end of file
diff --git a/tests/fuzzers/txfetcher/corpus/3c73b63bafa9f535c882ec17189adaf02b58f432-6 b/tests/fuzzers/txfetcher/corpus/3c73b63bafa9f535c882ec17189adaf02b58f432-6
deleted file mode 100644
index 0dfbc46993..0000000000
--- a/tests/fuzzers/txfetcher/corpus/3c73b63bafa9f535c882ec17189adaf02b58f432-6
+++ /dev/null
@@ -1 +0,0 @@
-LvhaJQHOe3EhRcdaFofeoogkjQfJB
\ No newline at end of file
diff --git a/tests/fuzzers/txfetcher/corpus/3d11500c4f66b20c73bbdfb1a7bddd7bbf92b29c-5 b/tests/fuzzers/txfetcher/corpus/3d11500c4f66b20c73bbdfb1a7bddd7bbf92b29c-5
deleted file mode 100644
index b19fc7f458..0000000000
Binary files a/tests/fuzzers/txfetcher/corpus/3d11500c4f66b20c73bbdfb1a7bddd7bbf92b29c-5 and /dev/null differ
diff --git a/tests/fuzzers/txfetcher/corpus/3d8b5bf36c80d6f65802280039f85421f32b5055-6 b/tests/fuzzers/txfetcher/corpus/3d8b5bf36c80d6f65802280039f85421f32b5055-6
deleted file mode 100644
index eacd269f31..0000000000
Binary files a/tests/fuzzers/txfetcher/corpus/3d8b5bf36c80d6f65802280039f85421f32b5055-6 and /dev/null differ
diff --git a/tests/fuzzers/txfetcher/corpus/3f99c546a3962256176d566c19e3fffb62072078-1 b/tests/fuzzers/txfetcher/corpus/3f99c546a3962256176d566c19e3fffb62072078-1
deleted file mode 100644
index 9e90183d6b..0000000000
--- a/tests/fuzzers/txfetcher/corpus/3f99c546a3962256176d566c19e3fffb62072078-1
+++ /dev/null
@@ -1 +0,0 @@
-¸&^£áo‡
\ No newline at end of file
diff --git a/tests/fuzzers/txfetcher/corpus/408ec46539af27acd82b3d01e863597030882458-8 b/tests/fuzzers/txfetcher/corpus/408ec46539af27acd82b3d01e863597030882458-8
deleted file mode 100644
index 65d55437e5..0000000000
Binary files a/tests/fuzzers/txfetcher/corpus/408ec46539af27acd82b3d01e863597030882458-8 and /dev/null differ
diff --git a/tests/fuzzers/txfetcher/corpus/436154e5bb6487673f6642e6d2a582c01b083c08-8 b/tests/fuzzers/txfetcher/corpus/436154e5bb6487673f6642e6d2a582c01b083c08-8
deleted file mode 100644
index 28e519c125..0000000000
--- a/tests/fuzzers/txfetcher/corpus/436154e5bb6487673f6642e6d2a582c01b083c08-8
+++ /dev/null
@@ -1 +0,0 @@
-ð½apfffffffffffffffffffffffffffffffebadce6f48a0Ÿ_3bbfd2364
\ No newline at end of file
diff --git a/tests/fuzzers/txfetcher/corpus/45f565cd14b8de1ba2e925047ce776c2682b4b8d-3 b/tests/fuzzers/txfetcher/corpus/45f565cd14b8de1ba2e925047ce776c2682b4b8d-3
deleted file mode 100644
index 9f03a095b9..0000000000
Binary files a/tests/fuzzers/txfetcher/corpus/45f565cd14b8de1ba2e925047ce776c2682b4b8d-3 and /dev/null differ
diff --git a/tests/fuzzers/txfetcher/corpus/4a0a12f5b033c8c160cc3b5133692ea1e92c6cdf-7 b/tests/fuzzers/txfetcher/corpus/4a0a12f5b033c8c160cc3b5133692ea1e92c6cdf-7
deleted file mode 100644
index e50b5494c9..0000000000
--- a/tests/fuzzers/txfetcher/corpus/4a0a12f5b033c8c160cc3b5133692ea1e92c6cdf-7
+++ /dev/null
@@ -1,3 +0,0 @@
-DtQvfQ+MULKZTXk78c
-/fWkpxlyEQQ/+hgNzVtx9vWgJsafG7b0dA4AFjwVbFLmQcj2PprIMmPNQg1Ak/7KCxmDgS5TDEmSJwFX
-txLjbt4xTgeXVlXsjLZ
\ No newline at end of file
diff --git a/tests/fuzzers/txfetcher/corpus/550f15ef65230cc4dcfab7fea67de212d9212ff8-8 b/tests/fuzzers/txfetcher/corpus/550f15ef65230cc4dcfab7fea67de212d9212ff8-8
deleted file mode 100644
index 34005f43cb..0000000000
Binary files a/tests/fuzzers/txfetcher/corpus/550f15ef65230cc4dcfab7fea67de212d9212ff8-8 and /dev/null differ
diff --git a/tests/fuzzers/txfetcher/corpus/5552213d659fef900a194c52718ffeffdc72d043-3 b/tests/fuzzers/txfetcher/corpus/5552213d659fef900a194c52718ffeffdc72d043-3
deleted file mode 100644
index 7346ff1955..0000000000
Binary files a/tests/fuzzers/txfetcher/corpus/5552213d659fef900a194c52718ffeffdc72d043-3 and /dev/null differ
diff --git a/tests/fuzzers/txfetcher/corpus/5570ef82893a9b9b9158572d43a7de7537121d2d-1 b/tests/fuzzers/txfetcher/corpus/5570ef82893a9b9b9158572d43a7de7537121d2d-1
deleted file mode 100644
index feffcebca0..0000000000
--- a/tests/fuzzers/txfetcher/corpus/5570ef82893a9b9b9158572d43a7de7537121d2d-1
+++ /dev/null
@@ -1 +0,0 @@
-ð½ï½ï¿½Ù¯0,1,2,3,4,5,6,7,-3420794409,(2,a)
\ No newline at end of file
diff --git a/tests/fuzzers/txfetcher/corpus/5e10f734f8af4116fbd164d96eec67aa53e6228c-5 b/tests/fuzzers/txfetcher/corpus/5e10f734f8af4116fbd164d96eec67aa53e6228c-5
deleted file mode 100644
index 0eacd0b59a..0000000000
Binary files a/tests/fuzzers/txfetcher/corpus/5e10f734f8af4116fbd164d96eec67aa53e6228c-5 and /dev/null differ
diff --git a/tests/fuzzers/txfetcher/corpus/608200b402488b3989ec8ec5f4190ccb537b8ea4-4 b/tests/fuzzers/txfetcher/corpus/608200b402488b3989ec8ec5f4190ccb537b8ea4-4
deleted file mode 100644
index d37b018515..0000000000
Binary files a/tests/fuzzers/txfetcher/corpus/608200b402488b3989ec8ec5f4190ccb537b8ea4-4 and /dev/null differ
diff --git a/tests/fuzzers/txfetcher/corpus/61e89c3fbdf9eff74bd250ea73cc2e61f8ca0d97-5 b/tests/fuzzers/txfetcher/corpus/61e89c3fbdf9eff74bd250ea73cc2e61f8ca0d97-5
deleted file mode 100644
index 155744bccc..0000000000
--- a/tests/fuzzers/txfetcher/corpus/61e89c3fbdf9eff74bd250ea73cc2e61f8ca0d97-5
+++ /dev/null
@@ -1 +0,0 @@
-88242871'392752200424491531672177074144720616417147514758635765020556616¿
\ No newline at end of file
diff --git a/tests/fuzzers/txfetcher/corpus/62817a48c78fbf2c12fcdc5ca58e2ca60c43543a-7 b/tests/fuzzers/txfetcher/corpus/62817a48c78fbf2c12fcdc5ca58e2ca60c43543a-7
deleted file mode 100644
index 795608a789..0000000000
Binary files a/tests/fuzzers/txfetcher/corpus/62817a48c78fbf2c12fcdc5ca58e2ca60c43543a-7 and /dev/null differ
diff --git a/tests/fuzzers/txfetcher/corpus/6782da8f1a432a77306d60d2ac2470c35b98004f-3 b/tests/fuzzers/txfetcher/corpus/6782da8f1a432a77306d60d2ac2470c35b98004f-3
deleted file mode 100644
index f44949e6ae..0000000000
--- a/tests/fuzzers/txfetcher/corpus/6782da8f1a432a77306d60d2ac2470c35b98004f-3
+++ /dev/null
@@ -1 +0,0 @@
-21888242871'392752200424452601091531672177074144720616417147514758635765020556616¿½
\ No newline at end of file
diff --git a/tests/fuzzers/txfetcher/corpus/68fb55290cb9d6da5b259017c34bcecf96c944aa-5 b/tests/fuzzers/txfetcher/corpus/68fb55290cb9d6da5b259017c34bcecf96c944aa-5
deleted file mode 100644
index 23d905b827..0000000000
Binary files a/tests/fuzzers/txfetcher/corpus/68fb55290cb9d6da5b259017c34bcecf96c944aa-5 and /dev/null differ
diff --git a/tests/fuzzers/txfetcher/corpus/6a5059bc86872526241d21ab5dae9f0afd3b9ae1-3 b/tests/fuzzers/txfetcher/corpus/6a5059bc86872526241d21ab5dae9f0afd3b9ae1-3
deleted file mode 100644
index b71d5dff51..0000000000
--- a/tests/fuzzers/txfetcher/corpus/6a5059bc86872526241d21ab5dae9f0afd3b9ae1-3
+++ /dev/null
@@ -1 +0,0 @@
-¿½
\ No newline at end of file
diff --git a/tests/fuzzers/txfetcher/corpus/717928e0e2d478c680c6409b173552ca98469ba5-6 b/tests/fuzzers/txfetcher/corpus/717928e0e2d478c680c6409b173552ca98469ba5-6
deleted file mode 100644
index dce5106115..0000000000
--- a/tests/fuzzers/txfetcher/corpus/717928e0e2d478c680c6409b173552ca98469ba5-6
+++ /dev/null
@@ -1 +0,0 @@
-LvhaJcdaFofenogkjQfJB
\ No newline at end of file
diff --git a/tests/fuzzers/txfetcher/corpus/71d22f25419543e437f249ca437823b87ac926b1-6 b/tests/fuzzers/txfetcher/corpus/71d22f25419543e437f249ca437823b87ac926b1-6
deleted file mode 100644
index d07a6c2f32..0000000000
Binary files a/tests/fuzzers/txfetcher/corpus/71d22f25419543e437f249ca437823b87ac926b1-6 and /dev/null differ
diff --git a/tests/fuzzers/txfetcher/corpus/7312a0f31ae5d773ed4fd74abc7521eb14754683-8 b/tests/fuzzers/txfetcher/corpus/7312a0f31ae5d773ed4fd74abc7521eb14754683-8
deleted file mode 100644
index 3593ce2e19..0000000000
--- a/tests/fuzzers/txfetcher/corpus/7312a0f31ae5d773ed4fd74abc7521eb14754683-8
+++ /dev/null
@@ -1,2 +0,0 @@
-DtQvfQ+MULKZTXk78c
-/fWkpxlyEQQ/+hgNzVtx9vWgJsafG7b0dA4AFjwVbFLmQcj2PprIMmPNQg1AkS5TDEmSJwFVlXsjLZ
\ No newline at end of file
diff --git a/tests/fuzzers/txfetcher/corpus/76e413a50dc8861e3756e556f796f1737bec2675-4 b/tests/fuzzers/txfetcher/corpus/76e413a50dc8861e3756e556f796f1737bec2675-4
deleted file mode 100644
index 623fcf9601..0000000000
Binary files a/tests/fuzzers/txfetcher/corpus/76e413a50dc8861e3756e556f796f1737bec2675-4 and /dev/null differ
diff --git a/tests/fuzzers/txfetcher/corpus/78480977d5c07386b06e9b37f5c82f5ed86c2f09-3 b/tests/fuzzers/txfetcher/corpus/78480977d5c07386b06e9b37f5c82f5ed86c2f09-3
deleted file mode 100644
index e92863a1c7..0000000000
--- a/tests/fuzzers/txfetcher/corpus/78480977d5c07386b06e9b37f5c82f5ed86c2f09-3
+++ /dev/null
@@ -1,14 +0,0 @@
- TESTING KEY-----
-MIICXgIBAAKBgQDuLnQAI3mDgey3VBzWnB2L39JUU4txjeVE6myuDqkM/uGlfjb9
-SjY1bIw4iAJm2gsvvZhIrCHS3l6afab4pZB
-l2+XsDulrKBxKKtD1rGxlG4LjncdabFn9gvLZad2bSysqz/qTAUStTvqJQIDAQAB
-AoGAGRzwwir7XvBOAy5tM/uV6e+Zf6anZzus1s1Y1ClbjbE6HXbnWWF/wbZGOpet
-3Zm4vD6MXc7jpTLryzTQIvVdfQbRc6+MUVeLKwZatTXtdZrhu+Jk7hx0nTPy8Jcb
-uJqFk541aEw+mMogY/xEcfbWd6IOkp+4xqjlFLBEDytgbIECQQDvH/E6nk+hgN4H
-qzzVtxxr397vWrjrIgPbJpQvBsafG7b0dA4AFjwVbFLmQcj2PprIMmPcQrooz8vp
-jy4SHEg1AkEA/v13/5M47K9vCxmb8QeD/asydfsgS5TeuNi8DoUBEmiSJwma7FXY
-fFUtxuvL7XvjwjN5B30pNEbc6Iuyt7y4MQJBAIt21su4b3sjXNueLKH85Q+phy2U
-fQtuUE9txblTu14q3N7gHRZB4ZMhFYyDy8CKrN2cPg/Fvyt0Xl/DoCzjA0CQQDU
-y2ptGsuSmgUtWj3NM9xuwYPm+Z/F84K6+ARYiZ6PYj013sovGKUFfYAqVXVlxtIX
-qyUBnu3Xh9ps8ZfjLZO7BAkEAlT4R5Yl6cGhaJQYZHOde3JEMhNRcVFMO8dDaFeo
-f9Oeos0UotgiDktdQHxdNEwLjQflJJBzV+5OtwswCA=----EN RATESTI EY-----Q
\ No newline at end of file
diff --git a/tests/fuzzers/txfetcher/corpus/7a113cd3c178934cdb64353af86d51462d7080a4-5 b/tests/fuzzers/txfetcher/corpus/7a113cd3c178934cdb64353af86d51462d7080a4-5
deleted file mode 100644
index 16818128ae..0000000000
--- a/tests/fuzzers/txfetcher/corpus/7a113cd3c178934cdb64353af86d51462d7080a4-5
+++ /dev/null
@@ -1,10 +0,0 @@
-l6afab4pZB
-l2+XsDlrKBxKKtDrGxlG4LjncdabFn9gvLZad2bSysqz/qTAUStTtqJQIDAQAB
-AoGAGRzwwir7XvBOAy5tuV6ef6anZzus1s1Y1Clb6HbnWWF/wbZGOpet
-3m4vD6MXc7jpTLryzTQIvVdfQbRc6+MUVeLKZTXtdZrh+k7hx0nTP8Jcb
-uqFk541awmMogY/EfbWd6IOkp+4xqjlFBEDytgbIECQQDvH/6nk+hgN4H
-qzzVtxxr397vWrjrIgPbJpQvBsafG7b0dA4AFjwVbFLmQcj2PprIMmPcQrooz84SHEg1Ak/7KCxmD/sfgS5TeuNi8DoUBEmiSJwm7FX
-ftxuvL7XvjwjN5B30pNEbc6Iuyt7y4MQJBAIt21su43sjXNueLKH8+ph2UfQuU9txblTu14q3N7gHRZB4ZMhFYyDy8CKrN2cPg/Fvyt0Xl/DoCzjA0CQQDU
-y2pGsuSmgUtWj3NM9xuwYPm+Z/F84K6+ARYiZ6PYj13sovGKUFfYAqVXVlxtIáo‡X
-qUn3X9ps8ZfjLZO7BAkEAlT4R5Yl6cGhaJQYZHOde3JMhNRcVFMO8dDaFo
-f9Oeos0UotgiDktdQHxdNEwLjQlJBz+OtwwA=---E ATTIEY-
\ No newline at end of file
diff --git a/tests/fuzzers/txfetcher/corpus/7ea9f71020f3eb783f743f744eba8d8ca4b2582f-3 b/tests/fuzzers/txfetcher/corpus/7ea9f71020f3eb783f743f744eba8d8ca4b2582f-3
deleted file mode 100644
index 08f5bb99f5..0000000000
--- a/tests/fuzzers/txfetcher/corpus/7ea9f71020f3eb783f743f744eba8d8ca4b2582f-3
+++ /dev/null
@@ -1,9 +0,0 @@
-
-l2+DulrKBxKKtD1rGxlG4LjncdabFn9gvLZad2bSysqz/qTAUStTvqJQIDAQAB
-AoGAGRzwwir7XvBOAy5tM/uV6e+Zf6anZzus1s1Y1ClbjbE6HXbnWWF/wbZGOpet
-3Zm4vD6MXc7jpTLryzTQIvVdfQbRc6+MUVeLKwZatTXtdZrhu+Jk7hx0nTPy8Jcb
-uJqFk541aEw+mMogY/xEcfbWd6IOkp+4xqjlFLBEDytgbIECQQDvH/E6nk+hgN4H
-qzzVtxxr397vWrjrIgPbJpQvBsafG7b0dA4AFjwVbFLmQcj2PprIMmPcQrooz8vp
-jy4SHEg1AkEA/v13/5M47K9vCxmb8QeD/asydfsgS5TeuNi8DoUBEmiSJwma7FXY
-fFUtxuvL7XvjwjN5B30pNEbc6Iuyt7y4MQJBAIt21su4b3sjXNueLKH85Q+phy2U
-fQtuUE9txblTu14q3N7gHRZB4ZMhFYyDy8CKrN2cPg/Fvyt0Xlp/DoCzjA0CQQDU
diff --git a/tests/fuzzers/txfetcher/corpus/84f8c275f3ffbaf8c32c21782af13de10e7de28b-3 b/tests/fuzzers/txfetcher/corpus/84f8c275f3ffbaf8c32c21782af13de10e7de28b-3
deleted file mode 100644
index 2d6060c406..0000000000
--- a/tests/fuzzers/txfetcher/corpus/84f8c275f3ffbaf8c32c21782af13de10e7de28b-3
+++ /dev/null
@@ -1 +0,0 @@
-KKtDlbjVeLKwZatTXtdZrhu+Jk7hx0xxr397vWrjrIgPbJpQvBsafG7b0dA4AFjwVbFLQcmPcQETT YQ
\ No newline at end of file
diff --git a/tests/fuzzers/txfetcher/corpus/85dfe7ddee0e52aa19115c0ebb9ed28a14e488c6-5 b/tests/fuzzers/txfetcher/corpus/85dfe7ddee0e52aa19115c0ebb9ed28a14e488c6-5
deleted file mode 100644
index 9b6fe78029..0000000000
Binary files a/tests/fuzzers/txfetcher/corpus/85dfe7ddee0e52aa19115c0ebb9ed28a14e488c6-5 and /dev/null differ
diff --git a/tests/fuzzers/txfetcher/corpus/87bba5b1e3da38fed8cb5a9bc5c8baa819e83d05-5 b/tests/fuzzers/txfetcher/corpus/87bba5b1e3da38fed8cb5a9bc5c8baa819e83d05-5
deleted file mode 100644
index ef091f0be2..0000000000
Binary files a/tests/fuzzers/txfetcher/corpus/87bba5b1e3da38fed8cb5a9bc5c8baa819e83d05-5 and /dev/null differ
diff --git a/tests/fuzzers/txfetcher/corpus/8a9ebedfbfec584d8b22761e6121dc1ca0248548-4 b/tests/fuzzers/txfetcher/corpus/8a9ebedfbfec584d8b22761e6121dc1ca0248548-4
deleted file mode 100644
index 953be79201..0000000000
Binary files a/tests/fuzzers/txfetcher/corpus/8a9ebedfbfec584d8b22761e6121dc1ca0248548-4 and /dev/null differ
diff --git a/tests/fuzzers/txfetcher/corpus/8ff3bd49f93079e5e1c7f8f2461ba7ee612900c3-5 b/tests/fuzzers/txfetcher/corpus/8ff3bd49f93079e5e1c7f8f2461ba7ee612900c3-5
deleted file mode 100644
index a86a66593b..0000000000
Binary files a/tests/fuzzers/txfetcher/corpus/8ff3bd49f93079e5e1c7f8f2461ba7ee612900c3-5 and /dev/null differ
diff --git a/tests/fuzzers/txfetcher/corpus/9034aaf45143996a2b14465c352ab0c6fa26b221-2 b/tests/fuzzers/txfetcher/corpus/9034aaf45143996a2b14465c352ab0c6fa26b221-2
deleted file mode 100644
index 9c95a6ba6a..0000000000
--- a/tests/fuzzers/txfetcher/corpus/9034aaf45143996a2b14465c352ab0c6fa26b221-2
+++ /dev/null
@@ -1 +0,0 @@
-½
\ No newline at end of file
diff --git a/tests/fuzzers/txfetcher/corpus/92cefdc6251d04896349a464b29be03d6bb04c3d-2 b/tests/fuzzers/txfetcher/corpus/92cefdc6251d04896349a464b29be03d6bb04c3d-2
deleted file mode 100644
index 9b78e45707..0000000000
--- a/tests/fuzzers/txfetcher/corpus/92cefdc6251d04896349a464b29be03d6bb04c3d-2
+++ /dev/null
@@ -1 +0,0 @@
-ï39402006196394479212279040100143613805079739270465446667948293404245721771496870329047266088258938001861606973112319¿½
\ No newline at end of file
diff --git a/tests/fuzzers/txfetcher/corpus/9613e580ccb69df7c9074f0e2f6886ac6b34ca55-5 b/tests/fuzzers/txfetcher/corpus/9613e580ccb69df7c9074f0e2f6886ac6b34ca55-5
deleted file mode 100644
index 681adc6a9c..0000000000
Binary files a/tests/fuzzers/txfetcher/corpus/9613e580ccb69df7c9074f0e2f6886ac6b34ca55-5 and /dev/null differ
diff --git a/tests/fuzzers/txfetcher/corpus/98afc8970a680fdc4aee0b5d48784f650c566b75-6 b/tests/fuzzers/txfetcher/corpus/98afc8970a680fdc4aee0b5d48784f650c566b75-6
deleted file mode 100644
index c82defc243..0000000000
Binary files a/tests/fuzzers/txfetcher/corpus/98afc8970a680fdc4aee0b5d48784f650c566b75-6 and /dev/null differ
diff --git a/tests/fuzzers/txfetcher/corpus/9dfc92f4ca2ece0167096fca6751ff314765f08b-8 b/tests/fuzzers/txfetcher/corpus/9dfc92f4ca2ece0167096fca6751ff314765f08b-8
deleted file mode 100644
index be75c25fec..0000000000
Binary files a/tests/fuzzers/txfetcher/corpus/9dfc92f4ca2ece0167096fca6751ff314765f08b-8 and /dev/null differ
diff --git a/tests/fuzzers/txfetcher/corpus/9ebcbbfdaf0e98c87652e57226a4d8a35170c67d-4 b/tests/fuzzers/txfetcher/corpus/9ebcbbfdaf0e98c87652e57226a4d8a35170c67d-4
deleted file mode 100644
index ab036767db..0000000000
--- a/tests/fuzzers/txfetcher/corpus/9ebcbbfdaf0e98c87652e57226a4d8a35170c67d-4
+++ /dev/null
@@ -1,5 +0,0 @@
-l2+DulrKBxKKtD1rGxlG4LjncdabFn9gvLZad2bSysqz/qTAUStTvqJQIDAQAB
-AoGAGRzwwir7XvBOAy5tM/uV6e+Zf6anZzus1s1Y1ClbjbE6HXbnWWF/wbZGOpwVbFLmQet
-3Zm4vD6MXc7jpTLryzTQIvVdfQbRc6+MUVeLKwZatTXtdZrhu+Jk7hx0nTPy8Jcb
-uJqFk541aEw+mMogY/xEcfbWd6IOkp+4xqjlFLBEDytgbIECQQDvH/E6nk+hgN4H
-qzzVtxxr397vWrjr
\ No newline at end of file
diff --git a/tests/fuzzers/txfetcher/corpus/9ff520eb8b8319a5fdafbe4d1cbb02a75058d93b-7 b/tests/fuzzers/txfetcher/corpus/9ff520eb8b8319a5fdafbe4d1cbb02a75058d93b-7
deleted file mode 100644
index d91a13138c..0000000000
--- a/tests/fuzzers/txfetcher/corpus/9ff520eb8b8319a5fdafbe4d1cbb02a75058d93b-7
+++ /dev/null
@@ -1,2 +0,0 @@
-&Èíw¿½ï¿½Â€ï¿½ï¿½ï¿½ï¿½ï¿½ï¿½ï¿½ï¿½ï¿½ �
-���
���ï¿ï¿½ï¿½ï¿½ÿÿÿ����������� �!�"�#�$�%�&�'�(�)�*�+�,�-�.�/¿½0
\ No newline at end of file
diff --git a/tests/fuzzers/txfetcher/corpus/a0b57a12e25ac5adcedb2a5c45915f0f62aee869-4 b/tests/fuzzers/txfetcher/corpus/a0b57a12e25ac5adcedb2a5c45915f0f62aee869-4
deleted file mode 100644
index 78243163a8..0000000000
Binary files a/tests/fuzzers/txfetcher/corpus/a0b57a12e25ac5adcedb2a5c45915f0f62aee869-4 and /dev/null differ
diff --git a/tests/fuzzers/txfetcher/corpus/a2684adccf16e036b051c12f283734fa803746e8-6 b/tests/fuzzers/txfetcher/corpus/a2684adccf16e036b051c12f283734fa803746e8-6
deleted file mode 100644
index 4e12af2da8..0000000000
Binary files a/tests/fuzzers/txfetcher/corpus/a2684adccf16e036b051c12f283734fa803746e8-6 and /dev/null differ
diff --git a/tests/fuzzers/txfetcher/corpus/a37305974cf477ecfe65fa92f37b1f51dea25910-4 b/tests/fuzzers/txfetcher/corpus/a37305974cf477ecfe65fa92f37b1f51dea25910-4
deleted file mode 100644
index 75cb14e8d9..0000000000
Binary files a/tests/fuzzers/txfetcher/corpus/a37305974cf477ecfe65fa92f37b1f51dea25910-4 and /dev/null differ
diff --git a/tests/fuzzers/txfetcher/corpus/a7eb43926bd14b1f62a66a33107776e487434d32-7 b/tests/fuzzers/txfetcher/corpus/a7eb43926bd14b1f62a66a33107776e487434d32-7
deleted file mode 100644
index 88e6127355..0000000000
Binary files a/tests/fuzzers/txfetcher/corpus/a7eb43926bd14b1f62a66a33107776e487434d32-7 and /dev/null differ
diff --git a/tests/fuzzers/txfetcher/corpus/a8f7c254eb64a40fd2a77b79979c7bbdac6a760c-4 b/tests/fuzzers/txfetcher/corpus/a8f7c254eb64a40fd2a77b79979c7bbdac6a760c-4
deleted file mode 100644
index da61777c22..0000000000
--- a/tests/fuzzers/txfetcher/corpus/a8f7c254eb64a40fd2a77b79979c7bbdac6a760c-4
+++ /dev/null
@@ -1,2 +0,0 @@
-lxtIX
-qyU3X9ps8ZfjLZ45l6cGhaJQYZHOde3JEMhNRcVFMO8dJDaFe
\ No newline at end of file
diff --git a/tests/fuzzers/txfetcher/corpus/a9a8f287d6af24e47d8db468e8f967aa44fb5a1f-7 b/tests/fuzzers/txfetcher/corpus/a9a8f287d6af24e47d8db468e8f967aa44fb5a1f-7
deleted file mode 100644
index 7811921b79..0000000000
Binary files a/tests/fuzzers/txfetcher/corpus/a9a8f287d6af24e47d8db468e8f967aa44fb5a1f-7 and /dev/null differ
diff --git a/tests/fuzzers/txfetcher/corpus/aa7444d8e326158046862590a0db993c07aef372-7 b/tests/fuzzers/txfetcher/corpus/aa7444d8e326158046862590a0db993c07aef372-7
deleted file mode 100644
index 870e12ffbc..0000000000
--- a/tests/fuzzers/txfetcher/corpus/aa7444d8e326158046862590a0db993c07aef372-7
+++ /dev/null
@@ -1 +0,0 @@
-00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000@0000000000000
\ No newline at end of file
diff --git a/tests/fuzzers/txfetcher/corpus/ae4593626d8796e079a358c2395a4f6c9ddd6a44-6 b/tests/fuzzers/txfetcher/corpus/ae4593626d8796e079a358c2395a4f6c9ddd6a44-6
deleted file mode 100644
index 845deedd0e..0000000000
--- a/tests/fuzzers/txfetcher/corpus/ae4593626d8796e079a358c2395a4f6c9ddd6a44-6
+++ /dev/null
@@ -1,8 +0,0 @@
-9pmM gY/xEcfbWd6IOkp+4xqjlFLBEDytgbparsing /E6nk+hgN4H
-qzzVtxxr397vWrjrIgPbJpQvBsafG7b0dA4AFjwVbFLmQcj2PprLANGcQrooz8vp
-jy4SHEg1AkEA/v13/@M47K9vCxb8QeD/asydfsgS5TeuNi8DoUBEmiSJwma7FXY
-fFUtxuvL7XvjwjN5B30pNEbc6Iuyt7y4MQJBAIt21su4b3sjXNueLKH85Q+phy2U
-fQtuUE9txblTu14q3N7gHRZB4ZMhFYyDy8CKrN2cPg/Fvyt0Xl/DoCz� jA0CQQDU
-y2ptGsuSmgUtWj3NM9xuwYPm+Z/F84K6+ARYiZ6Yj013sovGKUFfYAqVXVlxtIX
-qyUBnu3Xh9ps8ZfjLZO7BAkEAlT4R5Yl6cGhaJQYFZHOde3JEMhNRcVFMO8dDaFeo
-f9Oeos0Uot
\ No newline at end of file
diff --git a/tests/fuzzers/txfetcher/corpus/b2942d4413a66939cda7db93020dee79eb17788c-9 b/tests/fuzzers/txfetcher/corpus/b2942d4413a66939cda7db93020dee79eb17788c-9
deleted file mode 100644
index 10aca65121..0000000000
Binary files a/tests/fuzzers/txfetcher/corpus/b2942d4413a66939cda7db93020dee79eb17788c-9 and /dev/null differ
diff --git a/tests/fuzzers/txfetcher/corpus/b4614117cdfd147d38f4e8a4d85f5a2bb99a6a4f-5 b/tests/fuzzers/txfetcher/corpus/b4614117cdfd147d38f4e8a4d85f5a2bb99a6a4f-5
deleted file mode 100644
index af69eef9b0..0000000000
Binary files a/tests/fuzzers/txfetcher/corpus/b4614117cdfd147d38f4e8a4d85f5a2bb99a6a4f-5 and /dev/null differ
diff --git a/tests/fuzzers/txfetcher/corpus/b631ef3291fa405cd6517d11f4d1b9b6d02912d4-2 b/tests/fuzzers/txfetcher/corpus/b631ef3291fa405cd6517d11f4d1b9b6d02912d4-2
deleted file mode 100644
index a6b8858b40..0000000000
--- a/tests/fuzzers/txfetcher/corpus/b631ef3291fa405cd6517d11f4d1b9b6d02912d4-2
+++ /dev/null
@@ -1 +0,0 @@
-&áo‡
\ No newline at end of file
diff --git a/tests/fuzzers/txfetcher/corpus/b7a91e338cc11f50ebdb2c414610efc4d5be3137-4 b/tests/fuzzers/txfetcher/corpus/b7a91e338cc11f50ebdb2c414610efc4d5be3137-4
deleted file mode 100644
index 9709a1fcb8..0000000000
Binary files a/tests/fuzzers/txfetcher/corpus/b7a91e338cc11f50ebdb2c414610efc4d5be3137-4 and /dev/null differ
diff --git a/tests/fuzzers/txfetcher/corpus/b858cb282617fb0956d960215c8e84d1ccf909c6-2 b/tests/fuzzers/txfetcher/corpus/b858cb282617fb0956d960215c8e84d1ccf909c6-2
deleted file mode 100644
index 0519ecba6e..0000000000
--- a/tests/fuzzers/txfetcher/corpus/b858cb282617fb0956d960215c8e84d1ccf909c6-2
+++ /dev/null
@@ -1 +0,0 @@
-
\ No newline at end of file
diff --git a/tests/fuzzers/txfetcher/corpus/bc9d570aacf3acd39600feda8e72a293a4667da4-1 b/tests/fuzzers/txfetcher/corpus/bc9d570aacf3acd39600feda8e72a293a4667da4-1
deleted file mode 100644
index aab27c5909..0000000000
--- a/tests/fuzzers/txfetcher/corpus/bc9d570aacf3acd39600feda8e72a293a4667da4-1
+++ /dev/null
@@ -1 +0,0 @@
-�
\ No newline at end of file
diff --git a/tests/fuzzers/txfetcher/corpus/be7eed35b245b5d5d2adcdb4c67f07794eb86b24-3 b/tests/fuzzers/txfetcher/corpus/be7eed35b245b5d5d2adcdb4c67f07794eb86b24-3
deleted file mode 100644
index 47c996d33f..0000000000
--- a/tests/fuzzers/txfetcher/corpus/be7eed35b245b5d5d2adcdb4c67f07794eb86b24-3
+++ /dev/null
@@ -1,2 +0,0 @@
-4LZmbRc6+MUVeLKXtdZr+Jk7hhgN4H
-qzzVtxxr397vWrjrIgPbJpQvBsafG7b0dA4AFjwVbFLQcmPcQ SN_
\ No newline at end of file
diff --git a/tests/fuzzers/txfetcher/corpus/c010b0cd70c7edbc5bd332fc9e2e91c6a1cbcdc4-5 b/tests/fuzzers/txfetcher/corpus/c010b0cd70c7edbc5bd332fc9e2e91c6a1cbcdc4-5
deleted file mode 100644
index 474f14d89b..0000000000
--- a/tests/fuzzers/txfetcher/corpus/c010b0cd70c7edbc5bd332fc9e2e91c6a1cbcdc4-5
+++ /dev/null
@@ -1,4 +0,0 @@
-
-Xc7jpTLryzTQIvVdfQbRc6+MUVeLKwZatTXtdZrhu+Jk7hx0nTPy8Jcb
-uJqFk541aEw+mMogY/xEcfbWd6IOkp+4xqjlFLBEDytgbIECQQDvH/E6nhgN4H
-qzzVtxx7vWrjrIgPbJpvfb
\ No newline at end of file
diff --git a/tests/fuzzers/txfetcher/corpus/c1690698607eb0f4c4244e9f9629968be4beb6bc-8 b/tests/fuzzers/txfetcher/corpus/c1690698607eb0f4c4244e9f9629968be4beb6bc-8
deleted file mode 100644
index d184a2d8a4..0000000000
--- a/tests/fuzzers/txfetcher/corpus/c1690698607eb0f4c4244e9f9629968be4beb6bc-8
+++ /dev/null
@@ -1,2 +0,0 @@
-&Ƚ�� �
-���
���ï¿ï¿½ï¿½ï¿½ÿÿÿ����������� �!�"�#�$�%�&�'�(�)�*�+�,�-�.�/¿½0
\ No newline at end of file
diff --git a/tests/fuzzers/txfetcher/corpus/c1f435e4f53a9a17578d9e8c4789860f962a1379-6 b/tests/fuzzers/txfetcher/corpus/c1f435e4f53a9a17578d9e8c4789860f962a1379-6
deleted file mode 100644
index f2a68ec3de..0000000000
Binary files a/tests/fuzzers/txfetcher/corpus/c1f435e4f53a9a17578d9e8c4789860f962a1379-6 and /dev/null differ
diff --git a/tests/fuzzers/txfetcher/corpus/c298a75334c3acf04bd129a8867447a25c8bacf8-7 b/tests/fuzzers/txfetcher/corpus/c298a75334c3acf04bd129a8867447a25c8bacf8-7
deleted file mode 100644
index 0b437f2260..0000000000
Binary files a/tests/fuzzers/txfetcher/corpus/c298a75334c3acf04bd129a8867447a25c8bacf8-7 and /dev/null differ
diff --git a/tests/fuzzers/txfetcher/corpus/c42287c7d225e530e822f23bbbba6819a9e48f38-6 b/tests/fuzzers/txfetcher/corpus/c42287c7d225e530e822f23bbbba6819a9e48f38-6
deleted file mode 100644
index 91818f5634..0000000000
Binary files a/tests/fuzzers/txfetcher/corpus/c42287c7d225e530e822f23bbbba6819a9e48f38-6 and /dev/null differ
diff --git a/tests/fuzzers/txfetcher/corpus/c4cdbb891f3ee76476b7375d5ed51691fed95421-10 b/tests/fuzzers/txfetcher/corpus/c4cdbb891f3ee76476b7375d5ed51691fed95421-10
deleted file mode 100644
index e365cc5262..0000000000
Binary files a/tests/fuzzers/txfetcher/corpus/c4cdbb891f3ee76476b7375d5ed51691fed95421-10 and /dev/null differ
diff --git a/tests/fuzzers/txfetcher/corpus/cc9572d72dfa2937074b1766dcbcff9cc58d1137-4 b/tests/fuzzers/txfetcher/corpus/cc9572d72dfa2937074b1766dcbcff9cc58d1137-4
deleted file mode 100644
index b72a78f529..0000000000
Binary files a/tests/fuzzers/txfetcher/corpus/cc9572d72dfa2937074b1766dcbcff9cc58d1137-4 and /dev/null differ
diff --git a/tests/fuzzers/txfetcher/corpus/cd1d73b4e101bc7b979e3f6f135cb12d4594d348-5 b/tests/fuzzers/txfetcher/corpus/cd1d73b4e101bc7b979e3f6f135cb12d4594d348-5
deleted file mode 100644
index 3079de5557..0000000000
--- a/tests/fuzzers/txfetcher/corpus/cd1d73b4e101bc7b979e3f6f135cb12d4594d348-5
+++ /dev/null
@@ -1 +0,0 @@
-822452601031714757585602556
\ No newline at end of file
diff --git a/tests/fuzzers/txfetcher/corpus/d0acdc8fca32bbd58d368eeac3bd9eaa46f59d27-5 b/tests/fuzzers/txfetcher/corpus/d0acdc8fca32bbd58d368eeac3bd9eaa46f59d27-5
deleted file mode 100644
index 794d5d86c6..0000000000
Binary files a/tests/fuzzers/txfetcher/corpus/d0acdc8fca32bbd58d368eeac3bd9eaa46f59d27-5 and /dev/null differ
diff --git a/tests/fuzzers/txfetcher/corpus/d0e43b715fd00953f7bdd6dfad95811985e81396-4 b/tests/fuzzers/txfetcher/corpus/d0e43b715fd00953f7bdd6dfad95811985e81396-4
deleted file mode 100644
index 742db5fb3b..0000000000
Binary files a/tests/fuzzers/txfetcher/corpus/d0e43b715fd00953f7bdd6dfad95811985e81396-4 and /dev/null differ
diff --git a/tests/fuzzers/txfetcher/corpus/d925fbd22c8bc0de34d6a9d1258ce3d2928d0927-8 b/tests/fuzzers/txfetcher/corpus/d925fbd22c8bc0de34d6a9d1258ce3d2928d0927-8
deleted file mode 100644
index 5920dfe601..0000000000
Binary files a/tests/fuzzers/txfetcher/corpus/d925fbd22c8bc0de34d6a9d1258ce3d2928d0927-8 and /dev/null differ
diff --git a/tests/fuzzers/txfetcher/corpus/d9ba78cb7425724185d5fa300cd5c03aec2683bb-7 b/tests/fuzzers/txfetcher/corpus/d9ba78cb7425724185d5fa300cd5c03aec2683bb-7
deleted file mode 100644
index c4df1cf210..0000000000
Binary files a/tests/fuzzers/txfetcher/corpus/d9ba78cb7425724185d5fa300cd5c03aec2683bb-7 and /dev/null differ
diff --git a/tests/fuzzers/txfetcher/corpus/da39a3ee5e6b4b0d3255bfef95601890afd80709 b/tests/fuzzers/txfetcher/corpus/da39a3ee5e6b4b0d3255bfef95601890afd80709
deleted file mode 100644
index e69de29bb2..0000000000
diff --git a/tests/fuzzers/txfetcher/corpus/dcdb7758b87648b5d766b1b341a65834420cf621-7 b/tests/fuzzers/txfetcher/corpus/dcdb7758b87648b5d766b1b341a65834420cf621-7
deleted file mode 100644
index 78cf11ae21..0000000000
Binary files a/tests/fuzzers/txfetcher/corpus/dcdb7758b87648b5d766b1b341a65834420cf621-7 and /dev/null differ
diff --git a/tests/fuzzers/txfetcher/corpus/dd441bd24581332c9ce19e008260a69287aa3cbc-6 b/tests/fuzzers/txfetcher/corpus/dd441bd24581332c9ce19e008260a69287aa3cbc-6
deleted file mode 100644
index 4e0c14006e..0000000000
--- a/tests/fuzzers/txfetcher/corpus/dd441bd24581332c9ce19e008260a69287aa3cbc-6
+++ /dev/null
@@ -1,2 +0,0 @@
-Dtf1nWk78c
-/fWklyEQQ/+hgNzVtxxmDgS5TDETgeXVlXsjLZ
\ No newline at end of file
diff --git a/tests/fuzzers/txfetcher/corpus/def879fe0fd637a745c00c8f1da340518db8688c-2 b/tests/fuzzers/txfetcher/corpus/def879fe0fd637a745c00c8f1da340518db8688c-2
deleted file mode 100644
index 555752f0ed..0000000000
--- a/tests/fuzzers/txfetcher/corpus/def879fe0fd637a745c00c8f1da340518db8688c-2
+++ /dev/null
@@ -1 +0,0 @@
-ù ´
\ No newline at end of file
diff --git a/tests/fuzzers/txfetcher/corpus/df6c30a9781b93bd6d2f5e97e5592d5945210003-7 b/tests/fuzzers/txfetcher/corpus/df6c30a9781b93bd6d2f5e97e5592d5945210003-7
deleted file mode 100644
index 2a7adb093b..0000000000
Binary files a/tests/fuzzers/txfetcher/corpus/df6c30a9781b93bd6d2f5e97e5592d5945210003-7 and /dev/null differ
diff --git a/tests/fuzzers/txfetcher/corpus/dfc1c3a2e3ccdaf6f88c515fd00e8ad08421e431-6 b/tests/fuzzers/txfetcher/corpus/dfc1c3a2e3ccdaf6f88c515fd00e8ad08421e431-6
deleted file mode 100644
index 59f3442c05..0000000000
Binary files a/tests/fuzzers/txfetcher/corpus/dfc1c3a2e3ccdaf6f88c515fd00e8ad08421e431-6 and /dev/null differ
diff --git a/tests/fuzzers/txfetcher/corpus/e1dcc4e7ead6dfd1139ece7bf57d776cb9dac72d-7 b/tests/fuzzers/txfetcher/corpus/e1dcc4e7ead6dfd1139ece7bf57d776cb9dac72d-7
deleted file mode 100644
index 5ba489f99d..0000000000
Binary files a/tests/fuzzers/txfetcher/corpus/e1dcc4e7ead6dfd1139ece7bf57d776cb9dac72d-7 and /dev/null differ
diff --git a/tests/fuzzers/txfetcher/corpus/e39c2de2c8937d2cbd4339b13d6a0ce94d94f8d2-8 b/tests/fuzzers/txfetcher/corpus/e39c2de2c8937d2cbd4339b13d6a0ce94d94f8d2-8
deleted file mode 100644
index 0e9508938e..0000000000
Binary files a/tests/fuzzers/txfetcher/corpus/e39c2de2c8937d2cbd4339b13d6a0ce94d94f8d2-8 and /dev/null differ
diff --git a/tests/fuzzers/txfetcher/corpus/e72f76b9579c792e545d02fe405d9186f0d6c39b-6 b/tests/fuzzers/txfetcher/corpus/e72f76b9579c792e545d02fe405d9186f0d6c39b-6
deleted file mode 100644
index c4d34b1732..0000000000
Binary files a/tests/fuzzers/txfetcher/corpus/e72f76b9579c792e545d02fe405d9186f0d6c39b-6 and /dev/null differ
diff --git a/tests/fuzzers/txfetcher/corpus/eb70814d6355a4498b8f301ba8dbc34f895a9947-5 b/tests/fuzzers/txfetcher/corpus/eb70814d6355a4498b8f301ba8dbc34f895a9947-5
deleted file mode 100644
index bd57a22fb1..0000000000
Binary files a/tests/fuzzers/txfetcher/corpus/eb70814d6355a4498b8f301ba8dbc34f895a9947-5 and /dev/null differ
diff --git a/tests/fuzzers/txfetcher/corpus/ebdc17efe343e412634dca57cecd5a0e1ce1c1c7-5 b/tests/fuzzers/txfetcher/corpus/ebdc17efe343e412634dca57cecd5a0e1ce1c1c7-5
deleted file mode 100644
index aaa3f695ab..0000000000
Binary files a/tests/fuzzers/txfetcher/corpus/ebdc17efe343e412634dca57cecd5a0e1ce1c1c7-5 and /dev/null differ
diff --git a/tests/fuzzers/txfetcher/corpus/ec0a25eba8966b8f628d821b3cfbdf2dfd4bbb4c-3 b/tests/fuzzers/txfetcher/corpus/ec0a25eba8966b8f628d821b3cfbdf2dfd4bbb4c-3
deleted file mode 100644
index 65cf0df801..0000000000
--- a/tests/fuzzers/txfetcher/corpus/ec0a25eba8966b8f628d821b3cfbdf2dfd4bbb4c-3
+++ /dev/null
@@ -1,13 +0,0 @@
-¸&^£áo‡È—-----BEGIN RSA TESTING KEY-----
-MIICXgIBAAKBgQDuLnQAI3mDgey3VBzWnB2L39JUU4txjeVE6myuDqkM/uGlfjb9
-SjY1bIw4iA5sBBZzHi3z0h1YV8PuxEbi4nW91IJm2gsvvZhIrHS3l6afab4pZB
-l2+XsDulrKBxKKtD1rGxlG4Ljncdabn9vLZad2bSysqz/qTAUStvqJQIDAQAB
-AoGAGRzwwir7XvBOAy5tM/uV6e+Zf6anZzus1s1K1ClbjbE6HXbnWWF/wbZGOpet
-3Zm4vD6MXc7jpTLryzQIvVdfQbRc6+MUVeLKwZatTXtZru+Jk7hx0nTPy8Jcb
-uJqFk541aEw+mMogY/xEcfbW6IOkp+4xqjlFLBEDytgbIECQQDvH/E6nk+hg4
-qzzVtxxr397vWrjrIgPbJpQvBsafG7b0dA4AFjwVbFLcj2pIMPQroozvjg1AkEA/v13/5M47K9vCxmb8QeD/aydfsgS5TeuNi8DoUBEmiSJwmaXY
-fFUtxv7XvjwjN5B30pNEbc6Iuyt7y4MQJBAIt21su4bjeLKH8Q+ph2
-fQtuUE9txblTu14q3N7gHRZB4ZMhFYyDy8CKrN2cPg/Fvyt0Xlp/DoCzjA0CQQDU
-y2ptGsuSmgUtWj3NM9xuwYPm+Z/F84K6+AYiZ6PYj013sovGKFYqVXVlxtIX
-qyUBnu3X9s8ZfjZO7BAkl4R5Yl6cGhaJQYZHOe3JEMhVFaFf9Oes0UUothgiDktdQxdNLj7+5CWA==
------END RSASQ
\ No newline at end of file
diff --git a/tests/fuzzers/txfetcher/corpus/eebe3b76aeba6deed965d17d2b024f7eae1a43f1-5 b/tests/fuzzers/txfetcher/corpus/eebe3b76aeba6deed965d17d2b024f7eae1a43f1-5
deleted file mode 100644
index 20d62e15b3..0000000000
Binary files a/tests/fuzzers/txfetcher/corpus/eebe3b76aeba6deed965d17d2b024f7eae1a43f1-5 and /dev/null differ
diff --git a/tests/fuzzers/txfetcher/corpus/ef8741a9faf030794d98ff113f556c68a24719a5-6 b/tests/fuzzers/txfetcher/corpus/ef8741a9faf030794d98ff113f556c68a24719a5-6
deleted file mode 100644
index 09fcd86d77..0000000000
Binary files a/tests/fuzzers/txfetcher/corpus/ef8741a9faf030794d98ff113f556c68a24719a5-6 and /dev/null differ
diff --git a/tests/fuzzers/txfetcher/corpus/efb7410d02418befeba25a43d676cc6124129125-4 b/tests/fuzzers/txfetcher/corpus/efb7410d02418befeba25a43d676cc6124129125-4
deleted file mode 100644
index 2191a7324a..0000000000
--- a/tests/fuzzers/txfetcher/corpus/efb7410d02418befeba25a43d676cc6124129125-4
+++ /dev/null
@@ -1 +0,0 @@
-88242871'392752200424452601091531672177074144720616417147514758635765020556616¿
\ No newline at end of file
diff --git a/tests/fuzzers/txfetcher/corpus/f6f97d781a5a749903790e07db8619866cb7c3a1-6 b/tests/fuzzers/txfetcher/corpus/f6f97d781a5a749903790e07db8619866cb7c3a1-6
deleted file mode 100644
index 219a8d3682..0000000000
Binary files a/tests/fuzzers/txfetcher/corpus/f6f97d781a5a749903790e07db8619866cb7c3a1-6 and /dev/null differ
diff --git a/tests/fuzzers/txfetcher/corpus/f7a3cd00fa0e57742e7dbbb8283dcaea067eaf7b-5 b/tests/fuzzers/txfetcher/corpus/f7a3cd00fa0e57742e7dbbb8283dcaea067eaf7b-5
deleted file mode 100644
index f01ccd89ef..0000000000
--- a/tests/fuzzers/txfetcher/corpus/f7a3cd00fa0e57742e7dbbb8283dcaea067eaf7b-5
+++ /dev/null
@@ -1,2 +0,0 @@
-Xyt0Xl/DoCzjA0CQQDU
-y2ptGsuSmgUtWj3NM9xuwYPm+Z/F84K6+ARYi
\ No newline at end of file
diff --git a/tests/fuzzers/txfetcher/corpus/f94d60a6c556ce485ab60088291760b8be25776c-6 b/tests/fuzzers/txfetcher/corpus/f94d60a6c556ce485ab60088291760b8be25776c-6
deleted file mode 100644
index 58d841ff03..0000000000
--- a/tests/fuzzers/txfetcher/corpus/f94d60a6c556ce485ab60088291760b8be25776c-6
+++ /dev/null
@@ -1,2 +0,0 @@
-HZB4cQZde3JMNRcVFMO8dDFo
-f9OeosiDdQQl
\ No newline at end of file
diff --git a/tests/fuzzers/txfetcher/corpus/f9e627b2cb82ffa1ea5e0c6d7f2802f3000b18a8-6 b/tests/fuzzers/txfetcher/corpus/f9e627b2cb82ffa1ea5e0c6d7f2802f3000b18a8-6
deleted file mode 100644
index b5dfecc1e9..0000000000
Binary files a/tests/fuzzers/txfetcher/corpus/f9e627b2cb82ffa1ea5e0c6d7f2802f3000b18a8-6 and /dev/null differ
diff --git a/tests/fuzzers/txfetcher/corpus/fb3775aa24e5667e658920c05ba4b7b19ff256fb-5 b/tests/fuzzers/txfetcher/corpus/fb3775aa24e5667e658920c05ba4b7b19ff256fb-5
deleted file mode 100644
index 6f4927d822..0000000000
--- a/tests/fuzzers/txfetcher/corpus/fb3775aa24e5667e658920c05ba4b7b19ff256fb-5
+++ /dev/null
@@ -1 +0,0 @@
-HZB4c2cPclieoverpGsumgUtWj3NMYPZ/F8tá5YlNR8dDFoiDdQQl
\ No newline at end of file
diff --git a/tests/fuzzers/txfetcher/corpus/fd6386548e119a50db96b2fa406e54924c45a2d5-6 b/tests/fuzzers/txfetcher/corpus/fd6386548e119a50db96b2fa406e54924c45a2d5-6
deleted file mode 100644
index 6fff60edd4..0000000000
Binary files a/tests/fuzzers/txfetcher/corpus/fd6386548e119a50db96b2fa406e54924c45a2d5-6 and /dev/null differ
diff --git a/tests/fuzzers/txfetcher/txfetcher_fuzzer.go b/tests/fuzzers/txfetcher/txfetcher_fuzzer.go
deleted file mode 100644
index 51f2fc3b4d..0000000000
--- a/tests/fuzzers/txfetcher/txfetcher_fuzzer.go
+++ /dev/null
@@ -1,210 +0,0 @@
-// Copyright 2020 The go-ethereum Authors
-// This file is part of the go-ethereum library.
-//
-// The go-ethereum library is free software: you can redistribute it and/or modify
-// it under the terms of the GNU Lesser General Public License as published by
-// the Free Software Foundation, either version 3 of the License, or
-// (at your option) any later version.
-//
-// The go-ethereum library is distributed in the hope that it will be useful,
-// but WITHOUT ANY WARRANTY; without even the implied warranty of
-// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-// GNU Lesser General Public License for more details.
-//
-// You should have received a copy of the GNU Lesser General Public License
-// along with the go-ethereum library. If not, see .
-
-package txfetcher
-
-import (
- "bytes"
- "fmt"
- "math/big"
- "math/rand"
- "time"
-
- "github.com/ethereum/go-ethereum/common"
- "github.com/ethereum/go-ethereum/common/mclock"
- "github.com/ethereum/go-ethereum/core/types"
- "github.com/ethereum/go-ethereum/eth/fetcher"
-)
-
-var (
- peers []string
- txs []*types.Transaction
-)
-
-func init() {
- // Random is nice, but we need it deterministic
- rand := rand.New(rand.NewSource(0x3a29))
-
- peers = make([]string, 10)
- for i := 0; i < len(peers); i++ {
- peers[i] = fmt.Sprintf("Peer #%d", i)
- }
- txs = make([]*types.Transaction, 65536) // We need to bump enough to hit all the limits
- for i := 0; i < len(txs); i++ {
- txs[i] = types.NewTransaction(rand.Uint64(), common.Address{byte(rand.Intn(256))}, new(big.Int), 0, new(big.Int), nil)
- }
-}
-
-func fuzz(input []byte) int {
- // Don't generate insanely large test cases, not much value in them
- if len(input) > 16*1024 {
- return 0
- }
- verbose := false
- r := bytes.NewReader(input)
-
- // Reduce the problem space for certain fuzz runs. Small tx space is better
- // for testing clashes and in general the fetcher, but we should still run
- // some tests with large spaces to hit potential issues on limits.
- limit, err := r.ReadByte()
- if err != nil {
- return 0
- }
- switch limit % 4 {
- case 0:
- txs = txs[:4]
- case 1:
- txs = txs[:256]
- case 2:
- txs = txs[:4096]
- case 3:
- // Full run
- }
- // Create a fetcher and hook into it's simulated fields
- clock := new(mclock.Simulated)
- rand := rand.New(rand.NewSource(0x3a29)) // Same used in package tests!!!
-
- f := fetcher.NewTxFetcherForTests(
- func(common.Hash) bool { return false },
- func(txs []*types.Transaction) []error {
- return make([]error, len(txs))
- },
- func(string, []common.Hash) error { return nil },
- nil,
- clock, rand,
- )
- f.Start()
- defer f.Stop()
-
- // Try to throw random junk at the fetcher
- for {
- // Read the next command and abort if we're done
- cmd, err := r.ReadByte()
- if err != nil {
- return 0
- }
- switch cmd % 4 {
- case 0:
- // Notify a new set of transactions:
- // Byte 1: Peer index to announce with
- // Byte 2: Number of hashes to announce
- // Byte 3-4, 5-6, etc: Transaction indices (2 byte) to announce
- peerIdx, err := r.ReadByte()
- if err != nil {
- return 0
- }
- peer := peers[int(peerIdx)%len(peers)]
-
- announceCnt, err := r.ReadByte()
- if err != nil {
- return 0
- }
- announce := int(announceCnt) % (2 * len(txs)) // No point in generating too many duplicates
-
- var (
- announceIdxs = make([]int, announce)
- announces = make([]common.Hash, announce)
- types = make([]byte, announce)
- sizes = make([]uint32, announce)
- )
- for i := 0; i < len(announces); i++ {
- annBuf := make([]byte, 2)
- if n, err := r.Read(annBuf); err != nil || n != 2 {
- return 0
- }
- announceIdxs[i] = (int(annBuf[0])*256 + int(annBuf[1])) % len(txs)
- announces[i] = txs[announceIdxs[i]].Hash()
- types[i] = txs[announceIdxs[i]].Type()
- sizes[i] = uint32(txs[announceIdxs[i]].Size())
- }
- if verbose {
- fmt.Println("Notify", peer, announceIdxs)
- }
- if err := f.Notify(peer, types, sizes, announces); err != nil {
- panic(err)
- }
-
- case 1:
- // Deliver a new set of transactions:
- // Byte 1: Peer index to announce with
- // Byte 2: Number of hashes to announce
- // Byte 3-4, 5-6, etc: Transaction indices (2 byte) to announce
- peerIdx, err := r.ReadByte()
- if err != nil {
- return 0
- }
- peer := peers[int(peerIdx)%len(peers)]
-
- deliverCnt, err := r.ReadByte()
- if err != nil {
- return 0
- }
- deliver := int(deliverCnt) % (2 * len(txs)) // No point in generating too many duplicates
-
- var (
- deliverIdxs = make([]int, deliver)
- deliveries = make([]*types.Transaction, deliver)
- )
- for i := 0; i < len(deliveries); i++ {
- deliverBuf := make([]byte, 2)
- if n, err := r.Read(deliverBuf); err != nil || n != 2 {
- return 0
- }
- deliverIdxs[i] = (int(deliverBuf[0])*256 + int(deliverBuf[1])) % len(txs)
- deliveries[i] = txs[deliverIdxs[i]]
- }
- directFlag, err := r.ReadByte()
- if err != nil {
- return 0
- }
- direct := (directFlag % 2) == 0
- if verbose {
- fmt.Println("Enqueue", peer, deliverIdxs, direct)
- }
- if err := f.Enqueue(peer, deliveries, direct); err != nil {
- panic(err)
- }
-
- case 2:
- // Drop a peer:
- // Byte 1: Peer index to drop
- peerIdx, err := r.ReadByte()
- if err != nil {
- return 0
- }
- peer := peers[int(peerIdx)%len(peers)]
- if verbose {
- fmt.Println("Drop", peer)
- }
- if err := f.Drop(peer); err != nil {
- panic(err)
- }
-
- case 3:
- // Move the simulated clock forward
- // Byte 1: 100ms increment to move forward
- tickCnt, err := r.ReadByte()
- if err != nil {
- return 0
- }
- tick := time.Duration(tickCnt) * 100 * time.Millisecond
- if verbose {
- fmt.Println("Sleep", tick)
- }
- clock.Run(tick)
- }
- }
-}
diff --git a/tests/fuzzers/txfetcher/txfetcher_test.go b/tests/fuzzers/txfetcher/txfetcher_test.go
deleted file mode 100644
index ac2e6b1c67..0000000000
--- a/tests/fuzzers/txfetcher/txfetcher_test.go
+++ /dev/null
@@ -1,25 +0,0 @@
-// Copyright 2023 The go-ethereum Authors
-// This file is part of the go-ethereum library.
-//
-// The go-ethereum library is free software: you can redistribute it and/or modify
-// it under the terms of the GNU Lesser General Public License as published by
-// the Free Software Foundation, either version 3 of the License, or
-// (at your option) any later version.
-//
-// The go-ethereum library is distributed in the hope that it will be useful,
-// but WITHOUT ANY WARRANTY; without even the implied warranty of
-// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-// GNU Lesser General Public License for more details.
-//
-// You should have received a copy of the GNU Lesser General Public License
-// along with the go-ethereum library. If not, see .
-
-package txfetcher
-
-import "testing"
-
-func Fuzz(f *testing.F) {
- f.Fuzz(func(t *testing.T, data []byte) {
- fuzz(data)
- })
-}