diff --git a/Cargo.lock b/Cargo.lock index 5d5a765..501e055 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -617,6 +617,7 @@ dependencies = [ "hex", "jsonschema", "rand", + "rand_core 0.6.4", "reqwest", "serde", "serde_json", diff --git a/Cargo.toml b/Cargo.toml index 287dc7d..a1ef116 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -17,7 +17,7 @@ categories = ["database"] [features] default = [] cloudevents = ["dep:cloudevents-sdk"] -testcontainer = ["dep:testcontainers", "dep:rand", "ed25519-dalek/rand_core"] +testcontainer = ["dep:testcontainers", "dep:rand", "dep:rand_core", "ed25519-dalek/rand_core"] [dependencies] chrono = { version = "0.4.42", features = ["serde"] } @@ -41,6 +41,7 @@ sha2 = "0.10.9" hex = "0.4.3" ed25519-dalek = { version = "2.2.0", features = ["rand_core", "pkcs8", "pem"] } rand = { version = "0.9", optional = true } +rand_core = { version = "0.6", features = ["getrandom"], optional = true } [dev-dependencies] testcontainers = { version = "0.25.2", features = ["http_wait"] } diff --git a/src/container.rs b/src/container.rs index edf1373..c5d7128 100644 --- a/src/container.rs +++ b/src/container.rs @@ -38,7 +38,7 @@ use ed25519_dalek::{ SigningKey, VerifyingKey, pkcs8::{EncodePrivateKey, spki::der::pem::LineEnding}, }; -use rand::prelude::ThreadRng; +use rand_core::OsRng; use testcontainers::{ ContainerAsync, CopyDataSource, GenericImage, core::{ContainerPort, ImageExt, WaitFor, wait::HttpWaitStrategy}, @@ -115,8 +115,7 @@ impl ContainerBuilder { /// The private key will be used to sign events and the public key will be used to verify them. #[must_use] pub fn with_signing_key(mut self) -> Self { - let mut rng: ThreadRng = rand::thread_rng(); - self.signing_key = Some(SigningKey::generate(&mut rng)); + self.signing_key = Some(SigningKey::generate(&mut OsRng)); self }