From dd781209ffc72cebdf89c8443b27ee1943c1f36e Mon Sep 17 00:00:00 2001 From: Trivernis Date: Tue, 10 Mar 2020 13:00:37 +0100 Subject: [PATCH] Add duration output after encryption --- src/lib/crypt.rs | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/src/lib/crypt.rs b/src/lib/crypt.rs index 39605ec..129da04 100644 --- a/src/lib/crypt.rs +++ b/src/lib/crypt.rs @@ -5,6 +5,7 @@ use des::Des; use rand::Rng; use rayon::prelude::*; use std::sync::Mutex; +use std::time::Instant; type DesCfb = Cfb; @@ -37,6 +38,7 @@ pub fn decrypt_with_dictionary( checksum: &[u8], ) -> Option> { let decrypted = Mutex::>>::new(None); + let start = Instant::now(); let pass = dict.par_iter().find_first(|(_pw, key)| { let decrypted_data = decrypt_data(&data, key); let decr_check = sha_checksum(&decrypted_data); @@ -49,7 +51,11 @@ pub fn decrypt_with_dictionary( }; }); if let Some((pw, _key)) = pass { - println!("\nPassword found: {}", pw); + println!( + "\nPassword found in {:.2}s: {}", + start.elapsed().as_secs_f32(), + pw + ); let decry = decrypted.lock().unwrap(); if let Some(decrypted_data) = (*decry).clone() { return Some(decrypted_data);