From 9aaec97e3e87fb423c7041d568447eb64eb0b4ab Mon Sep 17 00:00:00 2001 From: Gijs Van Laer Date: Sun, 21 Jul 2019 15:13:18 -0400 Subject: [PATCH] nizk: better u param for range proofs/TODO: optimize --- src/ccs08.rs | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/src/ccs08.rs b/src/ccs08.rs index 27cff15..69d33a8 100644 --- a/src/ccs08.rs +++ b/src/ccs08.rs @@ -310,7 +310,7 @@ impl RPPublicParams { if a > b { panic!("a must be less than or equal to b"); } -//TODO: optimize u? + let logb = (b as f32).log2(); let loglogb = logb.log2(); if loglogb > 0.0 { @@ -318,6 +318,7 @@ impl RPPublicParams { if u < 2 { u = 2; } + u = 57; //TODO: optimize u? let l = (b as f32).log(u as f32).ceil() as i32; let params_out: ParamsUL = ParamsUL::::setup_ul(rng, u, l, csParams.clone()); @@ -615,9 +616,9 @@ mod tests { let public_params = RPPublicParams::::setup(rng, 2, 10, csParams); assert_eq!(public_params.a, 2); assert_eq!(public_params.b, 10); - assert_eq!(public_params.p.signatures.len(), 2); - assert_eq!(public_params.p.u, 2); - assert_eq!(public_params.p.l, 4); + assert_eq!(public_params.p.signatures.len(), 57); + assert_eq!(public_params.p.u, 57); + assert_eq!(public_params.p.l, 1); for (m, s) in public_params.p.signatures { assert_eq!(public_params.p.kp.verify(&public_params.p.mpk, &vec! {Fr::from_str(m.to_string().as_str()).unwrap()}, &Fr::zero(), &s), true); }