use rand::{Rng, OsRng}; pub trait Random { fn random() -> Self where Self: Sized; } impl Random for [u8; 16] { fn random() -> Self { let mut result = [0u8; 16]; let mut rng = OsRng::new().unwrap(); rng.fill_bytes(&mut result); result } } impl Random for [u8; 32] { fn random() -> Self { let mut result = [0u8; 32]; let mut rng = OsRng::new().unwrap(); rng.fill_bytes(&mut result); result } }