27 lines
843 B
Rust
27 lines
843 B
Rust
use false_bottom::{FB128, FBAlgo, Encode};
|
|
use std::time::Instant;
|
|
|
|
fn main() {
|
|
let inp = vec![0_u8; 1024000];
|
|
println!("Input size: {} Bytes", inp.len());
|
|
let mut fb = FB128::init(2, 2).unwrap();
|
|
|
|
println!("Encrypting...");
|
|
let now = Instant::now();
|
|
let key = fb.add(&inp);
|
|
let t_encr = now.elapsed().as_secs_f32();
|
|
let encr = fb.to_bytes().0;
|
|
let r_encr = encr.len() as f32 / t_encr;
|
|
println!("Encryption: {t_encr:.2} @ {r_encr:.1} B/sec");
|
|
|
|
println!("Decrypting...");
|
|
let now = Instant::now();
|
|
let decr = fb.decrypt(&key).unwrap();
|
|
let t_decr = now.elapsed().as_secs_f32();
|
|
let r_decr = decr.len() as f32 / t_decr;
|
|
println!("Decryption: {t_decr:.2} @ {r_decr:.1} B/sec");
|
|
let extra = encr.len() - inp.len();
|
|
let percent = extra as f32/encr.len() as f32 * 100_f32;
|
|
println!("Extra Bytes: {extra} Bytes ({percent}%)");
|
|
}
|