arnaucube
arnaucube/phantom-zonePublic Self-hosted repository
generated some good primes
Janmajaya Mall janmajayamall@protonmail.com
Thu, 13 Jun 2024 10:31:50 +0530
commit

2fa7cfc6c2143077c485f3e01df143ce09a1ea8b

parent

41fab75713c3b6ee7ad05d8bf3336e6ebc94fa48

2 files changed, 31 insertions(+), 23 deletions(-)

jump to
M src/bool/evaluator.rs → src/bool/evaluator.rs

@@ -1301,7 +1301,7 @@

use crate::{ bool::{ self, CommonReferenceSeededMultiPartyServerKeyShare, PublicKey, - SeededMultiPartyServerKey, + SeededMultiPartyServerKey, SMALL_MP_BOOL_PARAMS, }, ntt::NttBackendU64, random::{RandomElementInModulus, DEFAULT_RNG},

@@ -1665,11 +1665,11 @@ NttBackendU64,

ModularOpsU64<CiphertextModulus<u64>>, ModularOpsU64<CiphertextModulus<u64>>, ShoupServerKeyEvaluationDomain<Vec<Vec<u64>>>, - >::new(SP_BOOL_PARAMS); + >::new(SMALL_MP_BOOL_PARAMS); // let (_, collective_pk, _, _, server_key_eval, ideal_client_key) = // _multi_party_all_keygen(&bool_evaluator, 20); - let no_of_parties = 2; + let no_of_parties = 16; let lwe_q = bool_evaluator.pbs_info.parameters.lwe_q(); let rlwe_q = bool_evaluator.pbs_info.parameters.rlwe_q(); let lwe_n = bool_evaluator.pbs_info.parameters.lwe_n().0;
M src/utils.rs → src/utils.rs

@@ -262,29 +262,37 @@ }

#[cfg(test)] mod tests { - - // #[test] - // fn gg() { - // let n = 1 << (11 + 1); - // let mut start = 1 << 55; - // while start < (1 << 56) { - // if start % n == 1 { - // break; - // } - // start += 1; + use super::is_probably_prime; + // let n = 1 << (11 + 1); + // let mut start = 1 << 55; + // while start < (1 << 56) { + // if start % n == 1 { + // break; // } + // start += 1; + // } - // let mut prime = None; - // while start < (1 << 56) { - // if is_probably_prime(start) { - // dbg!(start); - // prime = Some(start); - // break; - // } + // let mut prime = None; + // while start < (1 << 56) { + // if is_probably_prime(start) { // dbg!(start); - // start += (n); + // prime = Some(start); + // break; // } - - // println!("{:?}", prime); + // dbg!(start); + // start += (n); // } + #[test] + fn gg() { + let q = 30; + for i in 0..1000 { + let x = (1u64 << (q * 2)) + (i * (1 << q)) + 1; + let is_prime = is_probably_prime(x); + if is_prime { + println!("{x} = 2^{} + {i} * 2^{q} + 1", 2 * q); + } + } + + // println!("{:?}", prime); + } }