mirror of
https://github.com/arnaucube/ark-curves-cherry-picked.git
synced 2026-01-11 08:21:33 +01:00
Add the ed25519 curve (#121)
* add ed25519 curve * changelog * curve info * fix * cleanup the script * Update ed25519/src/curves/mod.rs * Update ed25519/src/curves/mod.rs Co-authored-by: onewayfunc <onewayfunc@gmail.com>
This commit is contained in:
7
ed25519/src/fields/fq.rs
Normal file
7
ed25519/src/fields/fq.rs
Normal file
@@ -0,0 +1,7 @@
|
||||
use ark_ff::fields::{Fp256, MontBackend, MontConfig};
|
||||
|
||||
#[derive(MontConfig)]
|
||||
#[modulus = "57896044618658097711785492504343953926634992332820282019728792003956564819949"]
|
||||
#[generator = "2"]
|
||||
pub struct FqConfig;
|
||||
pub type Fq = Fp256<MontBackend<FqConfig, 4>>;
|
||||
7
ed25519/src/fields/fr.rs
Normal file
7
ed25519/src/fields/fr.rs
Normal file
@@ -0,0 +1,7 @@
|
||||
use ark_ff::fields::{Fp256, MontBackend, MontConfig};
|
||||
|
||||
#[derive(MontConfig)]
|
||||
#[modulus = "7237005577332262213973186563042994240857116359379907606001950938285454250989"]
|
||||
#[generator = "2"]
|
||||
pub struct FrConfig;
|
||||
pub type Fr = Fp256<MontBackend<FrConfig, 4>>;
|
||||
8
ed25519/src/fields/mod.rs
Normal file
8
ed25519/src/fields/mod.rs
Normal file
@@ -0,0 +1,8 @@
|
||||
mod fq;
|
||||
mod fr;
|
||||
|
||||
pub use fq::*;
|
||||
pub use fr::*;
|
||||
|
||||
#[cfg(test)]
|
||||
mod tests;
|
||||
5
ed25519/src/fields/tests.rs
Normal file
5
ed25519/src/fields/tests.rs
Normal file
@@ -0,0 +1,5 @@
|
||||
use crate::{Fq, Fr};
|
||||
use ark_algebra_test_templates::*;
|
||||
|
||||
test_field!(fr; Fr; mont_prime_field);
|
||||
test_field!(fq; Fq; mont_prime_field);
|
||||
Reference in New Issue
Block a user