Documentation
¶
Overview ¶
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)
Index ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func NafDecomposition ¶
NafDecomposition gets the naf decomposition of a big number
func NextPowerOfTwo ¶ added in v0.5.0
NextPowerOfTwo(n) = 2^⌈log₂(n)⌉ or 2ᵏ where 2ᵏ⁻¹ < n ≤ 2ᵏ
func PrecomputeLattice ¶
PrecomputeLattice res such that res.V1, res.V2 are short vectors satisfying v11+v12.λ=v21+v22.λ=0[r]. cf https://www.iacr.org/archive/crypto2001/21390189.pdf
func SplitScalar ¶
SplitScalar outputs u,v such that u+vlambda=s[r]. The method is to view s as (s,0) in ZxZ, and find a close vector w of (s,0) in <l>, where l is a sub Z-module of ker((a,b) → a+b.λ[r]): then (u,v)=w-(s,0), and u+v.λ=s[r]. cf https://www.iacr.org/archive/crypto2001/21390189.pdf
Types ¶
type ID ¶
type ID uint16
ID represent a unique ID for a curve
const ( UNKNOWN ID = iota BN254 BLS12_377 BLS12_381 BLS24_315 BLS24_317 BW6_761 BW6_633 STARK_CURVE SECP256K1 GRUMPKIN )
do not modify the order of this enum
func IDFromString ¶ added in v0.13.0
IDFromString returns the ID corresponding to the string representation of the curve ID. It returns UNKNOWN if the string does not match any known curve ID.
func (ID) ScalarField ¶ added in v0.8.0
ScalarField returns the scalar field of the curve
type MultiExpConfig ¶ added in v0.5.0
type MultiExpConfig struct {
NbTasks int // go routines to be used in the multiexp. can be larger than num cpus.
}
MultiExpConfig enables to set optional configuration attribute to a call to MultiExp
Directories
¶
| Path | Synopsis |
|---|---|
|
Package bls12377 efficient elliptic curve, pairing and hash to curve implementation for bls12-377.
|
Package bls12377 efficient elliptic curve, pairing and hash to curve implementation for bls12-377. |
|
ecdsa
Package ecdsa provides ECDSA signature scheme on the bls12-377 curve.
|
Package ecdsa provides ECDSA signature scheme on the bls12-377 curve. |
|
fflonk
Package fflonk provides fflonk commitment, based on shplonk.
|
Package fflonk provides fflonk commitment, based on shplonk. |
|
fp
Package fp contains field arithmetic operations for modulus = 0x1ae3a4...000001.
|
Package fp contains field arithmetic operations for modulus = 0x1ae3a4...000001. |
|
fp/hash_to_field
Package htf provides hasher based on RFC 9380 Section 5.
|
Package htf provides hasher based on RFC 9380 Section 5. |
|
fr
Package fr contains field arithmetic operations for modulus = 0x12ab65...000001.
|
Package fr contains field arithmetic operations for modulus = 0x12ab65...000001. |
|
fr/fft
Package fft provides in-place discrete Fourier transform on powers-of-two subgroups of 𝔽ᵣˣ (the multiplicative group (ℤ/rℤ, x) ).
|
Package fft provides in-place discrete Fourier transform on powers-of-two subgroups of 𝔽ᵣˣ (the multiplicative group (ℤ/rℤ, x) ). |
|
fr/fri
Package fri provides the FRI (multiplicative) commitment scheme.
|
Package fri provides the FRI (multiplicative) commitment scheme. |
|
fr/hash_to_field
Package htf provides hasher based on RFC 9380 Section 5.
|
Package htf provides hasher based on RFC 9380 Section 5. |
|
fr/iop
Package iop provides an API to computations common to iop backends (permutation, quotient).
|
Package iop provides an API to computations common to iop backends (permutation, quotient). |
|
fr/mimc
Package mimc provides MiMC hash function using Miyaguchi–Preneel construction.
|
Package mimc provides MiMC hash function using Miyaguchi–Preneel construction. |
|
fr/pedersen
Package pedersen allows to compute and verify Pedersen vector commitments
|
Package pedersen allows to compute and verify Pedersen vector commitments |
|
fr/permutation
Package permutation provides an API to build permutation proofs.
|
Package permutation provides an API to build permutation proofs. |
|
fr/plookup
Package plookup provides an API to build plookup proofs.
|
Package plookup provides an API to build plookup proofs. |
|
fr/polynomial
Package polynomial provides polynomial methods and commitment schemes.
|
Package polynomial provides polynomial methods and commitment schemes. |
|
fr/poseidon2
Package poseidon2 implements the Poseidon2 permutation
|
Package poseidon2 implements the Poseidon2 permutation |
|
kzg
Package kzg provides a KZG commitment scheme.
|
Package kzg provides a KZG commitment scheme. |
|
mpcsetup
Package mpcsetup provides tools for multiparty setup ceremonies for various protocols, based on the MMPORPG paper https://eprint.iacr.org/2017/1050.pdf
|
Package mpcsetup provides tools for multiparty setup ceremonies for various protocols, based on the MMPORPG paper https://eprint.iacr.org/2017/1050.pdf |
|
shplonk
Package shplonk provides a SHPLONK commitment scheme, cf https://eprint.iacr.org/2020/081.pdf
|
Package shplonk provides a SHPLONK commitment scheme, cf https://eprint.iacr.org/2020/081.pdf |
|
twistededwards
Package twistededwards provides bls12-377's twisted edwards "companion curve" defined on fr.
|
Package twistededwards provides bls12-377's twisted edwards "companion curve" defined on fr. |
|
twistededwards/eddsa
Package eddsa provides EdDSA signature scheme on bls12-377's twisted edwards curve.
|
Package eddsa provides EdDSA signature scheme on bls12-377's twisted edwards curve. |
|
Package bls12381 efficient elliptic curve, pairing and hash to curve implementation for bls12-381.
|
Package bls12381 efficient elliptic curve, pairing and hash to curve implementation for bls12-381. |
|
bandersnatch
Package bandersnatch provides bls12-381's twisted edwards "companion curve" defined on fr.
|
Package bandersnatch provides bls12-381's twisted edwards "companion curve" defined on fr. |
|
bandersnatch/eddsa
Package eddsa provides EdDSA signature scheme on bls12-381's twisted edwards curve.
|
Package eddsa provides EdDSA signature scheme on bls12-381's twisted edwards curve. |
|
ecdsa
Package ecdsa provides ECDSA signature scheme on the bls12-381 curve.
|
Package ecdsa provides ECDSA signature scheme on the bls12-381 curve. |
|
fflonk
Package fflonk provides fflonk commitment, based on shplonk.
|
Package fflonk provides fflonk commitment, based on shplonk. |
|
fp
Package fp contains field arithmetic operations for modulus = 0x1a0111...ffaaab.
|
Package fp contains field arithmetic operations for modulus = 0x1a0111...ffaaab. |
|
fp/hash_to_field
Package htf provides hasher based on RFC 9380 Section 5.
|
Package htf provides hasher based on RFC 9380 Section 5. |
|
fr
Package fr contains field arithmetic operations for modulus = 0x73eda7...000001.
|
Package fr contains field arithmetic operations for modulus = 0x73eda7...000001. |
|
fr/fft
Package fft provides in-place discrete Fourier transform on powers-of-two subgroups of 𝔽ᵣˣ (the multiplicative group (ℤ/rℤ, x) ).
|
Package fft provides in-place discrete Fourier transform on powers-of-two subgroups of 𝔽ᵣˣ (the multiplicative group (ℤ/rℤ, x) ). |
|
fr/fri
Package fri provides the FRI (multiplicative) commitment scheme.
|
Package fri provides the FRI (multiplicative) commitment scheme. |
|
fr/hash_to_field
Package htf provides hasher based on RFC 9380 Section 5.
|
Package htf provides hasher based on RFC 9380 Section 5. |
|
fr/iop
Package iop provides an API to computations common to iop backends (permutation, quotient).
|
Package iop provides an API to computations common to iop backends (permutation, quotient). |
|
fr/mimc
Package mimc provides MiMC hash function using Miyaguchi–Preneel construction.
|
Package mimc provides MiMC hash function using Miyaguchi–Preneel construction. |
|
fr/pedersen
Package pedersen allows to compute and verify Pedersen vector commitments
|
Package pedersen allows to compute and verify Pedersen vector commitments |
|
fr/permutation
Package permutation provides an API to build permutation proofs.
|
Package permutation provides an API to build permutation proofs. |
|
fr/plookup
Package plookup provides an API to build plookup proofs.
|
Package plookup provides an API to build plookup proofs. |
|
fr/polynomial
Package polynomial provides polynomial methods and commitment schemes.
|
Package polynomial provides polynomial methods and commitment schemes. |
|
fr/poseidon2
Package poseidon2 implements the Poseidon2 permutation
|
Package poseidon2 implements the Poseidon2 permutation |
|
kzg
Package kzg provides a KZG commitment scheme.
|
Package kzg provides a KZG commitment scheme. |
|
mpcsetup
Package mpcsetup provides tools for multiparty setup ceremonies for various protocols, based on the MMPORPG paper https://eprint.iacr.org/2017/1050.pdf
|
Package mpcsetup provides tools for multiparty setup ceremonies for various protocols, based on the MMPORPG paper https://eprint.iacr.org/2017/1050.pdf |
|
shplonk
Package shplonk provides a SHPLONK commitment scheme, cf https://eprint.iacr.org/2020/081.pdf
|
Package shplonk provides a SHPLONK commitment scheme, cf https://eprint.iacr.org/2020/081.pdf |
|
twistededwards
Package twistededwards provides bls12-381's twisted edwards "companion curve" defined on fr.
|
Package twistededwards provides bls12-381's twisted edwards "companion curve" defined on fr. |
|
twistededwards/eddsa
Package eddsa provides EdDSA signature scheme on bls12-381's twisted edwards curve.
|
Package eddsa provides EdDSA signature scheme on bls12-381's twisted edwards curve. |
|
Package bls24315 efficient elliptic curve, pairing and hash to curve implementation for bls24-315.
|
Package bls24315 efficient elliptic curve, pairing and hash to curve implementation for bls24-315. |
|
ecdsa
Package ecdsa provides ECDSA signature scheme on the bls24-315 curve.
|
Package ecdsa provides ECDSA signature scheme on the bls24-315 curve. |
|
fflonk
Package fflonk provides fflonk commitment, based on shplonk.
|
Package fflonk provides fflonk commitment, based on shplonk. |
|
fp
Package fp contains field arithmetic operations for modulus = 0x4c23a0...300001.
|
Package fp contains field arithmetic operations for modulus = 0x4c23a0...300001. |
|
fp/hash_to_field
Package htf provides hasher based on RFC 9380 Section 5.
|
Package htf provides hasher based on RFC 9380 Section 5. |
|
fr
Package fr contains field arithmetic operations for modulus = 0x196dea...c00001.
|
Package fr contains field arithmetic operations for modulus = 0x196dea...c00001. |
|
fr/fft
Package fft provides in-place discrete Fourier transform on powers-of-two subgroups of 𝔽ᵣˣ (the multiplicative group (ℤ/rℤ, x) ).
|
Package fft provides in-place discrete Fourier transform on powers-of-two subgroups of 𝔽ᵣˣ (the multiplicative group (ℤ/rℤ, x) ). |
|
fr/fri
Package fri provides the FRI (multiplicative) commitment scheme.
|
Package fri provides the FRI (multiplicative) commitment scheme. |
|
fr/hash_to_field
Package htf provides hasher based on RFC 9380 Section 5.
|
Package htf provides hasher based on RFC 9380 Section 5. |
|
fr/iop
Package iop provides an API to computations common to iop backends (permutation, quotient).
|
Package iop provides an API to computations common to iop backends (permutation, quotient). |
|
fr/mimc
Package mimc provides MiMC hash function using Miyaguchi–Preneel construction.
|
Package mimc provides MiMC hash function using Miyaguchi–Preneel construction. |
|
fr/pedersen
Package pedersen allows to compute and verify Pedersen vector commitments
|
Package pedersen allows to compute and verify Pedersen vector commitments |
|
fr/permutation
Package permutation provides an API to build permutation proofs.
|
Package permutation provides an API to build permutation proofs. |
|
fr/plookup
Package plookup provides an API to build plookup proofs.
|
Package plookup provides an API to build plookup proofs. |
|
fr/polynomial
Package polynomial provides polynomial methods and commitment schemes.
|
Package polynomial provides polynomial methods and commitment schemes. |
|
fr/poseidon2
Package poseidon2 implements the Poseidon2 permutation
|
Package poseidon2 implements the Poseidon2 permutation |
|
kzg
Package kzg provides a KZG commitment scheme.
|
Package kzg provides a KZG commitment scheme. |
|
mpcsetup
Package mpcsetup provides tools for multiparty setup ceremonies for various protocols, based on the MMPORPG paper https://eprint.iacr.org/2017/1050.pdf
|
Package mpcsetup provides tools for multiparty setup ceremonies for various protocols, based on the MMPORPG paper https://eprint.iacr.org/2017/1050.pdf |
|
shplonk
Package shplonk provides a SHPLONK commitment scheme, cf https://eprint.iacr.org/2020/081.pdf
|
Package shplonk provides a SHPLONK commitment scheme, cf https://eprint.iacr.org/2020/081.pdf |
|
twistededwards
Package twistededwards provides bls24-315's twisted edwards "companion curve" defined on fr.
|
Package twistededwards provides bls24-315's twisted edwards "companion curve" defined on fr. |
|
twistededwards/eddsa
Package eddsa provides EdDSA signature scheme on bls24-315's twisted edwards curve.
|
Package eddsa provides EdDSA signature scheme on bls24-315's twisted edwards curve. |
|
Package bls24317 efficient elliptic curve, pairing and hash to curve implementation for bls24-317.
|
Package bls24317 efficient elliptic curve, pairing and hash to curve implementation for bls24-317. |
|
ecdsa
Package ecdsa provides ECDSA signature scheme on the bls24-317 curve.
|
Package ecdsa provides ECDSA signature scheme on the bls24-317 curve. |
|
fflonk
Package fflonk provides fflonk commitment, based on shplonk.
|
Package fflonk provides fflonk commitment, based on shplonk. |
|
fp
Package fp contains field arithmetic operations for modulus = 0x1058ca...ab2aab.
|
Package fp contains field arithmetic operations for modulus = 0x1058ca...ab2aab. |
|
fp/hash_to_field
Package htf provides hasher based on RFC 9380 Section 5.
|
Package htf provides hasher based on RFC 9380 Section 5. |
|
fr
Package fr contains field arithmetic operations for modulus = 0x443f91...000001.
|
Package fr contains field arithmetic operations for modulus = 0x443f91...000001. |
|
fr/fft
Package fft provides in-place discrete Fourier transform on powers-of-two subgroups of 𝔽ᵣˣ (the multiplicative group (ℤ/rℤ, x) ).
|
Package fft provides in-place discrete Fourier transform on powers-of-two subgroups of 𝔽ᵣˣ (the multiplicative group (ℤ/rℤ, x) ). |
|
fr/fri
Package fri provides the FRI (multiplicative) commitment scheme.
|
Package fri provides the FRI (multiplicative) commitment scheme. |
|
fr/hash_to_field
Package htf provides hasher based on RFC 9380 Section 5.
|
Package htf provides hasher based on RFC 9380 Section 5. |
|
fr/iop
Package iop provides an API to computations common to iop backends (permutation, quotient).
|
Package iop provides an API to computations common to iop backends (permutation, quotient). |
|
fr/mimc
Package mimc provides MiMC hash function using Miyaguchi–Preneel construction.
|
Package mimc provides MiMC hash function using Miyaguchi–Preneel construction. |
|
fr/pedersen
Package pedersen allows to compute and verify Pedersen vector commitments
|
Package pedersen allows to compute and verify Pedersen vector commitments |
|
fr/permutation
Package permutation provides an API to build permutation proofs.
|
Package permutation provides an API to build permutation proofs. |
|
fr/plookup
Package plookup provides an API to build plookup proofs.
|
Package plookup provides an API to build plookup proofs. |
|
fr/polynomial
Package polynomial provides polynomial methods and commitment schemes.
|
Package polynomial provides polynomial methods and commitment schemes. |
|
fr/poseidon2
Package poseidon2 implements the Poseidon2 permutation
|
Package poseidon2 implements the Poseidon2 permutation |
|
kzg
Package kzg provides a KZG commitment scheme.
|
Package kzg provides a KZG commitment scheme. |
|
mpcsetup
Package mpcsetup provides tools for multiparty setup ceremonies for various protocols, based on the MMPORPG paper https://eprint.iacr.org/2017/1050.pdf
|
Package mpcsetup provides tools for multiparty setup ceremonies for various protocols, based on the MMPORPG paper https://eprint.iacr.org/2017/1050.pdf |
|
shplonk
Package shplonk provides a SHPLONK commitment scheme, cf https://eprint.iacr.org/2020/081.pdf
|
Package shplonk provides a SHPLONK commitment scheme, cf https://eprint.iacr.org/2020/081.pdf |
|
twistededwards
Package twistededwards provides bls24-317's twisted edwards "companion curve" defined on fr.
|
Package twistededwards provides bls24-317's twisted edwards "companion curve" defined on fr. |
|
twistededwards/eddsa
Package eddsa provides EdDSA signature scheme on bls24-317's twisted edwards curve.
|
Package eddsa provides EdDSA signature scheme on bls24-317's twisted edwards curve. |
|
Package bn254 efficient elliptic curve, pairing and hash to curve implementation for bn254.
|
Package bn254 efficient elliptic curve, pairing and hash to curve implementation for bn254. |
|
ecdsa
Package ecdsa provides ECDSA signature scheme on the bn254 curve.
|
Package ecdsa provides ECDSA signature scheme on the bn254 curve. |
|
fflonk
Package fflonk provides fflonk commitment, based on shplonk.
|
Package fflonk provides fflonk commitment, based on shplonk. |
|
fp
Package fp contains field arithmetic operations for modulus = 0x30644e...7cfd47.
|
Package fp contains field arithmetic operations for modulus = 0x30644e...7cfd47. |
|
fp/hash_to_field
Package htf provides hasher based on RFC 9380 Section 5.
|
Package htf provides hasher based on RFC 9380 Section 5. |
|
fr
Package fr contains field arithmetic operations for modulus = 0x30644e...000001.
|
Package fr contains field arithmetic operations for modulus = 0x30644e...000001. |
|
fr/fft
Package fft provides in-place discrete Fourier transform on powers-of-two subgroups of 𝔽ᵣˣ (the multiplicative group (ℤ/rℤ, x) ).
|
Package fft provides in-place discrete Fourier transform on powers-of-two subgroups of 𝔽ᵣˣ (the multiplicative group (ℤ/rℤ, x) ). |
|
fr/fri
Package fri provides the FRI (multiplicative) commitment scheme.
|
Package fri provides the FRI (multiplicative) commitment scheme. |
|
fr/hash_to_field
Package htf provides hasher based on RFC 9380 Section 5.
|
Package htf provides hasher based on RFC 9380 Section 5. |
|
fr/iop
Package iop provides an API to computations common to iop backends (permutation, quotient).
|
Package iop provides an API to computations common to iop backends (permutation, quotient). |
|
fr/mimc
Package mimc provides MiMC hash function using Miyaguchi–Preneel construction.
|
Package mimc provides MiMC hash function using Miyaguchi–Preneel construction. |
|
fr/mimc/test_vectors
command
|
|
|
fr/pedersen
Package pedersen allows to compute and verify Pedersen vector commitments
|
Package pedersen allows to compute and verify Pedersen vector commitments |
|
fr/permutation
Package permutation provides an API to build permutation proofs.
|
Package permutation provides an API to build permutation proofs. |
|
fr/plookup
Package plookup provides an API to build plookup proofs.
|
Package plookup provides an API to build plookup proofs. |
|
fr/polynomial
Package polynomial provides polynomial methods and commitment schemes.
|
Package polynomial provides polynomial methods and commitment schemes. |
|
fr/poseidon2
Package poseidon2 implements the Poseidon2 permutation
|
Package poseidon2 implements the Poseidon2 permutation |
|
kzg
Package kzg provides a KZG commitment scheme.
|
Package kzg provides a KZG commitment scheme. |
|
mpcsetup
Package mpcsetup provides tools for multiparty setup ceremonies for various protocols, based on the MMPORPG paper https://eprint.iacr.org/2017/1050.pdf
|
Package mpcsetup provides tools for multiparty setup ceremonies for various protocols, based on the MMPORPG paper https://eprint.iacr.org/2017/1050.pdf |
|
shplonk
Package shplonk provides a SHPLONK commitment scheme, cf https://eprint.iacr.org/2020/081.pdf
|
Package shplonk provides a SHPLONK commitment scheme, cf https://eprint.iacr.org/2020/081.pdf |
|
twistededwards
Package twistededwards provides bn254's twisted edwards "companion curve" defined on fr.
|
Package twistededwards provides bn254's twisted edwards "companion curve" defined on fr. |
|
twistededwards/eddsa
Package eddsa provides EdDSA signature scheme on bn254's twisted edwards curve.
|
Package eddsa provides EdDSA signature scheme on bn254's twisted edwards curve. |
|
Package bw6633 efficient elliptic curve, pairing and hash to curve implementation for bw6-633.
|
Package bw6633 efficient elliptic curve, pairing and hash to curve implementation for bw6-633. |
|
ecdsa
Package ecdsa provides ECDSA signature scheme on the bw6-633 curve.
|
Package ecdsa provides ECDSA signature scheme on the bw6-633 curve. |
|
fflonk
Package fflonk provides fflonk commitment, based on shplonk.
|
Package fflonk provides fflonk commitment, based on shplonk. |
|
fp
Package fp contains field arithmetic operations for modulus = 0x126633...70000d.
|
Package fp contains field arithmetic operations for modulus = 0x126633...70000d. |
|
fp/hash_to_field
Package htf provides hasher based on RFC 9380 Section 5.
|
Package htf provides hasher based on RFC 9380 Section 5. |
|
fr
Package fr contains field arithmetic operations for modulus = 0x4c23a0...300001.
|
Package fr contains field arithmetic operations for modulus = 0x4c23a0...300001. |
|
fr/fft
Package fft provides in-place discrete Fourier transform on powers-of-two subgroups of 𝔽ᵣˣ (the multiplicative group (ℤ/rℤ, x) ).
|
Package fft provides in-place discrete Fourier transform on powers-of-two subgroups of 𝔽ᵣˣ (the multiplicative group (ℤ/rℤ, x) ). |
|
fr/fri
Package fri provides the FRI (multiplicative) commitment scheme.
|
Package fri provides the FRI (multiplicative) commitment scheme. |
|
fr/hash_to_field
Package htf provides hasher based on RFC 9380 Section 5.
|
Package htf provides hasher based on RFC 9380 Section 5. |
|
fr/iop
Package iop provides an API to computations common to iop backends (permutation, quotient).
|
Package iop provides an API to computations common to iop backends (permutation, quotient). |
|
fr/mimc
Package mimc provides MiMC hash function using Miyaguchi–Preneel construction.
|
Package mimc provides MiMC hash function using Miyaguchi–Preneel construction. |
|
fr/pedersen
Package pedersen allows to compute and verify Pedersen vector commitments
|
Package pedersen allows to compute and verify Pedersen vector commitments |
|
fr/permutation
Package permutation provides an API to build permutation proofs.
|
Package permutation provides an API to build permutation proofs. |
|
fr/plookup
Package plookup provides an API to build plookup proofs.
|
Package plookup provides an API to build plookup proofs. |
|
fr/polynomial
Package polynomial provides polynomial methods and commitment schemes.
|
Package polynomial provides polynomial methods and commitment schemes. |
|
fr/poseidon2
Package poseidon2 implements the Poseidon2 permutation
|
Package poseidon2 implements the Poseidon2 permutation |
|
kzg
Package kzg provides a KZG commitment scheme.
|
Package kzg provides a KZG commitment scheme. |
|
mpcsetup
Package mpcsetup provides tools for multiparty setup ceremonies for various protocols, based on the MMPORPG paper https://eprint.iacr.org/2017/1050.pdf
|
Package mpcsetup provides tools for multiparty setup ceremonies for various protocols, based on the MMPORPG paper https://eprint.iacr.org/2017/1050.pdf |
|
shplonk
Package shplonk provides a SHPLONK commitment scheme, cf https://eprint.iacr.org/2020/081.pdf
|
Package shplonk provides a SHPLONK commitment scheme, cf https://eprint.iacr.org/2020/081.pdf |
|
twistededwards
Package twistededwards provides bw6-633's twisted edwards "companion curve" defined on fr.
|
Package twistededwards provides bw6-633's twisted edwards "companion curve" defined on fr. |
|
twistededwards/eddsa
Package eddsa provides EdDSA signature scheme on bw6-633's twisted edwards curve.
|
Package eddsa provides EdDSA signature scheme on bw6-633's twisted edwards curve. |
|
Package bw6761 efficient elliptic curve, pairing and hash to curve implementation for bw6-761.
|
Package bw6761 efficient elliptic curve, pairing and hash to curve implementation for bw6-761. |
|
ecdsa
Package ecdsa provides ECDSA signature scheme on the bw6-761 curve.
|
Package ecdsa provides ECDSA signature scheme on the bw6-761 curve. |
|
fflonk
Package fflonk provides fflonk commitment, based on shplonk.
|
Package fflonk provides fflonk commitment, based on shplonk. |
|
fp
Package fp contains field arithmetic operations for modulus = 0x122e82...00008b.
|
Package fp contains field arithmetic operations for modulus = 0x122e82...00008b. |
|
fp/hash_to_field
Package htf provides hasher based on RFC 9380 Section 5.
|
Package htf provides hasher based on RFC 9380 Section 5. |
|
fr
Package fr contains field arithmetic operations for modulus = 0x1ae3a4...000001.
|
Package fr contains field arithmetic operations for modulus = 0x1ae3a4...000001. |
|
fr/fft
Package fft provides in-place discrete Fourier transform on powers-of-two subgroups of 𝔽ᵣˣ (the multiplicative group (ℤ/rℤ, x) ).
|
Package fft provides in-place discrete Fourier transform on powers-of-two subgroups of 𝔽ᵣˣ (the multiplicative group (ℤ/rℤ, x) ). |
|
fr/fri
Package fri provides the FRI (multiplicative) commitment scheme.
|
Package fri provides the FRI (multiplicative) commitment scheme. |
|
fr/hash_to_field
Package htf provides hasher based on RFC 9380 Section 5.
|
Package htf provides hasher based on RFC 9380 Section 5. |
|
fr/iop
Package iop provides an API to computations common to iop backends (permutation, quotient).
|
Package iop provides an API to computations common to iop backends (permutation, quotient). |
|
fr/mimc
Package mimc provides MiMC hash function using Miyaguchi–Preneel construction.
|
Package mimc provides MiMC hash function using Miyaguchi–Preneel construction. |
|
fr/pedersen
Package pedersen allows to compute and verify Pedersen vector commitments
|
Package pedersen allows to compute and verify Pedersen vector commitments |
|
fr/permutation
Package permutation provides an API to build permutation proofs.
|
Package permutation provides an API to build permutation proofs. |
|
fr/plookup
Package plookup provides an API to build plookup proofs.
|
Package plookup provides an API to build plookup proofs. |
|
fr/polynomial
Package polynomial provides polynomial methods and commitment schemes.
|
Package polynomial provides polynomial methods and commitment schemes. |
|
fr/poseidon2
Package poseidon2 implements the Poseidon2 permutation
|
Package poseidon2 implements the Poseidon2 permutation |
|
kzg
Package kzg provides a KZG commitment scheme.
|
Package kzg provides a KZG commitment scheme. |
|
mpcsetup
Package mpcsetup provides tools for multiparty setup ceremonies for various protocols, based on the MMPORPG paper https://eprint.iacr.org/2017/1050.pdf
|
Package mpcsetup provides tools for multiparty setup ceremonies for various protocols, based on the MMPORPG paper https://eprint.iacr.org/2017/1050.pdf |
|
shplonk
Package shplonk provides a SHPLONK commitment scheme, cf https://eprint.iacr.org/2020/081.pdf
|
Package shplonk provides a SHPLONK commitment scheme, cf https://eprint.iacr.org/2020/081.pdf |
|
twistededwards
Package twistededwards provides bw6-761's twisted edwards "companion curve" defined on fr.
|
Package twistededwards provides bw6-761's twisted edwards "companion curve" defined on fr. |
|
twistededwards/eddsa
Package eddsa provides EdDSA signature scheme on bw6-761's twisted edwards curve.
|
Package eddsa provides EdDSA signature scheme on bw6-761's twisted edwards curve. |
|
Package grumpkin efficient elliptic curve and hash to curve implementation for grumpkin.
|
Package grumpkin efficient elliptic curve and hash to curve implementation for grumpkin. |
|
ecdsa
Package ecdsa provides ECDSA signature scheme on the grumpkin curve.
|
Package ecdsa provides ECDSA signature scheme on the grumpkin curve. |
|
fp
Package fp contains field arithmetic operations for modulus = 0x30644e...000001.
|
Package fp contains field arithmetic operations for modulus = 0x30644e...000001. |
|
fp/hash_to_field
Package htf provides hasher based on RFC 9380 Section 5.
|
Package htf provides hasher based on RFC 9380 Section 5. |
|
fr
Package fr contains field arithmetic operations for modulus = 0x30644e...7cfd47.
|
Package fr contains field arithmetic operations for modulus = 0x30644e...7cfd47. |
|
fr/hash_to_field
Package htf provides hasher based on RFC 9380 Section 5.
|
Package htf provides hasher based on RFC 9380 Section 5. |
|
fr/mimc
Package mimc provides MiMC hash function using Miyaguchi–Preneel construction.
|
Package mimc provides MiMC hash function using Miyaguchi–Preneel construction. |
|
fr/polynomial
Package polynomial provides polynomial methods and commitment schemes.
|
Package polynomial provides polynomial methods and commitment schemes. |
|
fr/poseidon2
Package poseidon2 implements the Poseidon2 permutation
|
Package poseidon2 implements the Poseidon2 permutation |
|
Package secp256k1 efficient elliptic curve implementation for secp256k1.
|
Package secp256k1 efficient elliptic curve implementation for secp256k1. |
|
ecdsa
Package ecdsa provides ECDSA signature scheme on the secp256k1 curve.
|
Package ecdsa provides ECDSA signature scheme on the secp256k1 curve. |
|
fp
Package fp contains field arithmetic operations for modulus = 0xffffff...fffc2f.
|
Package fp contains field arithmetic operations for modulus = 0xffffff...fffc2f. |
|
fr
Package fr contains field arithmetic operations for modulus = 0xffffff...364141.
|
Package fr contains field arithmetic operations for modulus = 0xffffff...364141. |
|
Package starkcurve efficient elliptic curve implementation for stark_curve.
|
Package starkcurve efficient elliptic curve implementation for stark_curve. |
|
ecdsa
Package ecdsa provides ECDSA signature scheme on the stark-curve curve.
|
Package ecdsa provides ECDSA signature scheme on the stark-curve curve. |
|
fp
Package fp contains field arithmetic operations for modulus = 0x800000...000001.
|
Package fp contains field arithmetic operations for modulus = 0x800000...000001. |
|
fr
Package fr contains field arithmetic operations for modulus = 0x800000...c64d2f.
|
Package fr contains field arithmetic operations for modulus = 0x800000...c64d2f. |
|
Package twistededwards define unique identifier for twisted edwards curves implemented in gnark-crypto
|
Package twistededwards define unique identifier for twisted edwards curves implemented in gnark-crypto |