mirror of
https://github.com/arnaucube/ark-curves-cherry-picked.git
synced 2026-01-27 14:13:46 +01:00
Compare commits
7 Commits
ark-ed-on-
...
v0.3.0
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
d2c998736e | ||
|
|
ada1fdac07 | ||
|
|
8c795ec0cf | ||
|
|
9d232a7dcd | ||
|
|
4d6c49640c | ||
|
|
880a010f5e | ||
|
|
269fe97519 |
44
.github/workflows/ci.yml
vendored
44
.github/workflows/ci.yml
vendored
@@ -29,8 +29,8 @@ jobs:
|
||||
command: fmt
|
||||
args: --all -- --check
|
||||
|
||||
test:
|
||||
name: Test
|
||||
check:
|
||||
name: Check
|
||||
runs-on: ubuntu-latest
|
||||
env:
|
||||
RUSTFLAGS: -Dwarnings
|
||||
@@ -78,13 +78,39 @@ jobs:
|
||||
args: --all-features --examples --workspace --benches
|
||||
if: matrix.rust == 'nightly'
|
||||
|
||||
- name: Test
|
||||
uses: actions-rs/cargo@v1
|
||||
with:
|
||||
command: test
|
||||
args: "--workspace \
|
||||
--all-features \
|
||||
--exclude curve-benches"
|
||||
|
||||
|
||||
directories: # Job that list subdirectories
|
||||
name: List directories for parallelizing tests
|
||||
runs-on: ubuntu-latest
|
||||
outputs:
|
||||
dir: ${{ steps.set-dirs.outputs.dir }} # generate output name dir by using inner step output
|
||||
steps:
|
||||
- uses: actions/checkout@v2
|
||||
- id: set-dirs # Give it an id to handle to get step outputs in the outputs key above
|
||||
run: echo "::set-output name=dir::$(ls -d */ | jq -R -s -c 'split("\n")[:-1]')"
|
||||
# Define step output named dir base on ls command transformed to JSON thanks to jq
|
||||
test:
|
||||
name: Test
|
||||
runs-on: ubuntu-latest
|
||||
needs: [directories] # Depends on previous job
|
||||
strategy:
|
||||
matrix:
|
||||
dir: ${{fromJson(needs.directories.outputs.dir)}} # List matrix strategy from directories dynamically
|
||||
# rust:
|
||||
# - stable
|
||||
# - nightly
|
||||
exclude:
|
||||
- dir: scripts/
|
||||
- dir: curve-constraint-tests/
|
||||
- dir: curve-benches/
|
||||
steps:
|
||||
- name: Checkout
|
||||
uses: actions/checkout@v2
|
||||
- name: Run tests
|
||||
run: |
|
||||
cd ${{matrix.dir}}
|
||||
cargo test --all-features
|
||||
|
||||
docs:
|
||||
name: Check Documentation
|
||||
|
||||
32
CHANGELOG.md
32
CHANGELOG.md
@@ -1,9 +1,36 @@
|
||||
# CHANGELOG
|
||||
|
||||
## Pending
|
||||
|
||||
### Breaking changes
|
||||
|
||||
### Features
|
||||
|
||||
### Improvements
|
||||
|
||||
### Bug fixes
|
||||
|
||||
## v0.3.0
|
||||
|
||||
### Breaking changes
|
||||
|
||||
- [\#60](https://github.com/arkworks-rs/curves/pull/60) Change the scalar group generator of `Fr` of `bls12_377` Fr from `11` to `22`.
|
||||
- [\#61](https://github.com/arkworks-rs/curves/pull/61) Remove `ATE_LOOP_COUNT_IS_NEGATIVE` from BN254 curve parameter.
|
||||
|
||||
### Features
|
||||
|
||||
### Improvements
|
||||
|
||||
### Bug fixes
|
||||
|
||||
## v0.2.0
|
||||
|
||||
### Breaking changes
|
||||
|
||||
- Requires all crates from `arkworks-rs/algebra` to have version `v0.2.0` or greater.
|
||||
|
||||
### Features
|
||||
|
||||
- [\#3](https://github.com/arkworks-rs/curves/pull/3) Add constraints for
|
||||
`ark-bls12-377`,
|
||||
`ark-ed-on-bls12-377`,
|
||||
@@ -19,15 +46,18 @@
|
||||
`ark-mnt6-753`.
|
||||
- [\#7](https://github.com/arkworks-rs/curves/pull/7) Add benchmarks for Edwards curves.
|
||||
- [\#19](https://github.com/arkworks-rs/curves/pull/19) Change field constants to be provided as normal strings, instead of in Montgomery form.
|
||||
- [\#53](https://github.com/arkworks-rs/curves/pull/53) Add benchmarks for Pallas and Vesta curves.
|
||||
|
||||
### Improvements
|
||||
|
||||
- [\#42](https://github.com/arkworks-rs/curves/pull/42) Remove the dependency of `rand_xorshift`.
|
||||
|
||||
### Bug fixes
|
||||
|
||||
- [\#28](https://github.com/arkworks-rs/curves/pull/28), [\#49](https://github.com/arkworks-rs/curves/pull/49) Fix broken documentation links.
|
||||
- [\#38](https://github.com/arkworks-rs/curves/pull/38) Compile with `panic='abort'` in release mode, for safety of the library across FFI boundaries.
|
||||
- [\#45](https://github.com/arkworks-rs/curves/pull/45) Fix `ark-ed-on-mnt4-753`.
|
||||
|
||||
## v0.1.0
|
||||
|
||||
Initial Release
|
||||
Initial Release
|
||||
|
||||
@@ -1,27 +1,27 @@
|
||||
[package]
|
||||
name = "ark-bls12-377"
|
||||
version = "0.1.0"
|
||||
version = "0.3.0"
|
||||
authors = [ "arkworks contributors" ]
|
||||
description = "The BLS12-377 pairing-friendly elliptic curve"
|
||||
homepage = "https://arkworks.rs"
|
||||
repository = "https://github.com/arkworks-rs/algebra"
|
||||
documentation = "https://docs.rs/ark-bls12-377/"
|
||||
keywords = ["cryptography", "finite fields", "elliptic curves" ]
|
||||
keywords = ["cryptography", "finite-fields", "elliptic-curves" ]
|
||||
categories = ["cryptography"]
|
||||
include = ["Cargo.toml", "src", "README.md", "LICENSE-APACHE", "LICENSE-MIT"]
|
||||
license = "MIT/Apache-2.0"
|
||||
edition = "2018"
|
||||
|
||||
[dependencies]
|
||||
ark-ff = { git = "https://github.com/arkworks-rs/algebra", default-features = false }
|
||||
ark-ec = { git = "https://github.com/arkworks-rs/algebra", default-features = false }
|
||||
ark-r1cs-std = { git = "https://github.com/arkworks-rs/r1cs-std", default-features = false, optional = true }
|
||||
ark-std = { git = "https://github.com/arkworks-rs/utils", default-features = false }
|
||||
ark-ff = { version="^0.3.0", default-features = false }
|
||||
ark-ec = { version="^0.3.0", default-features = false }
|
||||
ark-r1cs-std = { version="^0.3.0", default-features = false, optional = true }
|
||||
ark-std = { version="^0.3.0", default-features = false }
|
||||
|
||||
[dev-dependencies]
|
||||
ark-relations = { git = "https://github.com/arkworks-rs/snark", default-features = false }
|
||||
ark-serialize = { git = "https://github.com/arkworks-rs/algebra", default-features = false }
|
||||
ark-algebra-test-templates = { git = "https://github.com/arkworks-rs/algebra", default-features = false }
|
||||
ark-relations = { version="^0.3.0", default-features = false }
|
||||
ark-serialize = { version="^0.3.0", default-features = false }
|
||||
ark-algebra-test-templates = { version="^0.3.0", default-features = false }
|
||||
ark-curve-constraint-tests = { path = "../curve-constraint-tests", default-features = false }
|
||||
|
||||
[features]
|
||||
|
||||
@@ -1,3 +1,24 @@
|
||||
///! Bls12-377 scalar field.
|
||||
///
|
||||
/// Roots of unity computed from modulus and R using this sage code:
|
||||
///
|
||||
/// ```ignore
|
||||
/// q = 8444461749428370424248824938781546531375899335154063827935233455917409239041
|
||||
/// R = 6014086494747379908336260804527802945383293308637734276299549080986809532403 # Montgomery R
|
||||
/// s = 47
|
||||
/// o = q - 1
|
||||
/// F = GF(q)
|
||||
/// g = F.multiplicative_generator()
|
||||
/// g = F.multiplicative_generator()
|
||||
/// assert g.multiplicative_order() == o
|
||||
/// g2 = g ** (o/2**s)
|
||||
/// assert g2.multiplicative_order() == 2**s
|
||||
/// def into_chunks(val, width, n):
|
||||
/// return [int(int(val) // (2 ** (width * i)) % 2 ** width) for i in range(n)]
|
||||
/// print("Gen: ", g * R % q)
|
||||
/// print("Gen: ", into_chunks(g * R % q, 64, 4))
|
||||
/// print("2-adic gen: ", into_chunks(g2 * R % q, 64, 4))
|
||||
/// ```
|
||||
use ark_ff::{biginteger::BigInteger256 as BigInteger, fields::*};
|
||||
|
||||
pub type Fr = Fp256<FrParameters>;
|
||||
@@ -12,10 +33,10 @@ impl FftParameters for FrParameters {
|
||||
|
||||
#[rustfmt::skip]
|
||||
const TWO_ADIC_ROOT_OF_UNITY: BigInteger = BigInteger([
|
||||
0x3c3d3ca739381fb2,
|
||||
0x9a14cda3ec99772b,
|
||||
0xd7aacc7c59724826,
|
||||
0xd1ba211c5cc349c,
|
||||
12646347781564978760u64,
|
||||
6783048705277173164u64,
|
||||
268534165941069093u64,
|
||||
1121515446318641358u64,
|
||||
]);
|
||||
}
|
||||
impl FpParameters for FrParameters {
|
||||
@@ -53,15 +74,15 @@ impl FpParameters for FrParameters {
|
||||
|
||||
const INV: u64 = 725501752471715839u64;
|
||||
|
||||
/// GENERATOR = 11
|
||||
/// GENERATOR = 22
|
||||
/// Encoded in Montgomery form, so the value is
|
||||
/// (11 * R) % q = 7043719196222586021957094278335006679584931048936630243748405699433040183146
|
||||
/// (22 * R) % q = 5642976643016801619665363617888466827793962762719196659561577942948671127251
|
||||
#[rustfmt::skip]
|
||||
const GENERATOR: BigInteger = BigInteger([
|
||||
1855201571499933546u64,
|
||||
8511318076631809892u64,
|
||||
6222514765367795509u64,
|
||||
1122129207579058019u64,
|
||||
2984901390528151251u64,
|
||||
10561528701063790279u64,
|
||||
5476750214495080041u64,
|
||||
898978044469942640u64,
|
||||
]);
|
||||
|
||||
/// (r - 1)/2 =
|
||||
|
||||
@@ -1,25 +1,25 @@
|
||||
[package]
|
||||
name = "ark-bls12-381"
|
||||
version = "0.1.0"
|
||||
version = "0.3.0"
|
||||
authors = [ "arkworks contributors" ]
|
||||
description = "The BLS12-381 pairing-friendly elliptic curve"
|
||||
homepage = "https://arkworks.rs"
|
||||
repository = "https://github.com/arkworks-rs/algebra"
|
||||
documentation = "https://docs.rs/ark-bls12-381/"
|
||||
keywords = ["cryptography", "finite fields", "elliptic curves" ]
|
||||
keywords = ["cryptography", "finite-fields", "elliptic-curves" ]
|
||||
categories = ["cryptography"]
|
||||
include = ["Cargo.toml", "src", "README.md", "LICENSE-APACHE", "LICENSE-MIT"]
|
||||
license = "MIT/Apache-2.0"
|
||||
edition = "2018"
|
||||
|
||||
[dependencies]
|
||||
ark-ff = { git = "https://github.com/arkworks-rs/algebra", default-features = false }
|
||||
ark-ec = { git = "https://github.com/arkworks-rs/algebra", default-features = false }
|
||||
ark-std = { git = "https://github.com/arkworks-rs/utils", default-features = false }
|
||||
ark-ff = { version="^0.3.0", default-features = false }
|
||||
ark-ec = { version="^0.3.0", default-features = false }
|
||||
ark-std = { version="^0.3.0", default-features = false }
|
||||
|
||||
[dev-dependencies]
|
||||
ark-serialize = { git = "https://github.com/arkworks-rs/algebra", default-features = false }
|
||||
ark-algebra-test-templates = { git = "https://github.com/arkworks-rs/algebra", default-features = false }
|
||||
ark-serialize = { version="^0.3.0", default-features = false }
|
||||
ark-algebra-test-templates = { version="^0.3.0", default-features = false }
|
||||
|
||||
[features]
|
||||
default = [ "curve" ]
|
||||
|
||||
@@ -1,25 +1,25 @@
|
||||
[package]
|
||||
name = "ark-bn254"
|
||||
version = "0.1.0"
|
||||
version = "0.3.0"
|
||||
authors = [ "arkworks contributors" ]
|
||||
description = "The BN254 pairing-friendly elliptic curve"
|
||||
homepage = "https://arkworks.rs"
|
||||
repository = "https://github.com/arkworks-rs/algebra"
|
||||
documentation = "https://docs.rs/ark-bn254/"
|
||||
keywords = ["cryptography", "finite fields", "elliptic curves" ]
|
||||
keywords = ["cryptography", "finite-fields", "elliptic-curves" ]
|
||||
categories = ["cryptography"]
|
||||
include = ["Cargo.toml", "src", "README.md", "LICENSE-APACHE", "LICENSE-MIT"]
|
||||
license = "MIT/Apache-2.0"
|
||||
edition = "2018"
|
||||
|
||||
[dependencies]
|
||||
ark-ff = { git = "https://github.com/arkworks-rs/algebra", default-features = false }
|
||||
ark-ec = { git = "https://github.com/arkworks-rs/algebra", default-features = false }
|
||||
ark-std = { git = "https://github.com/arkworks-rs/utils", default-features = false }
|
||||
ark-ff = { version="^0.3.0", default-features = false }
|
||||
ark-ec = { version="^0.3.0", default-features = false }
|
||||
ark-std = { version="^0.3.0", default-features = false }
|
||||
|
||||
[dev-dependencies]
|
||||
ark-serialize = { git = "https://github.com/arkworks-rs/algebra", default-features = false }
|
||||
ark-algebra-test-templates = { git = "https://github.com/arkworks-rs/algebra", default-features = false }
|
||||
ark-serialize = { version="^0.3.0", default-features = false }
|
||||
ark-algebra-test-templates = { version="^0.3.0", default-features = false }
|
||||
|
||||
[features]
|
||||
default = [ "curve" ]
|
||||
|
||||
@@ -21,8 +21,6 @@ impl BnParameters for Parameters {
|
||||
0, 1, 1, 1, 0, 0, -1, 0, 0, 1, 0, 0, 0, 0, 0, -1, 0, 0, 1, 1, 0, 0, -1, 0, 0, 0, 1, 1, 0,
|
||||
-1, 0, 0, 1, 0, 1, 1,
|
||||
];
|
||||
/// `ate_loop_count` is positive.
|
||||
const ATE_LOOP_COUNT_IS_NEGATIVE: bool = false;
|
||||
|
||||
const TWIST_MUL_BY_Q_X: Fq2 = field_new!(
|
||||
Fq2,
|
||||
|
||||
@@ -19,7 +19,7 @@ impl FftParameters for FqParameters {
|
||||
]);
|
||||
}
|
||||
impl FpParameters for FqParameters {
|
||||
/// MODULUS = 258664426012969094010652733694893533536393512754914660539884262666720468348340822774968888139573360124440321458177
|
||||
/// MODULUS = 21888242871839275222246405745257275088696311157297823662689037894645226208583
|
||||
#[rustfmt::skip]
|
||||
const MODULUS: BigInteger = BigInteger([
|
||||
0x3c208c16d87cfd47,
|
||||
@@ -82,7 +82,7 @@ impl FpParameters for FqParameters {
|
||||
]);
|
||||
|
||||
// (T - 1) // 2 =
|
||||
// 1837921289030710838195067919506396475074392872918698035817074744121558668640693829665401097909504529
|
||||
// 5472060717959818805561601436314318772174077789324455915672259473661306552145
|
||||
#[rustfmt::skip]
|
||||
const T_MINUS_ONE_DIV_TWO: BigInteger = BigInteger([
|
||||
0x4f082305b61f3f51,
|
||||
|
||||
@@ -34,6 +34,8 @@ impl FpParameters for FrParameters {
|
||||
|
||||
const REPR_SHAVE_BITS: u32 = 2;
|
||||
|
||||
/// R = pow(2, 320) % MODULUS
|
||||
/// = 6350874878119819312338956282401532410528162663560392320966563075034087161851
|
||||
#[rustfmt::skip]
|
||||
const R: BigInteger = BigInteger([
|
||||
12436184717236109307u64,
|
||||
@@ -42,6 +44,8 @@ impl FpParameters for FrParameters {
|
||||
1011752739694698287u64,
|
||||
]);
|
||||
|
||||
/// R2 = R * R % MODULUS
|
||||
/// = 944936681149208446651664254269745548490766851729442924617792859073125903783
|
||||
#[rustfmt::skip]
|
||||
const R2: BigInteger = BigInteger([
|
||||
1997599621687373223u64,
|
||||
@@ -50,9 +54,10 @@ impl FpParameters for FrParameters {
|
||||
150537098327114917u64,
|
||||
]);
|
||||
|
||||
/// INV = (-MODULUS) ^ {-1} % pow(2, 64) = 14042775128853446655
|
||||
const INV: u64 = 14042775128853446655u64;
|
||||
|
||||
// GENERATOR = 5
|
||||
/// GENERATOR = 5
|
||||
#[rustfmt::skip]
|
||||
const GENERATOR: BigInteger = BigInteger([
|
||||
1949230679015292902u64,
|
||||
@@ -61,7 +66,7 @@ impl FpParameters for FrParameters {
|
||||
1571765431670520771u64,
|
||||
]);
|
||||
|
||||
/// (r - 1)/2 =
|
||||
/// (MODULUS - 1)/2 =
|
||||
/// 10944121435919637611123202872628637544274182200208017171849102093287904247808
|
||||
#[rustfmt::skip]
|
||||
const MODULUS_MINUS_ONE_DIV_TWO: BigInteger = BigInteger([
|
||||
@@ -73,7 +78,7 @@ impl FpParameters for FrParameters {
|
||||
|
||||
// T and T_MINUS_ONE_DIV_TWO, where r - 1 = 2^s * t
|
||||
|
||||
/// t = (r - 1) / 2^s =
|
||||
/// T = (MODULUS - 1) / 2^s =
|
||||
/// 81540058820840996586704275553141814055101440848469862132140264610111
|
||||
#[rustfmt::skip]
|
||||
const T: BigInteger = BigInteger([
|
||||
@@ -83,7 +88,7 @@ impl FpParameters for FrParameters {
|
||||
0x30644e72e,
|
||||
]);
|
||||
|
||||
/// (t - 1) / 2 =
|
||||
/// (T - 1) / 2 =
|
||||
/// 40770029410420498293352137776570907027550720424234931066070132305055
|
||||
#[rustfmt::skip]
|
||||
const T_MINUS_ONE_DIV_TWO: BigInteger = BigInteger([
|
||||
|
||||
@@ -26,7 +26,7 @@
|
||||
//! * valuation(r - 1, 2) = 28
|
||||
//! * G1 curve equation: y^2 = x^3 + 3
|
||||
//! * G2 curve equation: y^2 = x^3 + B, where
|
||||
//! * B = 3/(u+9) where Fq2\[u\]=Fq/u+1
|
||||
//! * B = 3/(u+9) where Fq2 is represented as Fq\[u\]/(u^2+1)
|
||||
//! = Fq2(19485874751759354771024239261021720505790618469301721065564631296452457478373, 266929791119991161246907387137283842545076965332900288569378510910307636690)
|
||||
|
||||
#[cfg(feature = "curve")]
|
||||
|
||||
@@ -1,26 +1,26 @@
|
||||
[package]
|
||||
name = "ark-bw6-761"
|
||||
version = "0.1.0"
|
||||
version = "0.3.0"
|
||||
authors = [ "arkworks contributors" ]
|
||||
description = "The BW6-761 pairing-friendly elliptic curve"
|
||||
homepage = "https://arkworks.rs"
|
||||
repository = "https://github.com/arkworks-rs/algebra"
|
||||
documentation = "https://docs.rs/ark-bw6-761/"
|
||||
keywords = ["cryptography", "finite fields", "elliptic curves" ]
|
||||
keywords = ["cryptography", "finite-fields", "elliptic-curves" ]
|
||||
categories = ["cryptography"]
|
||||
include = ["Cargo.toml", "src", "README.md", "LICENSE-APACHE", "LICENSE-MIT"]
|
||||
license = "MIT/Apache-2.0"
|
||||
edition = "2018"
|
||||
|
||||
[dependencies]
|
||||
ark-ff = { git = "https://github.com/arkworks-rs/algebra", default-features = false }
|
||||
ark-ec = { git = "https://github.com/arkworks-rs/algebra", default-features = false }
|
||||
ark-std = { git = "https://github.com/arkworks-rs/utils", default-features = false }
|
||||
ark-bls12-377 = { path = "../bls12_377", default-features = false, features = [ "base_field" ] }
|
||||
ark-ff = { version="^0.3.0", default-features = false }
|
||||
ark-ec = { version="^0.3.0", default-features = false }
|
||||
ark-std = { version="^0.3.0", default-features = false }
|
||||
ark-bls12-377 = { version="^0.3.0", path = "../bls12_377", default-features = false, features = [ "base_field" ] }
|
||||
|
||||
[dev-dependencies]
|
||||
ark-serialize = { git = "https://github.com/arkworks-rs/algebra", default-features = false }
|
||||
ark-algebra-test-templates = { git = "https://github.com/arkworks-rs/algebra", default-features = false }
|
||||
ark-serialize = { version="^0.3.0", default-features = false }
|
||||
ark-algebra-test-templates = { version="^0.3.0", default-features = false }
|
||||
|
||||
[features]
|
||||
default = []
|
||||
|
||||
@@ -1,26 +1,26 @@
|
||||
[package]
|
||||
name = "ark-cp6-782"
|
||||
version = "0.1.0"
|
||||
version = "0.3.0"
|
||||
authors = [ "arkworks contributors" ]
|
||||
description = "The CP6-782 pairing-friendly elliptic curve"
|
||||
homepage = "https://arkworks.rs"
|
||||
repository = "https://github.com/arkworks-rs/algebra"
|
||||
documentation = "https://docs.rs/ark-cp6-782/"
|
||||
keywords = ["cryptography", "finite fields", "elliptic curves" ]
|
||||
keywords = ["cryptography", "finite-fields", "elliptic-curves" ]
|
||||
categories = ["cryptography"]
|
||||
include = ["Cargo.toml", "src", "README.md", "LICENSE-APACHE", "LICENSE-MIT"]
|
||||
license = "MIT/Apache-2.0"
|
||||
edition = "2018"
|
||||
|
||||
[dependencies]
|
||||
ark-ff = { git = "https://github.com/arkworks-rs/algebra", default-features = false }
|
||||
ark-ec = { git = "https://github.com/arkworks-rs/algebra", default-features = false }
|
||||
ark-std = { git = "https://github.com/arkworks-rs/utils", default-features = false }
|
||||
ark-bls12-377 = { path = "../bls12_377", default-features = false, features = [ "base_field" ] }
|
||||
ark-ff = { version = "^0.3.0", default-features = false }
|
||||
ark-ec = { version = "^0.3.0", default-features = false }
|
||||
ark-std = { version = "^0.3.0", default-features = false }
|
||||
ark-bls12-377 = { version = "^0.3.0", path = "../bls12_377", default-features = false, features = [ "base_field" ] }
|
||||
|
||||
[dev-dependencies]
|
||||
ark-serialize = { git = "https://github.com/arkworks-rs/algebra", default-features = false }
|
||||
ark-algebra-test-templates = { git = "https://github.com/arkworks-rs/algebra", default-features = false }
|
||||
ark-serialize = { version = "^0.3.0", default-features = false }
|
||||
ark-algebra-test-templates = { version = "^0.3.0", default-features = false }
|
||||
|
||||
[features]
|
||||
default = []
|
||||
|
||||
@@ -1,19 +1,20 @@
|
||||
[package]
|
||||
name = "ark-curve-benches"
|
||||
version = "0.1.1-alpha.0"
|
||||
version = "0.3.0"
|
||||
authors = [
|
||||
"Sean Bowe",
|
||||
"Alessandro Chiesa",
|
||||
"Matthew Green",
|
||||
"Ian Miers",
|
||||
"Pratyush Mishra",
|
||||
"Howard Wu"
|
||||
"Howard Wu",
|
||||
"Daira Hopwood"
|
||||
]
|
||||
description = "A benchmark library for finite fields and elliptic curves"
|
||||
homepage = "https://arkworks.rs"
|
||||
repository = "https://github.com/arkworks-rs/algebra"
|
||||
documentation = "https://docs.rs/algebra/"
|
||||
keywords = ["cryptography", "finite fields", "elliptic curves", "pairing"]
|
||||
keywords = ["cryptography", "finite-fields", "elliptic-curves", "pairing"]
|
||||
categories = ["cryptography"]
|
||||
include = ["Cargo.toml", "src", "README.md", "LICENSE-APACHE", "LICENSE-MIT"]
|
||||
license = "MIT/Apache-2.0"
|
||||
@@ -27,10 +28,10 @@ build = "build.rs"
|
||||
bencher = { version = "0.1.5" }
|
||||
|
||||
[dev-dependencies]
|
||||
ark-std = { git = "https://github.com/arkworks-rs/utils", default-features = false }
|
||||
ark-ec = { git = "https://github.com/arkworks-rs/algebra", default-features = false }
|
||||
ark-ff = { git = "https://github.com/arkworks-rs/algebra", default-features = false }
|
||||
ark-serialize = { git = "https://github.com/arkworks-rs/algebra", default-features = false }
|
||||
ark-std = { version = "^0.3.0", default-features = false }
|
||||
ark-ec = { version = "^0.3.0", default-features = false }
|
||||
ark-ff = { version = "^0.3.0", default-features = false }
|
||||
ark-serialize = { version = "^0.3.0", default-features = false }
|
||||
|
||||
ark-mnt4-298 = { path = "../mnt4_298" }
|
||||
ark-mnt6-298 = { path = "../mnt6_298" }
|
||||
@@ -42,6 +43,8 @@ ark-bls12-381 = { path = "../bls12_381" }
|
||||
ark-ed-on-bls12-381 = { path = "../ed_on_bls12_381" }
|
||||
ark-bw6-761 = { path = "../bw6_761" }
|
||||
ark-cp6-782 = { path = "../cp6_782" }
|
||||
ark-pallas = { path = "../pallas" }
|
||||
ark-vesta = { path = "../vesta" }
|
||||
|
||||
[features]
|
||||
asm = [ "ark-ff/asm"]
|
||||
@@ -100,3 +103,13 @@ harness = false
|
||||
name = "mnt6_753"
|
||||
path = "benches/mnt6_753.rs"
|
||||
harness = false
|
||||
|
||||
[[bench]]
|
||||
name = "pallas"
|
||||
path = "benches/pallas.rs"
|
||||
harness = false
|
||||
|
||||
[[bench]]
|
||||
name = "vesta"
|
||||
path = "benches/vesta.rs"
|
||||
harness = false
|
||||
|
||||
19
curve-benches/benches/pallas.rs
Normal file
19
curve-benches/benches/pallas.rs
Normal file
@@ -0,0 +1,19 @@
|
||||
use ark_curve_benches::*;
|
||||
use ark_std::ops::{AddAssign, MulAssign, SubAssign};
|
||||
|
||||
use ark_ec::ProjectiveCurve;
|
||||
use ark_ff::{
|
||||
biginteger::{BigInteger256 as FrRepr, BigInteger256 as FqRepr},
|
||||
BigInteger, Field, PrimeField, SquareRootField, UniformRand,
|
||||
};
|
||||
use ark_pallas::{fq::Fq, fr::Fr, Affine as GAffine, Projective as G};
|
||||
|
||||
mod g {
|
||||
use super::*;
|
||||
ec_bench!(G, GAffine);
|
||||
}
|
||||
|
||||
f_bench!(Fq, Fq, FqRepr, FqRepr, fq);
|
||||
f_bench!(Fr, Fr, FrRepr, FrRepr, fr);
|
||||
|
||||
bencher::benchmark_main!(fq, fr, g::group_ops);
|
||||
19
curve-benches/benches/vesta.rs
Normal file
19
curve-benches/benches/vesta.rs
Normal file
@@ -0,0 +1,19 @@
|
||||
use ark_curve_benches::*;
|
||||
use ark_std::ops::{AddAssign, MulAssign, SubAssign};
|
||||
|
||||
use ark_ec::ProjectiveCurve;
|
||||
use ark_ff::{
|
||||
biginteger::{BigInteger256 as FrRepr, BigInteger256 as FqRepr},
|
||||
BigInteger, Field, PrimeField, SquareRootField, UniformRand,
|
||||
};
|
||||
use ark_vesta::{fq::Fq, fr::Fr, Affine as GAffine, Projective as G};
|
||||
|
||||
mod g {
|
||||
use super::*;
|
||||
ec_bench!(G, GAffine);
|
||||
}
|
||||
|
||||
f_bench!(Fq, Fq, FqRepr, FqRepr, fq);
|
||||
f_bench!(Fr, Fr, FrRepr, FrRepr, fr);
|
||||
|
||||
bencher::benchmark_main!(fq, fr, g::group_ops);
|
||||
@@ -1,24 +1,24 @@
|
||||
[package]
|
||||
name = "ark-curve-constraint-tests"
|
||||
version = "0.1.0"
|
||||
version = "0.3.0"
|
||||
authors = [ "arkworks contributors" ]
|
||||
description = "A library for testing constraints for finite fields, elliptic curves, and pairings"
|
||||
homepage = "https://arkworks.rs"
|
||||
repository = "https://github.com/arkworks-rs/curves"
|
||||
documentation = "https://docs.rs/ark-curve-constraint-tests/"
|
||||
keywords = ["cryptography", "finite fields", "elliptic curves", "r1cs" ]
|
||||
keywords = ["cryptography", "finite-fields", "elliptic-curves", "r1cs" ]
|
||||
categories = ["cryptography"]
|
||||
include = ["Cargo.toml", "src", "README.md", "LICENSE-APACHE", "LICENSE-MIT"]
|
||||
license = "MIT/Apache-2.0"
|
||||
edition = "2018"
|
||||
|
||||
[dependencies]
|
||||
ark-std = { git = "https://github.com/arkworks-rs/utils", default-features = false }
|
||||
ark-serialize = { git = "https://github.com/arkworks-rs/algebra", default-features = false }
|
||||
ark-ff = { git = "https://github.com/arkworks-rs/algebra", default-features = false }
|
||||
ark-relations = { git = "https://github.com/arkworks-rs/snark", default-features = false }
|
||||
ark-r1cs-std = { git = "https://github.com/arkworks-rs/r1cs-std", default-features = false }
|
||||
ark-ec = { git = "https://github.com/arkworks-rs/algebra", default-features = false }
|
||||
ark-std = { version = "^0.3.0", default-features = false }
|
||||
ark-serialize = { version = "^0.3.0", default-features = false }
|
||||
ark-ff = { version = "^0.3.0", default-features = false }
|
||||
ark-relations = { version = "^0.3.0", default-features = false }
|
||||
ark-r1cs-std = { version = "^0.3.0", default-features = false }
|
||||
ark-ec = { version = "^0.3.0", default-features = false }
|
||||
|
||||
[features]
|
||||
default = []
|
||||
|
||||
@@ -1,28 +1,28 @@
|
||||
[package]
|
||||
name = "ark-ed-on-bls12-377"
|
||||
version = "0.1.0"
|
||||
version = "0.3.0"
|
||||
authors = [ "arkworks contributors" ]
|
||||
description = "A Twisted Edwards curve defined over the scalar field of the BLS12-377 curve"
|
||||
homepage = "https://arkworks.rs"
|
||||
repository = "https://github.com/arkworks-rs/algebra"
|
||||
documentation = "https://docs.rs/ark-ed-on-bls12-377/"
|
||||
keywords = ["cryptography", "finite fields", "elliptic curves" ]
|
||||
keywords = ["cryptography", "finite-fields", "elliptic-curves" ]
|
||||
categories = ["cryptography"]
|
||||
include = ["Cargo.toml", "src", "README.md", "LICENSE-APACHE", "LICENSE-MIT"]
|
||||
license = "MIT/Apache-2.0"
|
||||
edition = "2018"
|
||||
|
||||
[dependencies]
|
||||
ark-ff = { git = "https://github.com/arkworks-rs/algebra", default-features = false }
|
||||
ark-ec = { git = "https://github.com/arkworks-rs/algebra", default-features = false }
|
||||
ark-std = { git = "https://github.com/arkworks-rs/utils", default-features = false }
|
||||
ark-r1cs-std = { git = "https://github.com/arkworks-rs/r1cs-std", default-features = false, optional = true }
|
||||
ark-bls12-377 = { path = "../bls12_377", default-features = false, features = [ "scalar_field" ] }
|
||||
ark-ff = { version = "^0.3.0", default-features = false }
|
||||
ark-ec = { version = "^0.3.0", default-features = false }
|
||||
ark-std = { version = "^0.3.0", default-features = false }
|
||||
ark-r1cs-std = { version = "^0.3.0", default-features = false, optional = true }
|
||||
ark-bls12-377 = { version = "^0.3.0", path = "../bls12_377", default-features = false, features = [ "scalar_field" ] }
|
||||
|
||||
[dev-dependencies]
|
||||
ark-relations = { git = "https://github.com/arkworks-rs/snark", default-features = false }
|
||||
ark-serialize = { git = "https://github.com/arkworks-rs/algebra", default-features = false }
|
||||
ark-algebra-test-templates = { git = "https://github.com/arkworks-rs/algebra", default-features = false }
|
||||
ark-relations = { version = "^0.3.0", default-features = false }
|
||||
ark-serialize = { version = "^0.3.0", default-features = false }
|
||||
ark-algebra-test-templates = { version = "^0.3.0", default-features = false }
|
||||
ark-curve-constraint-tests = { path = "../curve-constraint-tests", default-features = false }
|
||||
|
||||
[features]
|
||||
|
||||
@@ -1,28 +1,28 @@
|
||||
[package]
|
||||
name = "ark-ed-on-bls12-381"
|
||||
version = "0.1.0"
|
||||
version = "0.3.0"
|
||||
authors = [ "arkworks contributors" ]
|
||||
description = "A Twisted Edwards curve defined over the scalar field of the BLS12-381 curve"
|
||||
homepage = "https://arkworks.rs"
|
||||
repository = "https://github.com/arkworks-rs/algebra"
|
||||
documentation = "https://docs.rs/ark-ed-on-bls12-381/"
|
||||
keywords = ["cryptography", "finite fields", "elliptic curves" ]
|
||||
keywords = ["cryptography", "finite-fields", "elliptic-curves" ]
|
||||
categories = ["cryptography"]
|
||||
include = ["Cargo.toml", "src", "README.md", "LICENSE-APACHE", "LICENSE-MIT"]
|
||||
license = "MIT/Apache-2.0"
|
||||
edition = "2018"
|
||||
|
||||
[dependencies]
|
||||
ark-ff = { git = "https://github.com/arkworks-rs/algebra", default-features = false }
|
||||
ark-ec = { git = "https://github.com/arkworks-rs/algebra", default-features = false }
|
||||
ark-std = { git = "https://github.com/arkworks-rs/utils", default-features = false }
|
||||
ark-r1cs-std = { git = "https://github.com/arkworks-rs/r1cs-std", default-features = false, optional = true }
|
||||
ark-bls12-381 = { path = "../bls12_381", default-features = false, features = [ "scalar_field" ] }
|
||||
ark-ff = { version = "^0.3.0", default-features = false }
|
||||
ark-ec = { version = "^0.3.0", default-features = false }
|
||||
ark-std = { version = "^0.3.0", default-features = false }
|
||||
ark-r1cs-std = { version = "^0.3.0", default-features = false, optional = true }
|
||||
ark-bls12-381 = { version = "^0.3.0", path = "../bls12_381", default-features = false, features = [ "scalar_field" ] }
|
||||
|
||||
[dev-dependencies]
|
||||
ark-relations = { git = "https://github.com/arkworks-rs/snark", default-features = false }
|
||||
ark-serialize = { git = "https://github.com/arkworks-rs/algebra", default-features = false }
|
||||
ark-algebra-test-templates = { git = "https://github.com/arkworks-rs/algebra", default-features = false }
|
||||
ark-relations = { version = "^0.3.0", default-features = false }
|
||||
ark-serialize = { version = "^0.3.0", default-features = false }
|
||||
ark-algebra-test-templates = { version = "^0.3.0", default-features = false }
|
||||
ark-curve-constraint-tests = { path = "../curve-constraint-tests", default-features = false }
|
||||
|
||||
[features]
|
||||
|
||||
@@ -1,31 +1,31 @@
|
||||
[package]
|
||||
name = "ark-ed-on-bn254"
|
||||
version = "0.1.0"
|
||||
version = "0.3.0"
|
||||
authors = [ "arkworks contributors" ]
|
||||
description = "A Twisted Edwards curve defined over the scalar field of the BN254 curve"
|
||||
homepage = "https://arkworks.rs"
|
||||
repository = "https://github.com/arkworks-rs/algebra"
|
||||
documentation = "https://docs.rs/ark-ed-on-bn254/"
|
||||
keywords = ["cryptography", "finite fields", "elliptic curves" ]
|
||||
keywords = ["cryptography", "finite-fields", "elliptic-curves" ]
|
||||
categories = ["cryptography"]
|
||||
include = ["Cargo.toml", "src", "README.md", "LICENSE-APACHE", "LICENSE-MIT"]
|
||||
license = "MIT/Apache-2.0"
|
||||
edition = "2018"
|
||||
|
||||
[dependencies]
|
||||
ark-ff = { git = "https://github.com/arkworks-rs/algebra", default-features = false }
|
||||
ark-ec = { git = "https://github.com/arkworks-rs/algebra", default-features = false }
|
||||
ark-std = { git = "https://github.com/arkworks-rs/utils", default-features = false }
|
||||
ark-r1cs-std = { git = "https://github.com/arkworks-rs/r1cs-std", default-features = false, optional = true }
|
||||
ark-bn254 = { path = "../bn254", default-features = false, features = [ "scalar_field" ] }
|
||||
ark-ff = { version = "^0.3.0", default-features = false }
|
||||
ark-ec = { version = "^0.3.0", default-features = false }
|
||||
ark-std = { version = "^0.3.0", default-features = false }
|
||||
ark-r1cs-std = { version = "^0.3.0", default-features = false, optional = true }
|
||||
ark-bn254 = { version = "^0.3.0", path = "../bn254", default-features = false, features = [ "scalar_field" ] }
|
||||
|
||||
[dev-dependencies]
|
||||
ark-relations = { git = "https://github.com/arkworks-rs/snark", default-features = false }
|
||||
ark-serialize = { git = "https://github.com/arkworks-rs/algebra", default-features = false }
|
||||
ark-algebra-test-templates = { git = "https://github.com/arkworks-rs/algebra", default-features = false }
|
||||
ark-relations = { version = "^0.3.0", default-features = false }
|
||||
ark-serialize = { version = "^0.3.0", default-features = false }
|
||||
ark-algebra-test-templates = { version = "^0.3.0", default-features = false }
|
||||
ark-curve-constraint-tests = { path = "../curve-constraint-tests", default-features = false }
|
||||
|
||||
[features]
|
||||
default = []
|
||||
std = [ "ark-std/std", "ark-ff/std", "ark-ec/std", "ark-bn254/std" ]
|
||||
r1cs = ["ark-r1cs-std"]
|
||||
r1cs = ["ark-r1cs-std"]
|
||||
|
||||
@@ -1,25 +1,25 @@
|
||||
[package]
|
||||
name = "ark-ed-on-bw6-761"
|
||||
version = "0.1.0"
|
||||
version = "0.3.0"
|
||||
authors = [ "arkworks contributors" ]
|
||||
description = "A Twisted Edwards curve defined over the scalar field of the BW6-761 curve"
|
||||
homepage = "https://arkworks.rs"
|
||||
repository = "https://github.com/arkworks-rs/algebra"
|
||||
documentation = "https://docs.rs/ark-ed-on-bw6-761/"
|
||||
keywords = ["cryptography", "finite fields", "elliptic curves" ]
|
||||
keywords = ["cryptography", "finite-fields", "elliptic-curves" ]
|
||||
categories = ["cryptography"]
|
||||
include = ["Cargo.toml", "src", "README.md", "LICENSE-APACHE", "LICENSE-MIT"]
|
||||
license = "MIT/Apache-2.0"
|
||||
edition = "2018"
|
||||
|
||||
[dependencies]
|
||||
ark-ed-on-cp6-782 = { path = "../ed_on_cp6_782", default-features = false }
|
||||
ark-ed-on-cp6-782 = { version = "^0.3.0", path = "../ed_on_cp6_782", default-features = false }
|
||||
|
||||
[dev-dependencies]
|
||||
ark-relations = { git = "https://github.com/arkworks-rs/snark", default-features = false }
|
||||
ark-r1cs-std = { git = "https://github.com/arkworks-rs/r1cs-std", default-features = false }
|
||||
ark-ff = { git = "https://github.com/arkworks-rs/algebra", default-features = false }
|
||||
ark-std = { git = "https://github.com/arkworks-rs/utils", default-features = false }
|
||||
ark-relations = { version = "^0.3.0", default-features = false }
|
||||
ark-r1cs-std = { version = "^0.3.0", default-features = false }
|
||||
ark-ff = { version = "^0.3.0", default-features = false }
|
||||
ark-std = { version = "^0.3.0", default-features = false }
|
||||
|
||||
[features]
|
||||
default = []
|
||||
|
||||
@@ -1,28 +1,28 @@
|
||||
[package]
|
||||
name = "ark-ed-on-cp6-782"
|
||||
version = "0.1.0"
|
||||
version = "0.3.0"
|
||||
authors = [ "arkworks contributors" ]
|
||||
description = "A Twisted Edwards curve defined over the scalar field of the CP6-782 curve"
|
||||
homepage = "https://arkworks.rs"
|
||||
repository = "https://github.com/arkworks-rs/algebra"
|
||||
documentation = "https://docs.rs/ark-ed-on-cp6-782/"
|
||||
keywords = ["cryptography", "finite fields", "elliptic curves" ]
|
||||
keywords = ["cryptography", "finite-fields", "elliptic-curves" ]
|
||||
categories = ["cryptography"]
|
||||
include = ["Cargo.toml", "src", "README.md", "LICENSE-APACHE", "LICENSE-MIT"]
|
||||
license = "MIT/Apache-2.0"
|
||||
edition = "2018"
|
||||
|
||||
[dependencies]
|
||||
ark-ff = { git = "https://github.com/arkworks-rs/algebra", default-features = false }
|
||||
ark-ec = { git = "https://github.com/arkworks-rs/algebra", default-features = false }
|
||||
ark-std = { git = "https://github.com/arkworks-rs/utils", default-features = false }
|
||||
ark-r1cs-std = { git = "https://github.com/arkworks-rs/r1cs-std", default-features = false, optional = true }
|
||||
ark-bls12-377 = { path = "../bls12_377", default-features = false, features = [ "base_field" ] }
|
||||
ark-ff = { version = "^0.3.0", default-features = false }
|
||||
ark-ec = { version = "^0.3.0", default-features = false }
|
||||
ark-std = { version = "^0.3.0", default-features = false }
|
||||
ark-r1cs-std = { version = "^0.3.0", default-features = false, optional = true }
|
||||
ark-bls12-377 = { version = "^0.3.0", path = "../bls12_377", default-features = false, features = [ "base_field" ] }
|
||||
|
||||
[dev-dependencies]
|
||||
ark-relations = { git = "https://github.com/arkworks-rs/snark", default-features = false }
|
||||
ark-serialize = { git = "https://github.com/arkworks-rs/algebra", default-features = false }
|
||||
ark-algebra-test-templates = { git = "https://github.com/arkworks-rs/algebra", default-features = false }
|
||||
ark-relations = { version = "^0.3.0", default-features = false }
|
||||
ark-serialize = { version = "^0.3.0", default-features = false }
|
||||
ark-algebra-test-templates = { version = "^0.3.0", default-features = false }
|
||||
ark-curve-constraint-tests = { path = "../curve-constraint-tests", default-features = false }
|
||||
|
||||
[features]
|
||||
|
||||
@@ -1,28 +1,28 @@
|
||||
[package]
|
||||
name = "ark-ed-on-mnt4-298"
|
||||
version = "0.1.0"
|
||||
version = "0.3.0"
|
||||
authors = [ "arkworks contributors" ]
|
||||
description = "A Twisted Edwards curve defined over the scalar field of the MNT4-298 curve"
|
||||
homepage = "https://arkworks.rs"
|
||||
repository = "https://github.com/arkworks-rs/algebra"
|
||||
documentation = "https://docs.rs/ark-ed-on-mnt4-298/"
|
||||
keywords = ["cryptography", "finite fields", "elliptic curves" ]
|
||||
keywords = ["cryptography", "finite-fields", "elliptic-curves" ]
|
||||
categories = ["cryptography"]
|
||||
include = ["Cargo.toml", "src", "README.md", "LICENSE-APACHE", "LICENSE-MIT"]
|
||||
license = "MIT/Apache-2.0"
|
||||
edition = "2018"
|
||||
|
||||
[dependencies]
|
||||
ark-ff = { git = "https://github.com/arkworks-rs/algebra", default-features = false }
|
||||
ark-ec = { git = "https://github.com/arkworks-rs/algebra", default-features = false }
|
||||
ark-std = { git = "https://github.com/arkworks-rs/utils", default-features = false }
|
||||
ark-r1cs-std = { git = "https://github.com/arkworks-rs/r1cs-std", default-features = false, optional = true }
|
||||
ark-mnt4-298 = { path = "../mnt4_298", default-features = false, features = [ "scalar_field" ] }
|
||||
ark-ff = { version = "^0.3.0", default-features = false }
|
||||
ark-ec = { version = "^0.3.0", default-features = false }
|
||||
ark-std = { version = "^0.3.0", default-features = false }
|
||||
ark-r1cs-std = { version = "^0.3.0", default-features = false, optional = true }
|
||||
ark-mnt4-298 = { version = "^0.3.0", path = "../mnt4_298", default-features = false, features = [ "scalar_field" ] }
|
||||
|
||||
[dev-dependencies]
|
||||
ark-relations = { git = "https://github.com/arkworks-rs/snark", default-features = false }
|
||||
ark-serialize = { git = "https://github.com/arkworks-rs/algebra", default-features = false }
|
||||
ark-algebra-test-templates = { git = "https://github.com/arkworks-rs/algebra", default-features = false }
|
||||
ark-relations = { version = "^0.3.0", default-features = false }
|
||||
ark-serialize = { version = "^0.3.0", default-features = false }
|
||||
ark-algebra-test-templates = { version = "^0.3.0", default-features = false }
|
||||
ark-curve-constraint-tests = { path = "../curve-constraint-tests", default-features = false }
|
||||
|
||||
[features]
|
||||
|
||||
@@ -1,31 +1,31 @@
|
||||
[package]
|
||||
name = "ark-ed-on-mnt4-753"
|
||||
version = "0.1.0"
|
||||
version = "0.3.0"
|
||||
authors = [ "arkworks contributors" ]
|
||||
description = "A Twisted Edwards curve defined over the scalar field of the MNT4-753 curve"
|
||||
homepage = "https://arkworks.rs"
|
||||
repository = "https://github.com/arkworks-rs/algebra"
|
||||
documentation = "https://docs.rs/ark-ed-on-mnt4-753/"
|
||||
keywords = ["cryptography", "finite fields", "elliptic curves" ]
|
||||
keywords = ["cryptography", "finite-fields", "elliptic-curves" ]
|
||||
categories = ["cryptography"]
|
||||
include = ["Cargo.toml", "src", "README.md", "LICENSE-APACHE", "LICENSE-MIT"]
|
||||
license = "MIT/Apache-2.0"
|
||||
edition = "2018"
|
||||
|
||||
[dependencies]
|
||||
ark-ff = { git = "https://github.com/arkworks-rs/algebra", default-features = false }
|
||||
ark-ec = { git = "https://github.com/arkworks-rs/algebra", default-features = false }
|
||||
ark-std = { git = "https://github.com/arkworks-rs/utils", default-features = false }
|
||||
ark-r1cs-std = { git = "https://github.com/arkworks-rs/r1cs-std", default-features = false, optional = true }
|
||||
ark-mnt4-753 = { path = "../mnt4_753", default-features = false, features = [ "scalar_field" ] }
|
||||
ark-ff = { version = "^0.3.0", default-features = false }
|
||||
ark-ec = { version = "^0.3.0", default-features = false }
|
||||
ark-std = { version = "^0.3.0", default-features = false }
|
||||
ark-r1cs-std = { version = "^0.3.0", default-features = false, optional = true }
|
||||
ark-mnt4-753 = { version = "^0.3.0", path = "../mnt4_753", default-features = false, features = [ "scalar_field" ] }
|
||||
|
||||
[dev-dependencies]
|
||||
ark-relations = { git = "https://github.com/arkworks-rs/snark", default-features = false }
|
||||
ark-serialize = { git = "https://github.com/arkworks-rs/algebra", default-features = false }
|
||||
ark-algebra-test-templates = { git = "https://github.com/arkworks-rs/algebra", default-features = false }
|
||||
ark-relations = { version = "^0.3.0", default-features = false }
|
||||
ark-serialize = { version = "^0.3.0", default-features = false }
|
||||
ark-algebra-test-templates = { version = "^0.3.0", default-features = false }
|
||||
ark-curve-constraint-tests = { path = "../curve-constraint-tests", default-features = false }
|
||||
|
||||
[features]
|
||||
default = []
|
||||
std = [ "ark-std/std", "ark-ff/std", "ark-ec/std", "ark-mnt4-753/std" ]
|
||||
r1cs = ["ark-r1cs-std"]
|
||||
r1cs = ["ark-r1cs-std"]
|
||||
|
||||
@@ -1,27 +1,27 @@
|
||||
[package]
|
||||
name = "ark-mnt4-298"
|
||||
version = "0.1.0"
|
||||
version = "0.3.0"
|
||||
authors = [ "arkworks contributors" ]
|
||||
description = "The MNT4-298 pairing-friendly elliptic curve"
|
||||
homepage = "https://arkworks.rs"
|
||||
repository = "https://github.com/arkworks-rs/algebra"
|
||||
documentation = "https://docs.rs/ark-mnt4-298/"
|
||||
keywords = ["cryptography", "finite fields" ]
|
||||
keywords = ["cryptography", "finite-fields" ]
|
||||
categories = ["cryptography"]
|
||||
include = ["Cargo.toml", "src", "README.md", "LICENSE-APACHE", "LICENSE-MIT"]
|
||||
license = "MIT/Apache-2.0"
|
||||
edition = "2018"
|
||||
|
||||
[dependencies]
|
||||
ark-ff = { git = "https://github.com/arkworks-rs/algebra", default-features = false }
|
||||
ark-ec = { git = "https://github.com/arkworks-rs/algebra", default-features = false }
|
||||
ark-std = { git = "https://github.com/arkworks-rs/utils", default-features = false }
|
||||
ark-r1cs-std = { git = "https://github.com/arkworks-rs/r1cs-std", default-features = false, optional = true }
|
||||
ark-ff = { version = "^0.3.0", default-features = false }
|
||||
ark-ec = { version = "^0.3.0", default-features = false }
|
||||
ark-std = { version = "^0.3.0", default-features = false }
|
||||
ark-r1cs-std = { version = "^0.3.0", default-features = false, optional = true }
|
||||
|
||||
[dev-dependencies]
|
||||
ark-relations = { git = "https://github.com/arkworks-rs/snark", default-features = false }
|
||||
ark-serialize = { git = "https://github.com/arkworks-rs/algebra", default-features = false }
|
||||
ark-algebra-test-templates = { git = "https://github.com/arkworks-rs/algebra", default-features = false }
|
||||
ark-relations = { version = "^0.3.0", default-features = false }
|
||||
ark-serialize = { version = "^0.3.0", default-features = false }
|
||||
ark-algebra-test-templates = { version = "^0.3.0", default-features = false }
|
||||
ark-curve-constraint-tests = { path = "../curve-constraint-tests", default-features = false }
|
||||
|
||||
[features]
|
||||
|
||||
@@ -1,27 +1,27 @@
|
||||
[package]
|
||||
name = "ark-mnt4-753"
|
||||
version = "0.1.0"
|
||||
version = "0.3.0"
|
||||
authors = [ "arkworks contributors" ]
|
||||
description = "The MNT4-753 pairing-friendly elliptic curve"
|
||||
homepage = "https://arkworks.rs"
|
||||
repository = "https://github.com/arkworks-rs/algebra"
|
||||
documentation = "https://docs.rs/ark-mnt4-753/"
|
||||
keywords = ["cryptography", "finite fields" ]
|
||||
keywords = ["cryptography", "finite-fields" ]
|
||||
categories = ["cryptography"]
|
||||
include = ["Cargo.toml", "src", "README.md", "LICENSE-APACHE", "LICENSE-MIT"]
|
||||
license = "MIT/Apache-2.0"
|
||||
edition = "2018"
|
||||
|
||||
[dependencies]
|
||||
ark-ff = { git = "https://github.com/arkworks-rs/algebra", default-features = false }
|
||||
ark-ec = { git = "https://github.com/arkworks-rs/algebra", default-features = false }
|
||||
ark-std = { git = "https://github.com/arkworks-rs/utils", default-features = false }
|
||||
ark-r1cs-std = { git = "https://github.com/arkworks-rs/r1cs-std", default-features = false, optional = true }
|
||||
ark-ff = { version = "^0.3.0", default-features = false }
|
||||
ark-ec = { version = "^0.3.0", default-features = false }
|
||||
ark-std = { version = "^0.3.0", default-features = false }
|
||||
ark-r1cs-std = { version = "^0.3.0", default-features = false, optional = true }
|
||||
|
||||
[dev-dependencies]
|
||||
ark-relations = { git = "https://github.com/arkworks-rs/snark", default-features = false }
|
||||
ark-serialize = { git = "https://github.com/arkworks-rs/algebra", default-features = false }
|
||||
ark-algebra-test-templates = { git = "https://github.com/arkworks-rs/algebra", default-features = false }
|
||||
ark-relations = { version = "^0.3.0", default-features = false }
|
||||
ark-serialize = { version = "^0.3.0", default-features = false }
|
||||
ark-algebra-test-templates = { version = "^0.3.0", default-features = false }
|
||||
ark-curve-constraint-tests = { path = "../curve-constraint-tests", default-features = false }
|
||||
|
||||
[features]
|
||||
|
||||
@@ -1,28 +1,28 @@
|
||||
[package]
|
||||
name = "ark-mnt6-298"
|
||||
version = "0.1.0"
|
||||
version = "0.3.0"
|
||||
authors = [ "arkworks contributors" ]
|
||||
description = "The MNT6-298 pairing-friendly elliptic curve"
|
||||
homepage = "https://arkworks.rs"
|
||||
repository = "https://github.com/arkworks-rs/algebra"
|
||||
documentation = "https://docs.rs/ark-mnt6-298/"
|
||||
keywords = ["cryptography", "finite fields" ]
|
||||
keywords = ["cryptography", "finite-fields", "elliptic-curves"]
|
||||
categories = ["cryptography"]
|
||||
include = ["Cargo.toml", "src", "README.md", "LICENSE-APACHE", "LICENSE-MIT"]
|
||||
license = "MIT/Apache-2.0"
|
||||
edition = "2018"
|
||||
|
||||
[dependencies]
|
||||
ark-ff = { git = "https://github.com/arkworks-rs/algebra", default-features = false }
|
||||
ark-ec = { git = "https://github.com/arkworks-rs/algebra", default-features = false }
|
||||
ark-std = { git = "https://github.com/arkworks-rs/utils", default-features = false }
|
||||
ark-r1cs-std = { git = "https://github.com/arkworks-rs/r1cs-std", default-features = false, optional = true }
|
||||
ark-mnt4-298 = { path = "../mnt4_298", default-features = false, features = [ "scalar_field", "base_field" ] }
|
||||
ark-ff = { version = "^0.3.0", default-features = false }
|
||||
ark-ec = { version = "^0.3.0", default-features = false }
|
||||
ark-std = { version = "^0.3.0", default-features = false }
|
||||
ark-r1cs-std = { version = "^0.3.0", default-features = false, optional = true }
|
||||
ark-mnt4-298 = { version = "^0.3.0", path = "../mnt4_298", default-features = false, features = [ "scalar_field", "base_field" ] }
|
||||
|
||||
[dev-dependencies]
|
||||
ark-relations = { git = "https://github.com/arkworks-rs/snark", default-features = false }
|
||||
ark-serialize = { git = "https://github.com/arkworks-rs/algebra", default-features = false }
|
||||
ark-algebra-test-templates = { git = "https://github.com/arkworks-rs/algebra", default-features = false }
|
||||
ark-relations = { version = "^0.3.0", default-features = false }
|
||||
ark-serialize = { version = "^0.3.0", default-features = false }
|
||||
ark-algebra-test-templates = { version = "^0.3.0", default-features = false }
|
||||
ark-curve-constraint-tests = { path = "../curve-constraint-tests", default-features = false }
|
||||
|
||||
[features]
|
||||
|
||||
@@ -1,31 +1,31 @@
|
||||
[package]
|
||||
name = "ark-mnt6-753"
|
||||
version = "0.1.0"
|
||||
version = "0.3.0"
|
||||
authors = [ "arkworks contributors" ]
|
||||
description = "The MNT6-753 pairing-friendly elliptic curve"
|
||||
homepage = "https://arkworks.rs"
|
||||
repository = "https://github.com/arkworks-rs/algebra"
|
||||
documentation = "https://docs.rs/ark-mnt6-753/"
|
||||
keywords = ["cryptography", "finite fields" ]
|
||||
keywords = ["cryptography", "finite-fields", "elliptic-curves" ]
|
||||
categories = ["cryptography"]
|
||||
include = ["Cargo.toml", "src", "README.md", "LICENSE-APACHE", "LICENSE-MIT"]
|
||||
license = "MIT/Apache-2.0"
|
||||
edition = "2018"
|
||||
|
||||
[dependencies]
|
||||
ark-ff = { git = "https://github.com/arkworks-rs/algebra", default-features = false }
|
||||
ark-ec = { git = "https://github.com/arkworks-rs/algebra", default-features = false }
|
||||
ark-std = { git = "https://github.com/arkworks-rs/utils", default-features = false }
|
||||
ark-r1cs-std = { git = "https://github.com/arkworks-rs/r1cs-std", default-features = false, optional = true }
|
||||
ark-mnt4-753 = { path = "../mnt4_753", default-features = false, features = [ "scalar_field", "base_field" ] }
|
||||
ark-ff = { version = "^0.3.0", default-features = false }
|
||||
ark-ec = { version = "^0.3.0", default-features = false }
|
||||
ark-std = { version = "^0.3.0", default-features = false }
|
||||
ark-r1cs-std = { version = "^0.3.0", default-features = false, optional = true }
|
||||
ark-mnt4-753 = { version = "^0.3.0", path = "../mnt4_753", default-features = false, features = [ "scalar_field", "base_field" ] }
|
||||
|
||||
[dev-dependencies]
|
||||
ark-relations = { git = "https://github.com/arkworks-rs/snark", default-features = false }
|
||||
ark-serialize = { git = "https://github.com/arkworks-rs/algebra", default-features = false }
|
||||
ark-algebra-test-templates = { git = "https://github.com/arkworks-rs/algebra", default-features = false }
|
||||
ark-relations = { version = "^0.3.0", default-features = false }
|
||||
ark-serialize = { version = "^0.3.0", default-features = false }
|
||||
ark-algebra-test-templates = { version = "^0.3.0", default-features = false }
|
||||
ark-curve-constraint-tests = { path = "../curve-constraint-tests", default-features = false }
|
||||
|
||||
[features]
|
||||
default = []
|
||||
std = [ "ark-std/std", "ark-ff/std", "ark-ec/std" ]
|
||||
r1cs = ["ark-r1cs-std"]
|
||||
r1cs = ["ark-r1cs-std"]
|
||||
|
||||
@@ -1,27 +1,27 @@
|
||||
[package]
|
||||
name = "ark-pallas"
|
||||
version = "0.1.0"
|
||||
version = "0.3.0"
|
||||
authors = [ "Ying Tong Lai", "Daira Hopwood", "O(1) Labs", "arkworks contributors" ]
|
||||
description = "The Pallas prime-order elliptic curve"
|
||||
homepage = "https://arkworks.rs"
|
||||
repository = "https://github.com/arkworks-rs/curves"
|
||||
documentation = "https://docs.rs/ark-pallas/"
|
||||
keywords = ["cryptography", "finite fields", "elliptic curves" ]
|
||||
keywords = ["cryptography", "finite-fields", "elliptic-curves" ]
|
||||
categories = ["cryptography"]
|
||||
include = ["Cargo.toml", "src"]
|
||||
license = "MIT/Apache-2.0"
|
||||
edition = "2018"
|
||||
|
||||
[dependencies]
|
||||
ark-ff = { git = "https://github.com/arkworks-rs/algebra", default-features = false }
|
||||
ark-ec = { git = "https://github.com/arkworks-rs/algebra", default-features = false }
|
||||
ark-r1cs-std = { git = "https://github.com/arkworks-rs/r1cs-std", default-features = false, optional = true }
|
||||
ark-std = { git = "https://github.com/arkworks-rs/utils", default-features = false }
|
||||
ark-ff = { version = "^0.3.0", default-features = false }
|
||||
ark-ec = { version = "^0.3.0", default-features = false }
|
||||
ark-r1cs-std = { version = "^0.3.0", default-features = false, optional = true }
|
||||
ark-std = { version = "^0.3.0", default-features = false }
|
||||
|
||||
[dev-dependencies]
|
||||
ark-relations = { git = "https://github.com/arkworks-rs/snark", default-features = false }
|
||||
ark-serialize = { git = "https://github.com/arkworks-rs/algebra", default-features = false }
|
||||
ark-algebra-test-templates = { git = "https://github.com/arkworks-rs/algebra", default-features = false }
|
||||
ark-relations = { version = "^0.3.0", default-features = false }
|
||||
ark-serialize = { version = "^0.3.0", default-features = false }
|
||||
ark-algebra-test-templates = { version = "^0.3.0", default-features = false }
|
||||
ark-curve-constraint-tests = { path = "../curve-constraint-tests", default-features = false }
|
||||
|
||||
[features]
|
||||
|
||||
@@ -1,28 +1,28 @@
|
||||
[package]
|
||||
name = "ark-vesta"
|
||||
version = "0.1.0"
|
||||
version = "0.3.0"
|
||||
authors = [ "Ying Tong Lai", "Daira Hopwood", "O(1) Labs", "arkworks contributors" ]
|
||||
description = "The Vesta prime-order elliptic curve"
|
||||
homepage = "https://arkworks.rs"
|
||||
repository = "https://github.com/arkworks-rs/curves"
|
||||
documentation = "https://docs.rs/ark-vesta/"
|
||||
keywords = ["cryptography", "finite fields", "elliptic curves" ]
|
||||
keywords = ["cryptography", "finite-fields", "elliptic-curves" ]
|
||||
categories = ["cryptography"]
|
||||
include = ["Cargo.toml", "src"]
|
||||
license = "MIT/Apache-2.0"
|
||||
edition = "2018"
|
||||
|
||||
[dependencies]
|
||||
ark-ff = { git = "https://github.com/arkworks-rs/algebra", default-features = false }
|
||||
ark-ec = { git = "https://github.com/arkworks-rs/algebra", default-features = false }
|
||||
ark-r1cs-std = { git = "https://github.com/arkworks-rs/r1cs-std", default-features = false, optional = true }
|
||||
ark-std = { git = "https://github.com/arkworks-rs/utils", default-features = false }
|
||||
ark-pallas = { path = "../pallas", default-features = false, features = [ "scalar_field", "base_field" ] }
|
||||
ark-ff = { version = "^0.3.0", default-features = false }
|
||||
ark-ec = { version = "^0.3.0", default-features = false }
|
||||
ark-r1cs-std = { version = "^0.3.0", default-features = false, optional = true }
|
||||
ark-std = { version = "^0.3.0", default-features = false }
|
||||
ark-pallas = { version = "^0.3.0", path = "../pallas", default-features = false, features = [ "scalar_field", "base_field" ] }
|
||||
|
||||
[dev-dependencies]
|
||||
ark-relations = { git = "https://github.com/arkworks-rs/snark", default-features = false }
|
||||
ark-serialize = { git = "https://github.com/arkworks-rs/algebra", default-features = false }
|
||||
ark-algebra-test-templates = { git = "https://github.com/arkworks-rs/algebra", default-features = false }
|
||||
ark-relations = { version = "^0.3.0", default-features = false }
|
||||
ark-serialize = { version = "^0.3.0", default-features = false }
|
||||
ark-algebra-test-templates = { version = "^0.3.0", default-features = false }
|
||||
ark-curve-constraint-tests = { path = "../curve-constraint-tests", default-features = false }
|
||||
|
||||
[features]
|
||||
|
||||
Reference in New Issue
Block a user