tests/fuzzers: supply gnark multiexp config, fixes #26669 (#26670)

This change fixes a fuzzer which broke when we updated the gnark dependency earlier.
This commit is contained in:
Martin Holst Swende 2023-02-13 08:14:34 -05:00 committed by GitHub
parent 7d29fff415
commit 03585ed7a9
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

View File

@ -26,6 +26,7 @@ import (
"io" "io"
"math/big" "math/big"
"github.com/consensys/gnark-crypto/ecc"
gnark "github.com/consensys/gnark-crypto/ecc/bls12-381" 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/fp"
"github.com/consensys/gnark-crypto/ecc/bls12-381/fr" "github.com/consensys/gnark-crypto/ecc/bls12-381/fr"
@ -198,7 +199,7 @@ func FuzzCrossG1MultiExp(data []byte) int {
} }
gethScalars = append(gethScalars, s) gethScalars = append(gethScalars, s)
var gnarkScalar = &fr.Element{} var gnarkScalar = &fr.Element{}
gnarkScalar = gnarkScalar.SetBigInt(s).FromMont() gnarkScalar = gnarkScalar.SetBigInt(s)
gnarkScalars = append(gnarkScalars, *gnarkScalar) gnarkScalars = append(gnarkScalars, *gnarkScalar)
gethPoints = append(gethPoints, new(bls12381.PointG1).Set(kp1)) gethPoints = append(gethPoints, new(bls12381.PointG1).Set(kp1))
@ -217,7 +218,7 @@ func FuzzCrossG1MultiExp(data []byte) int {
// gnark multi exp // gnark multi exp
cp := new(gnark.G1Affine) cp := new(gnark.G1Affine)
cp.MultiExp(gnarkPoints, gnarkScalars) cp.MultiExp(gnarkPoints, gnarkScalars, ecc.MultiExpConfig{})
// compare result // compare result
if !(bytes.Equal(cp.Marshal(), g1.ToBytes(&kp))) { if !(bytes.Equal(cp.Marshal(), g1.ToBytes(&kp))) {