Skip to content

Commit a28f5d9

Browse files
deps(deps): bump rand from 0.8.5 to 0.9.1 in the crypto group (#22)
1 parent 9829463 commit a28f5d9

File tree

3 files changed

+30
-12
lines changed

3 files changed

+30
-12
lines changed

Cargo.lock

Lines changed: 16 additions & 8 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

Cargo.toml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,7 @@ categories = ["command-line-utilities", "cryptography"]
1111

1212
[dependencies]
1313
ed25519-dalek = "2"
14-
rand = "0.8.5"
14+
rand = "0.9.1"
1515
regex = "1.10.2"
1616
anyhow = "1.0.89"
1717
thiserror = "2.0.12"

src/keygen.rs

Lines changed: 13 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -5,13 +5,18 @@ use crate::error::Result;
55
use crate::ssh::{private_key, public_key};
66
use ed25519_dalek::{SecretKey, SigningKey, VerifyingKey};
77
use rand::rngs::OsRng;
8-
use rand::RngCore;
8+
use rand::TryRngCore;
99

1010
/// Generates an ed25519 key pair and returns the public key and private key as hex strings.
1111
pub fn generate_key_pair() -> Result<(String, String)> {
1212
// Generate a random secret key
1313
let mut secret_key_bytes = [0u8; 32];
14-
OsRng.fill_bytes(&mut secret_key_bytes);
14+
OsRng.try_fill_bytes(&mut secret_key_bytes).map_err(|e| {
15+
crate::error::VanityError::KeyGenerationError(format!(
16+
"Failed to generate random bytes: {}",
17+
e
18+
))
19+
})?;
1520
let secret_key = SecretKey::from(secret_key_bytes);
1621
let signing_key = SigningKey::from(secret_key);
1722
let verifying_key = VerifyingKey::from(&signing_key);
@@ -32,7 +37,12 @@ pub fn generate_key_pair() -> Result<(String, String)> {
3237
pub fn generate_openssh_key_pair(comment: Option<&str>) -> Result<(String, String)> {
3338
// Generate a random secret key
3439
let mut secret_key_bytes = [0u8; 32];
35-
OsRng.fill_bytes(&mut secret_key_bytes);
40+
OsRng.try_fill_bytes(&mut secret_key_bytes).map_err(|e| {
41+
crate::error::VanityError::KeyGenerationError(format!(
42+
"Failed to generate random bytes: {}",
43+
e
44+
))
45+
})?;
3646
let secret_key = SecretKey::from(secret_key_bytes);
3747
let signing_key = SigningKey::from(secret_key);
3848
let verifying_key = VerifyingKey::from(&signing_key);

0 commit comments

Comments
 (0)