Skip to content

Commit 0c9342d

Browse files
add string methods
1 parent b7525d7 commit 0c9342d

File tree

3 files changed

+41
-9
lines changed

3 files changed

+41
-9
lines changed

benches/benchmark_decrypt.rs

Lines changed: 17 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
use criterion::{criterion_group, criterion_main, Criterion};
2-
use module_lwe::decrypt::decrypt;
3-
use module_lwe::keygen::keygen;
4-
use module_lwe::encrypt::encrypt;
2+
use module_lwe::decrypt::{decrypt,decrypt_string};
3+
use module_lwe::keygen::{keygen,keygen_string};
4+
use module_lwe::encrypt::{encrypt,encrypt_string};
55
use module_lwe::utils::Parameters;
66

77
fn bench_decrypt(c: &mut Criterion) {
@@ -15,5 +15,18 @@ fn bench_decrypt(c: &mut Criterion) {
1515
});
1616
}
1717

18-
criterion_group!(benches, bench_decrypt);
18+
fn bench_decrypt_string(c: &mut Criterion) {
19+
let params = Parameters::default();
20+
let keypair = keygen_string(&params, None);
21+
let sk_string = keypair.get("secret").unwrap();
22+
let pk_string = keypair.get("public").unwrap();
23+
let message = String::from("hello");
24+
let ciphertext_string = encrypt_string(&pk_string, &message, &params, None);
25+
26+
c.bench_function("decrypt_string", |b| {
27+
b.iter(|| decrypt_string(&sk_string, &ciphertext_string, &params))
28+
});
29+
}
30+
31+
criterion_group!(benches, bench_decrypt, bench_decrypt_string);
1932
criterion_main!(benches);

benches/benchmark_encrypt.rs

Lines changed: 14 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
use criterion::{criterion_group, criterion_main, Criterion};
2-
use module_lwe::encrypt::encrypt;
3-
use module_lwe::keygen::keygen;
2+
use module_lwe::encrypt::{encrypt,encrypt_string};
3+
use module_lwe::keygen::{keygen,keygen_string};
44
use module_lwe::utils::Parameters;
55

66
fn bench_encrypt(c: &mut Criterion) {
@@ -13,5 +13,16 @@ fn bench_encrypt(c: &mut Criterion) {
1313
});
1414
}
1515

16-
criterion_group!(benches, bench_encrypt);
16+
fn bench_encrypt_string(c: &mut Criterion) {
17+
let params = Parameters::default();
18+
let keypair = keygen_string(&params, None);
19+
let pk_string = keypair.get("public").unwrap();
20+
let message = String::from("hello");
21+
22+
c.bench_function("encrypt_string", |b| {
23+
b.iter(|| encrypt_string(&pk_string, &message, &params, None))
24+
});
25+
}
26+
27+
criterion_group!(benches, bench_encrypt, bench_encrypt_string);
1728
criterion_main!(benches);

benches/benchmark_keygen.rs

Lines changed: 10 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
use criterion::{criterion_group, criterion_main, Criterion};
2-
use module_lwe::keygen::keygen;
2+
use module_lwe::keygen::{keygen,keygen_string};
33
use module_lwe::utils::Parameters;
44

55
fn bench_keygen(c: &mut Criterion) {
@@ -9,5 +9,13 @@ fn bench_keygen(c: &mut Criterion) {
99
});
1010
}
1111

12-
criterion_group!(benches, bench_keygen);
12+
fn bench_keygen_string(c: &mut Criterion) {
13+
let params = Parameters::default();
14+
15+
c.bench_function("keygen_string", |b| {
16+
b.iter(|| keygen_string(&params, None))
17+
});
18+
}
19+
20+
criterion_group!(benches, bench_keygen, bench_keygen_string);
1321
criterion_main!(benches);

0 commit comments

Comments
 (0)