From 2636c128009378c90e69cbed6b0d79b808e1e417 Mon Sep 17 00:00:00 2001 From: "vhnat@eruptiq" Date: Tue, 12 Feb 2019 22:14:01 +0200 Subject: [PATCH 1/3] workaround to run keygen.rs bench of multi_party_ecdsa/gg18 - replaced cryptography_utils with curv, used latest version of .phase1_verify_com_phase3_verify_correct_key_phase2_distribute Squashed commits: [21e0b57] re-enabled two party keygen bench --- Cargo.toml | 8 +++++++- benches/multi_party_ecdsa/gg18/keygen.rs | 14 ++++++++------ 2 files changed, 15 insertions(+), 7 deletions(-) diff --git a/Cargo.toml b/Cargo.toml index c4ed0867..4eea29c5 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -50,6 +50,12 @@ rust-gmp = { version = "0.5.0", features = ["serde_support"], git = "https://git criterion = "0.2" [[bench]] -name = "keygen" +name = "keygen_two_party_ecdsa" path = "benches/two_party_ecdsa/lindell_2017/keygen.rs" harness = false + +[[bench]] +name = "keygen_multi_party_ecdsa" +path = "benches/multi_party_ecdsa/gg18/keygen.rs" +harness = false + diff --git a/benches/multi_party_ecdsa/gg18/keygen.rs b/benches/multi_party_ecdsa/gg18/keygen.rs index fbec0819..59342c69 100644 --- a/benches/multi_party_ecdsa/gg18/keygen.rs +++ b/benches/multi_party_ecdsa/gg18/keygen.rs @@ -1,13 +1,13 @@ #[macro_use] extern crate criterion; -extern crate cryptography_utils; +extern crate curv; extern crate multi_party_ecdsa; mod bench { use criterion::Criterion; - use cryptography_utils::arithmetic::traits::Samplable; - use cryptography_utils::elliptic::curves::traits::*; - use cryptography_utils::BigInt; + // use curv::arithmetic::traits::Samplable; + // use curv::elliptic::curves::traits::*; + // use curv::BigInt; use multi_party_ecdsa::protocols::multi_party_ecdsa::gg_2018::party_i::*; pub fn bench_full_keygen_party_one_two(c: &mut Criterion) { c.bench_function("keygen", move |b| { @@ -35,12 +35,14 @@ mod bench { //phase2 (including varifying correct paillier): let (vss_scheme_1, secret_shares_1, index1) = party1_keys .phase1_verify_com_phase3_verify_correct_key_phase2_distribute( - ¶mes, &blind_vec, &y_vec, &bc1_vec, + ¶mes, &blind_vec, //&y_vec, + &bc1_vec, ) .expect("invalid key"); let (vss_scheme_2, secret_shares_2, index2) = party2_keys .phase1_verify_com_phase3_verify_correct_key_phase2_distribute( - ¶mes, &blind_vec, &y_vec, &bc1_vec, + ¶mes, &blind_vec, //&y_vec, + &bc1_vec, ) .expect("invalid key"); From fa13697599799f7391845994a2cb65c3686c3be9 Mon Sep 17 00:00:00 2001 From: vhnat Date: Mon, 18 Feb 2019 09:38:00 +0300 Subject: [PATCH 2/3] changes to Cargo.toml for the benches to run on aarch64 --- Cargo.toml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/Cargo.toml b/Cargo.toml index 4eea29c5..484303f6 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -21,7 +21,7 @@ license = "GPL-3.0-or-later" categories = ["cryptography"] [lib] -crate-type = ["lib"] +crate-type = ["staticlib", "rlib"] [dependencies] paillier = { git = "https://github.com/mortendahl/rust-paillier"} @@ -34,7 +34,7 @@ reqwest = "0.9.5" rocket = "0.4.0" rocket_contrib = "0.4.0" uuid = { version = "0.7", features = ["v4"] } -rust-crypto = "^0.2" +rust-crypto = { git = "https://github.com/vhnatyk/rust-crypto", branch="aarch64"} #"^0.2" [dependencies.curv] git = "https://github.com/KZen-networks/curv" From 505d1fde2cae41fbd3082c092836aa06df3e25f1 Mon Sep 17 00:00:00 2001 From: vhnat Date: Mon, 18 Feb 2019 09:40:06 +0300 Subject: [PATCH 3/3] minor cleanup and refactor --- Cargo.toml | 7 +++---- benches/multi_party_ecdsa/gg18/keygen.rs | 2 +- 2 files changed, 4 insertions(+), 5 deletions(-) diff --git a/Cargo.toml b/Cargo.toml index 484303f6..df638b55 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -50,12 +50,11 @@ rust-gmp = { version = "0.5.0", features = ["serde_support"], git = "https://git criterion = "0.2" [[bench]] -name = "keygen_two_party_ecdsa" +name = "keygen_2p" path = "benches/two_party_ecdsa/lindell_2017/keygen.rs" harness = false [[bench]] -name = "keygen_multi_party_ecdsa" +name = "keygen_mp" path = "benches/multi_party_ecdsa/gg18/keygen.rs" -harness = false - +harness = false \ No newline at end of file diff --git a/benches/multi_party_ecdsa/gg18/keygen.rs b/benches/multi_party_ecdsa/gg18/keygen.rs index 59342c69..8a735c7a 100644 --- a/benches/multi_party_ecdsa/gg18/keygen.rs +++ b/benches/multi_party_ecdsa/gg18/keygen.rs @@ -47,7 +47,7 @@ mod bench { .expect("invalid key"); // each party assembles her secret share vector: - let vss_scheme_for_test = vss_scheme_1.clone(); + let _vss_scheme_for_test = vss_scheme_1.clone(); let vss_vec = vec![vss_scheme_1, vss_scheme_2]; let party1_ss_vec = vec![ secret_shares_1[index1].clone(),