From 714405abb50d6520511a78e2e7a6eb55a22958ef Mon Sep 17 00:00:00 2001 From: dignifiedquire Date: Wed, 11 Dec 2019 00:50:06 +0100 Subject: [PATCH 1/3] feat: update deps --- .travis.yml | 2 +- Cargo.toml | 8 ++++---- README.md | 3 ++- src/lib.rs | 2 +- 4 files changed, 8 insertions(+), 7 deletions(-) diff --git a/.travis.yml b/.travis.yml index ce24cfcb..4a39a397 100644 --- a/.travis.yml +++ b/.travis.yml @@ -2,7 +2,7 @@ language: rust matrix: include: - - rust: 1.31.0 + - rust: 1.36.0 - rust: stable - rust: nightly env: TRAVIS_NIGHTLY=true diff --git a/Cargo.toml b/Cargo.toml index c8291560..e05055c1 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -12,18 +12,18 @@ categories = ["cryptography"] readme = "README.md" [dependencies] -num-bigint = { version = "0.5", features = ["rand", "i128", "u64_digit", "prime", "zeroize"], package = "num-bigint-dig" } +num-bigint = { version = "0.6", features = ["rand", "i128", "u64_digit", "prime", "zeroize"], package = "num-bigint-dig" } num-traits = "0.2.6" num-integer = "0.1.39" num-iter = "0.1.37" lazy_static = "1.3.0" -rand = "0.6.5" +rand = "0.7.0" byteorder = "1.3.1" failure = "0.1.5" subtle = "2.0.0" [dependencies.zeroize] -version = "0.10.1" +version = "1.1.0" features = ["alloc", "zeroize_derive"] [dependencies.serde] @@ -33,7 +33,7 @@ default-features = false features = ["std", "derive"] [dev-dependencies] -base64 = "0.10.1" +base64 = "0.11.0" sha-1 = "0.8.1" sha2 = "0.8.0" hex = "0.4.0" diff --git a/README.md b/README.md index 4156b327..c88eb99d 100644 --- a/README.md +++ b/README.md @@ -1,5 +1,6 @@ # RSA [![crates.io](https://img.shields.io/crates/v/rsa.svg)](https://crates.io/crates/rsa) [![Documentation](https://docs.rs/rsa/badge.svg)](https://docs.rs/rsa) [![Build Status](https://travis-ci.org/RustCrypto/RSA.svg?branch=master)](https://travis-ci.org/RustCrypto/RSA) [![dependency status](https://deps.rs/repo/github/RustCrypto/RSA/status.svg)](https://deps.rs/repo/github/RustCrypto/RSA) +![minimum rustc 1.36](https://img.shields.io/badge/rustc-1.36+-red.svg) A portable RSA implementation in pure Rust. @@ -14,7 +15,7 @@ extern crate rand; use rsa::{PublicKey, RSAPrivateKey, PaddingScheme}; use rand::rngs::OsRng; -let mut rng = OsRng::new().expect("no secure randomness available"); +let mut rng = OsRng; let bits = 2048; let key = RSAPrivateKey::new(&mut rng, bits).expect("failed to generate a key"); diff --git a/src/lib.rs b/src/lib.rs index 42799cd5..a96c2a5c 100644 --- a/src/lib.rs +++ b/src/lib.rs @@ -11,7 +11,7 @@ //! use rsa::{PublicKey, RSAPrivateKey, PaddingScheme}; //! use rand::rngs::OsRng; //! -//! let mut rng = OsRng::new().expect("no secure randomness available"); +//! let mut rng = OsRng; //! let bits = 2048; //! let key = RSAPrivateKey::new(&mut rng, bits).expect("failed to generate a key"); //! From 6297db441b49de36d0f6823e88fc8c6f66fd1f5d Mon Sep 17 00:00:00 2001 From: dignifiedquire Date: Wed, 11 Dec 2019 01:02:53 +0100 Subject: [PATCH 2/3] fix rng --- src/key.rs | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/key.rs b/src/key.rs index 636bbf46..b3f7ff0b 100644 --- a/src/key.rs +++ b/src/key.rs @@ -578,10 +578,10 @@ mod tests { #[test] #[cfg(feature = "serde1")] fn test_serde() { - use rand::{SeedableRng, XorShiftRng}; + use rand::thread_rng; use serde_test::{assert_tokens, Token}; - let mut rng = XorShiftRng::from_seed([1; 16]); + let mut rng = thread_rng(); let priv_key = RSAPrivateKey::new(&mut rng, 64).expect("failed to generate key"); let priv_tokens = [ From 4666291407fe9416413636fc4f323ae41f538af5 Mon Sep 17 00:00:00 2001 From: dignifiedquire Date: Wed, 11 Dec 2019 01:10:24 +0100 Subject: [PATCH 3/3] real fix --- Cargo.toml | 1 + src/key.rs | 5 +++-- 2 files changed, 4 insertions(+), 2 deletions(-) diff --git a/Cargo.toml b/Cargo.toml index e05055c1..9021dcab 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -38,6 +38,7 @@ sha-1 = "0.8.1" sha2 = "0.8.0" hex = "0.4.0" serde_test = "1.0.89" +rand_xorshift = "0.2.0" [[bench]] diff --git a/src/key.rs b/src/key.rs index b3f7ff0b..fd39d3e9 100644 --- a/src/key.rs +++ b/src/key.rs @@ -578,10 +578,11 @@ mod tests { #[test] #[cfg(feature = "serde1")] fn test_serde() { - use rand::thread_rng; + use rand::SeedableRng; + use rand_xorshift::XorShiftRng; use serde_test::{assert_tokens, Token}; - let mut rng = thread_rng(); + let mut rng = XorShiftRng::from_seed([1; 16]); let priv_key = RSAPrivateKey::new(&mut rng, 64).expect("failed to generate key"); let priv_tokens = [