From 8024753be00dd6cb588db3da5a5a963d5c6f2ff2 Mon Sep 17 00:00:00 2001 From: Nicolas Sarlin Date: Wed, 11 Jun 2025 15:16:29 +0200 Subject: [PATCH] fix(zk): test failed with trivial ct equal to 0 --- tfhe-zk-pok/src/proofs/pke.rs | 6 ++++-- tfhe-zk-pok/src/proofs/pke_v2.rs | 6 ++++-- 2 files changed, 8 insertions(+), 4 deletions(-) diff --git a/tfhe-zk-pok/src/proofs/pke.rs b/tfhe-zk-pok/src/proofs/pke.rs index 18c87f8d3..5f4a82998 100644 --- a/tfhe-zk-pok/src/proofs/pke.rs +++ b/tfhe-zk-pok/src/proofs/pke.rs @@ -1825,7 +1825,9 @@ mod tests { (q / t as i128) as u64 }; - let trivial = rng.gen::() % effective_cleartext_t; + // If trivial is 0 the ct is not modified so the proof will be accepted + let trivial = rng.gen_range(1..effective_cleartext_t); + let trivial_pt = trivial * delta; let c2_plus_trivial = vec![ct.c2[0].wrapping_add(trivial_pt as i64)]; @@ -1871,7 +1873,7 @@ mod tests { ct_plus_trivial.c2.clone(), testcase.r.clone(), testcase.e1.clone(), - testcase.m.clone(), + m_plus_trivial, testcase.e2.clone(), &crs, ); diff --git a/tfhe-zk-pok/src/proofs/pke_v2.rs b/tfhe-zk-pok/src/proofs/pke_v2.rs index 37f8842f5..c75f8d72a 100644 --- a/tfhe-zk-pok/src/proofs/pke_v2.rs +++ b/tfhe-zk-pok/src/proofs/pke_v2.rs @@ -3180,7 +3180,9 @@ mod tests { (q / t as i128) as u64 }; - let trivial = rng.gen::() % effective_cleartext_t; + // If trivial is 0 the ct is not modified so the proof will be accepted + let trivial = rng.gen_range(1..effective_cleartext_t); + let trivial_pt = trivial * delta; let c2_plus_trivial = vec![ct.c2[0].wrapping_add(trivial_pt as i64)]; @@ -3226,7 +3228,7 @@ mod tests { ct_plus_trivial.c2.clone(), testcase.r.clone(), testcase.e1.clone(), - testcase.m.clone(), + m_plus_trivial, testcase.e2.clone(), &crs, );