diff --git a/Cargo.toml b/Cargo.toml index bce1273..70b33e2 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -12,13 +12,13 @@ keywords = ["random", "testing", "security"] # Up to five categories = ["algorithms"] # https://crates.io/category_slugs [dependencies] -rand = "^0.8.5" -rand_core = "0.6.4" -getrandom = "^0.2.9" -rand_xoshiro = "^0.6.0" -num-traits = "^0.2.15" -lazy_static = "^1.4.0" +rand = "^0.9.2" +rand_core = "^0.9.3" +getrandom = "^0.3.3" +rand_xoshiro = "^0.7.0" +num-traits = "^0.2.19" +lazy_static = "^1.5.0" [dev-dependencies] -hex-literal = "^0.4.1" +hex-literal = "^1.0.0" version-sync = "^0.9" diff --git a/src/lib.rs b/src/lib.rs index 54a27ad..517fe77 100644 --- a/src/lib.rs +++ b/src/lib.rs @@ -51,8 +51,6 @@ impl RandomNumberGenerator for rand::rngs::ThreadRng { fn fill_random_data(&mut self, data: &mut [u8]) { self.fill_bytes(data); } } -pub fn thread_rng() -> rand::rngs::ThreadRng { rand::thread_rng() } - #[cfg(test)] mod tests { #[test] diff --git a/src/secure_random.rs b/src/secure_random.rs index 16ff5be..9cef813 100644 --- a/src/secure_random.rs +++ b/src/secure_random.rs @@ -1,7 +1,5 @@ use std::sync::Once; - -use getrandom::getrandom; -use rand::{CryptoRng, RngCore, SeedableRng, rngs::StdRng}; +use rand::{rngs::StdRng, CryptoRng, RngCore, SeedableRng}; use crate::RandomNumberGenerator; @@ -22,7 +20,7 @@ impl LazyStdRng { fn get_rng(&self) -> std::sync::MutexGuard<'_, Option> { self.init.call_once(|| { let mut seed = [0u8; 32]; - getrandom(&mut seed).expect("Failed to seed RNG"); + getrandom::fill(&mut seed).expect("Failed to seed RNG"); let rng = StdRng::from_seed(seed); let mut guard = self.rng.lock().expect("Mutex was poisoned"); @@ -70,11 +68,8 @@ impl RngCore for SecureRandomNumberGenerator { fn next_u64(&mut self) -> u64 { next_u64() } - fn fill_bytes(&mut self, dest: &mut [u8]) { fill_random_data(dest); } - - fn try_fill_bytes(&mut self, dest: &mut [u8]) -> Result<(), rand::Error> { - self.fill_bytes(dest); - Ok(()) + fn fill_bytes(&mut self, dest: &mut [u8]) { + fill_random_data(dest); } } diff --git a/src/seeded_random.rs b/src/seeded_random.rs index 4c72605..1553c16 100644 --- a/src/seeded_random.rs +++ b/src/seeded_random.rs @@ -36,11 +36,8 @@ impl RngCore for SeededRandomNumberGenerator { fn next_u64(&mut self) -> u64 { self.rng.next_u64() } - fn fill_bytes(&mut self, dest: &mut [u8]) { self.rng.fill_bytes(dest); } - - fn try_fill_bytes(&mut self, dest: &mut [u8]) -> Result<(), rand::Error> { + fn fill_bytes(&mut self, dest: &mut [u8]) { self.rng.fill_bytes(dest); - Ok(()) } }