Files
mev-beta/vendor/github.com/consensys/gnark-crypto/ecc/ecc.go

38 lines
942 B
Go

// Copyright 2020-2025 Consensys Software Inc.
// Licensed under the Apache License, Version 2.0. See the LICENSE file for details.
// Package ecc provides bls12-381, bls12-377, bn254, bw6-761, bls24-315, bls24-317, bw6-633, secp256k1 and stark-curve elliptic curves implementation (+pairing).
//
// Also
//
// - Multi exponentiation
// - FFT
// - Polynomial commitment schemes
// - MiMC
// - twisted edwards "companion curves"
// - EdDSA (on the "companion" twisted edwards curves)
package ecc
// ID represent a unique ID for a curve
type ID uint16
// do not modify the order of this enum
const (
UNKNOWN ID = iota
BN254
BLS12_377
BLS12_381
BLS24_315
BLS24_317
BW6_761
BW6_633
STARK_CURVE
SECP256K1
GRUMPKIN
)
// MultiExpConfig enables to set optional configuration attribute to a call to MultiExp
type MultiExpConfig struct {
NbTasks int // go routines to be used in the multiexp. can be larger than num cpus.
}