From 364e19dc96d97c0b38eeb389054e9d990ae47f11 Mon Sep 17 00:00:00 2001 From: Daniel Schadt Date: Wed, 9 Apr 2025 20:49:36 +0200 Subject: add first fuzz binary --- fuzz/fuzz_targets/fuzz_target_1.rs | 24 ++++++++++++++++++++++++ 1 file changed, 24 insertions(+) create mode 100644 fuzz/fuzz_targets/fuzz_target_1.rs (limited to 'fuzz/fuzz_targets') diff --git a/fuzz/fuzz_targets/fuzz_target_1.rs b/fuzz/fuzz_targets/fuzz_target_1.rs new file mode 100644 index 0000000..19ba0f9 --- /dev/null +++ b/fuzz/fuzz_targets/fuzz_target_1.rs @@ -0,0 +1,24 @@ +#![no_main] + +use libfuzzer_sys::fuzz_target; + +use arbitrary::Arbitrary; +use zears::Aez; + +#[derive(Debug, Arbitrary)] +struct Parameters<'a> { + key: &'a [u8], + nonce: &'a [u8], + ad: &'a [u8], + tau: u32, + message: &'a [u8], +} + +fuzz_target!(|params: Parameters| { + if params.tau <= 1 * 1024 * 1024 { + let aez = Aez::new(params.key); + let cipher = aez.encrypt(params.nonce, &[params.ad], params.tau, params.message); + let message = aez.decrypt(params.nonce, &[params.ad], params.tau, &cipher); + assert_eq!(message.unwrap(), params.message); + } +}); -- cgit v1.2.3