From 6d1b735a0ba0aefcb51d3f2df2074cc9d5c158b5 Mon Sep 17 00:00:00 2001 From: Alivecow Date: Thu, 5 Dec 2024 16:37:54 +0100 Subject: [PATCH] refactor: remove unneded prints and enable mt --- src/tasks/mod.rs | 2 +- src/tasks/tasks01/gcm_crack.rs | 80 ---------------------------------- 2 files changed, 1 insertion(+), 81 deletions(-) diff --git a/src/tasks/mod.rs b/src/tasks/mod.rs index d48952d..8a8b782 100644 --- a/src/tasks/mod.rs +++ b/src/tasks/mod.rs @@ -241,7 +241,7 @@ pub fn task_distribute_st(testcases: &Testcases) -> Result { pub fn task_distribute(testcases: &Testcases) -> Result { let cpus = num_cpus::get(); - if cpus > 1000000 { + if cpus > 1 { task_distribute_mt(testcases) } else { task_distribute_st(testcases) diff --git a/src/tasks/tasks01/gcm_crack.rs b/src/tasks/tasks01/gcm_crack.rs index cce3df6..89788c7 100644 --- a/src/tasks/tasks01/gcm_crack.rs +++ b/src/tasks/tasks01/gcm_crack.rs @@ -98,13 +98,8 @@ pub fn gcm_crack(args: &Value) -> Result { let (m3_data, _) = parse_message(&args["m3"])?; - eprintln!("m1 poly: {:?}", m1_h_poly.clone().to_c_array()); - eprintln!("m2 poly: {:?}", m2_h_poly.clone().to_c_array()); - let combine_poly = m1_h_poly + m2_h_poly; - eprintln!("combine poly: {:?}", combine_poly.clone().to_c_array()); - let combine_sff = sff(combine_poly.monic()); let mut combine_ddf: Vec<(Polynomial, u128)> = vec![]; @@ -112,8 +107,6 @@ pub fn gcm_crack(args: &Value) -> Result { combine_ddf.extend(ddf(factor)); } - eprintln!("combine_ddf: {:?}", combine_ddf); - let mut combine_edf: Vec = vec![]; for (factor, degree) in combine_ddf { if degree == 1 { @@ -121,8 +114,6 @@ pub fn gcm_crack(args: &Value) -> Result { } } - eprintln!("combine_edf: {:?}", combine_edf); - let mut m3_auth_tag: Vec = vec![]; let mut h_candidate: FieldElement = FieldElement::zero(); let mut eky0: Vec = vec![]; @@ -155,8 +146,6 @@ pub fn gcm_crack(args: &Value) -> Result { ); if m3_auth_tag == m3_data.tag { - eprintln!("Candidate valid"); - eprintln!("{:02X?}", m3_auth_tag); break; } else { eprintln!("H candidate not valid"); @@ -164,16 +153,6 @@ pub fn gcm_crack(args: &Value) -> Result { } } - eprintln!( - "M3 Authentication TAG {:02X?}", - BASE64_STANDARD.encode(&m3_auth_tag) - ); - - if m3_auth_tag.is_empty() { - assert!(false); - eprintln!("No valid candidate found"); - } - let (forgery_data, _) = parse_message(&args["forgery"])?; let forgery_ghash = ghash( @@ -196,62 +175,3 @@ pub fn gcm_crack(args: &Value) -> Result { mask: BASE64_STANDARD.encode(eky0), }) } - -#[cfg(test)] -mod tests { - - use anyhow::Result; - - use rand::Rng; - - use serde_json::json; - use utils::ciphers::{aes_128_encrypt, gcm_encrypt_aes}; - // Note this useful idiom: importing names from outer (for mod tests) scope. - use super::*; - - #[test] - fn test_random() -> Result<()> { - let key = vec![1, 1, 1, 1]; - let nonce = BASE64_STANDARD.decode("4gF+BtR3ku/PUQci")?; - let ad = vec![0]; - - let input: Vec = Vec::with_capacity(rand::thread_rng().gen_range(0..=60)); - let plain1 = gcm_encrypt_aes(nonce.clone(), key.clone(), input, ad.clone())?; - let input: Vec = Vec::with_capacity(rand::thread_rng().gen_range(0..=60)); - let plain2 = gcm_encrypt_aes(nonce.clone(), key.clone(), input, ad.clone())?; - let input: Vec = Vec::with_capacity(rand::thread_rng().gen_range(0..=60)); - let plain3 = gcm_encrypt_aes(nonce.clone(), key.clone(), input, ad.clone())?; - - let crack_input = json!({ - "testcases": { - "gcm_crack46": { - "action": "gcm_crack", - "arguments": { - "nonce": "4gF+BtR3ku/PUQci", - "m1": { - "ciphertext": BASE64_STANDARD.encode(plain1.0), - "associated_data": "", - "tag": BASE64_STANDARD.encode(plain1.1) - }, - "m2": { - "ciphertext": BASE64_STANDARD.encode(plain2.0), - "associated_data": "", - "tag": BASE64_STANDARD.encode(plain2.1) - }, - "m3": { - "ciphertext": BASE64_STANDARD.encode(plain3.0), - "associated_data": "", - "tag": BASE64_STANDARD.encode(plain3.1) - }, - "forgery": { - "ciphertext": "AXe/ZQ==", - "associated_data": "" - } - } - } - } - }); - - todo!(); - } -}