use commonware_cryptography::bls12381::{
primitives::{ops::keypair, variant::MinSig},
tle::{Block, encrypt},
};
use commonware_utils::test_rng;
use criterion::{Criterion, criterion_group};
use std::hint::black_box;
fn bench_tle_encrypt(c: &mut Criterion) {
let mut rng = test_rng();
let (_, master_public) = keypair::<_, MinSig>(&mut rng);
let target = 10u64.to_be_bytes();
let message = Block::new([0x42u8; 32]);
c.bench_function(module_path!(), |b| {
b.iter(|| {
black_box(
encrypt::<_, MinSig>(&mut rng, master_public, (b"_BENCH_TLE_", &target), &message)
.expect("encryption should succeed"),
);
});
});
}
criterion_group! {
name = benches;
config = Criterion::default().sample_size(10);
targets = bench_tle_encrypt
}