Update dependencies (#315)

* Update rsa dependency to 0.5

* Update pbkdf dependency to 0.9

* Update x509-parser dependency to 0.11

* Update crypto-bigint subdepdendency to 0.2.6
This commit is contained in:
Benno Rice
2021-09-11 03:44:59 +10:00
committed by GitHub
parent 3905104b52
commit 54ce90d51d
5 changed files with 48 additions and 54 deletions
Generated
+35 -41
View File
@@ -46,6 +46,12 @@ version = "0.13.0"
source = "registry+https://github.com/rust-lang/crates.io-index" source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "904dfeac50f3cdaba28fc6f57fdcddb75f49ed61346676a78c4ffe55877802fd" checksum = "904dfeac50f3cdaba28fc6f57fdcddb75f49ed61346676a78c4ffe55877802fd"
[[package]]
name = "base64ct"
version = "1.0.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "8a32fd6af2b5827bce66c29053ba0e7c42b9dcab01835835058558c10851a46b"
[[package]] [[package]]
name = "bitflags" name = "bitflags"
version = "1.3.2" version = "1.3.2"
@@ -130,9 +136,9 @@ dependencies = [
[[package]] [[package]]
name = "crypto-bigint" name = "crypto-bigint"
version = "0.2.3" version = "0.2.6"
source = "registry+https://github.com/rust-lang/crates.io-index" source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "09910f0830248af4499907177608b81d640c8c404526f8770b87b765fbd8c9a5" checksum = "e49339137316df1914fdb54a5eae75a73f45068fd0d2178fe235b11d93238a6e"
dependencies = [ dependencies = [
"generic-array", "generic-array",
"rand_core", "rand_core",
@@ -163,6 +169,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "31e21d2d0f22cde6e88694108429775c0219760a07779bf96503b434a03d7412" checksum = "31e21d2d0f22cde6e88694108429775c0219760a07779bf96503b434a03d7412"
dependencies = [ dependencies = [
"const-oid", "const-oid",
"crypto-bigint",
] ]
[[package]] [[package]]
@@ -476,12 +483,6 @@ dependencies = [
"der-parser", "der-parser",
] ]
[[package]]
name = "once_cell"
version = "1.8.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "692fcb63b64b1758029e0a96ee63e049ce8c5948587f2f7208df04625e5f6b56"
[[package]] [[package]]
name = "opaque-debug" name = "opaque-debug"
version = "0.3.0" version = "0.3.0"
@@ -510,9 +511,9 @@ dependencies = [
[[package]] [[package]]
name = "pbkdf2" name = "pbkdf2"
version = "0.8.0" version = "0.9.0"
source = "registry+https://github.com/rust-lang/crates.io-index" source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "d95f5254224e617595d2cc3cc73ff0a5eaf2637519e25f03388154e9378b6ffa" checksum = "f05894bce6a1ba4be299d0c5f29563e08af2bc18bb7d48313113bed71e904739"
dependencies = [ dependencies = [
"crypto-mac", "crypto-mac",
] ]
@@ -537,14 +538,23 @@ dependencies = [
] ]
[[package]] [[package]]
name = "pem" name = "pem-rfc7468"
version = "0.8.3" version = "0.2.0"
source = "registry+https://github.com/rust-lang/crates.io-index" source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "fd56cbd21fea48d0c440b41cd69c589faacade08c992d9a54e471b79d0fd13eb" checksum = "b8fe90c78c9a17442665a41a1a45dcd24bbab0e1794748edc19b27fffb146c13"
dependencies = [ dependencies = [
"base64", "base64ct",
"once_cell", ]
"regex",
[[package]]
name = "pkcs1"
version = "0.2.3"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "359e7852310174a810f078124edb73c66e88a1a731b2fd586dba34ee32dbe416"
dependencies = [
"der",
"pem-rfc7468",
"zeroize",
] ]
[[package]] [[package]]
@@ -554,7 +564,10 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "fbee84ed13e44dd82689fa18348a49934fa79cc774a344c42fc9b301c71b140a" checksum = "fbee84ed13e44dd82689fa18348a49934fa79cc774a344c42fc9b301c71b140a"
dependencies = [ dependencies = [
"der", "der",
"pem-rfc7468",
"pkcs1",
"spki", "spki",
"zeroize",
] ]
[[package]] [[package]]
@@ -652,9 +665,9 @@ checksum = "f497285884f3fcff424ffc933e56d7cbca511def0c9831a7f9b5f6153e3cc89b"
[[package]] [[package]]
name = "rsa" name = "rsa"
version = "0.4.0" version = "0.5.0"
source = "registry+https://github.com/rust-lang/crates.io-index" source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "68ef841a26fc5d040ced0417c6c6a64ee851f42489df11cdf0218e545b6f8d28" checksum = "e05c2603e2823634ab331437001b411b9ed11660fbc4066f3908c84a9439260d"
dependencies = [ dependencies = [
"byteorder", "byteorder",
"digest", "digest",
@@ -663,9 +676,9 @@ dependencies = [
"num-integer", "num-integer",
"num-iter", "num-iter",
"num-traits", "num-traits",
"pem", "pkcs1",
"pkcs8",
"rand", "rand",
"simple_asn1",
"subtle", "subtle",
"zeroize", "zeroize",
] ]
@@ -679,12 +692,6 @@ dependencies = [
"nom", "nom",
] ]
[[package]]
name = "rustversion"
version = "1.0.5"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "61b3909d758bb75c79f23d4736fac9433868679d3ad2ea7a61e3c25cfda9a088"
[[package]] [[package]]
name = "ryu" name = "ryu"
version = "1.0.5" version = "1.0.5"
@@ -742,18 +749,6 @@ dependencies = [
"rand_core", "rand_core",
] ]
[[package]]
name = "simple_asn1"
version = "0.5.4"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "8eb4ea60fb301dc81dfc113df680571045d375ab7345d171c5dc7d7e13107a80"
dependencies = [
"chrono",
"num-bigint",
"num-traits",
"thiserror",
]
[[package]] [[package]]
name = "smallvec" name = "smallvec"
version = "1.6.1" version = "1.6.1"
@@ -946,9 +941,9 @@ dependencies = [
[[package]] [[package]]
name = "x509-parser" name = "x509-parser"
version = "0.9.2" version = "0.11.0"
source = "registry+https://github.com/rust-lang/crates.io-index" source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "64abca276c58f8341ddc13fd4bd6ae75993cc669043f5b34813c90f7dff04771" checksum = "d2ce30cd4a10592affdced3f5c95e03e8f23599d282e727fc44035c21250d552"
dependencies = [ dependencies = [
"base64", "base64",
"chrono", "chrono",
@@ -958,7 +953,6 @@ dependencies = [
"nom", "nom",
"oid-registry", "oid-registry",
"rusticata-macros", "rusticata-macros",
"rustversion",
"thiserror", "thiserror",
] ]
+3 -3
View File
@@ -30,12 +30,12 @@ nom = "6"
num-bigint-dig = { version = "0.7", features = ["rand"] } num-bigint-dig = { version = "0.7", features = ["rand"] }
num-traits = "0.2" num-traits = "0.2"
num-integer = "0.1" num-integer = "0.1"
pbkdf2 = { version = "0.8", default-features = false } pbkdf2 = { version = "0.9", default-features = false }
p256 = "0.9" p256 = "0.9"
p384 = "0.8" p384 = "0.8"
pcsc = "2" pcsc = "2"
rand_core = { version = "0.6", features = ["std"] } rand_core = { version = "0.6", features = ["std"] }
rsa = "0.4" rsa = "0.5"
secrecy = "0.8" secrecy = "0.8"
sha-1 = "0.9" sha-1 = "0.9"
sha2 = "0.9" sha2 = "0.9"
@@ -43,7 +43,7 @@ subtle = "2"
subtle-encoding = "0.5" subtle-encoding = "0.5"
uuid = { version = "0.8", features = ["v4"] } uuid = { version = "0.8", features = ["v4"] }
x509 = "0.2" x509 = "0.2"
x509-parser = "0.9" x509-parser = "0.11"
zeroize = "1" zeroize = "1"
[dev-dependencies] [dev-dependencies]
+1 -1
View File
@@ -21,5 +21,5 @@ log = "0.4"
sha2 = "0.9" sha2 = "0.9"
subtle-encoding = "0.5" subtle-encoding = "0.5"
termcolor = "1" termcolor = "1"
x509-parser = "0.9" x509-parser = "0.11"
yubikey = { version = "0.4", path = ".." } yubikey = { version = "0.4", path = ".." }
+7 -7
View File
@@ -45,7 +45,7 @@ use log::error;
use num_bigint_dig::BigUint; use num_bigint_dig::BigUint;
use p256::NistP256; use p256::NistP256;
use p384::NistP384; use p384::NistP384;
use rsa::{PublicKeyParts, RSAPublicKey}; use rsa::{PublicKeyParts, RsaPublicKey};
use sha2::{Digest, Sha256}; use sha2::{Digest, Sha256};
use std::convert::TryFrom; use std::convert::TryFrom;
use std::fmt; use std::fmt;
@@ -172,7 +172,7 @@ pub enum PublicKeyInfo {
algorithm: AlgorithmId, algorithm: AlgorithmId,
/// Public key /// Public key
pubkey: RSAPublicKey, pubkey: RsaPublicKey,
}, },
/// EC P-256 keys /// EC P-256 keys
@@ -594,7 +594,7 @@ mod read_pki {
*, *,
}; };
use nom::{combinator, IResult}; use nom::{combinator, IResult};
use rsa::{BigUint, RSAPublicKey}; use rsa::{BigUint, RsaPublicKey};
use super::{OID_NIST_P256, OID_NIST_P384}; use super::{OID_NIST_P256, OID_NIST_P384};
use crate::{piv::AlgorithmId, Error, Result}; use crate::{piv::AlgorithmId, Error, Result};
@@ -606,7 +606,7 @@ mod read_pki {
/// publicExponent INTEGER -- e /// publicExponent INTEGER -- e
/// } /// }
/// ``` /// ```
pub(super) fn rsa_pubkey(encoded: &[u8]) -> Result<RSAPublicKey> { pub(super) fn rsa_pubkey(encoded: &[u8]) -> Result<RsaPublicKey> {
fn parse_rsa_pubkey(i: &[u8]) -> IResult<&[u8], DerObject<'_>, BerError> { fn parse_rsa_pubkey(i: &[u8]) -> IResult<&[u8], DerObject<'_>, BerError> {
parse_der_sequence_defined!(i, parse_der_integer >> parse_der_integer) parse_der_sequence_defined!(i, parse_der_integer >> parse_der_integer)
} }
@@ -634,7 +634,7 @@ mod read_pki {
_ => return Err(Error::InvalidObject), _ => return Err(Error::InvalidObject),
}; };
RSAPublicKey::new(n, e).map_err(|_| Error::InvalidObject) RsaPublicKey::new(n, e).map_err(|_| Error::InvalidObject)
} }
/// From [RFC 5480](https://tools.ietf.org/html/rfc5480#section-2.1.1): /// From [RFC 5480](https://tools.ietf.org/html/rfc5480#section-2.1.1):
@@ -658,7 +658,7 @@ mod read_pki {
mod write_pki { mod write_pki {
use cookie_factory::{SerializeFn, WriteContext}; use cookie_factory::{SerializeFn, WriteContext};
use rsa::{BigUint, PublicKeyParts, RSAPublicKey}; use rsa::{BigUint, PublicKeyParts, RsaPublicKey};
use std::io::Write; use std::io::Write;
use x509::der::write::{der_integer, der_sequence}; use x509::der::write::{der_integer, der_sequence};
@@ -675,7 +675,7 @@ mod write_pki {
/// } /// }
/// ``` /// ```
pub(super) fn rsa_pubkey<'a, W: Write + 'a>( pub(super) fn rsa_pubkey<'a, W: Write + 'a>(
pubkey: &'a RSAPublicKey, pubkey: &'a RsaPublicKey,
) -> impl SerializeFn<W> + 'a { ) -> impl SerializeFn<W> + 'a {
der_sequence(( der_sequence((
der_integer_biguint(pubkey.n()), der_integer_biguint(pubkey.n()),
+2 -2
View File
@@ -54,7 +54,7 @@ use crate::{
}; };
use elliptic_curve::sec1::EncodedPoint as EcPublicKey; use elliptic_curve::sec1::EncodedPoint as EcPublicKey;
use log::{debug, error, warn}; use log::{debug, error, warn};
use rsa::{BigUint, RSAPublicKey}; use rsa::{BigUint, RsaPublicKey};
use std::{convert::TryFrom, str::FromStr}; use std::{convert::TryFrom, str::FromStr};
#[cfg(feature = "untested")] #[cfg(feature = "untested")]
@@ -624,7 +624,7 @@ pub fn generate(
Ok(PublicKeyInfo::Rsa { Ok(PublicKeyInfo::Rsa {
algorithm, algorithm,
pubkey: RSAPublicKey::new( pubkey: RsaPublicKey::new(
BigUint::from_bytes_be(&modulus), BigUint::from_bytes_be(&modulus),
BigUint::from_bytes_be(&exp), BigUint::from_bytes_be(&exp),
) )