Bump der-parser, nom, x509-parser (#194)
* Bump der-parser from 4.1.0 to 5.0.0 Bumps [der-parser](https://github.com/rusticata/der-parser) from 4.1.0 to 5.0.0. - [Release notes](https://github.com/rusticata/der-parser/releases) - [Changelog](https://github.com/rusticata/der-parser/blob/master/CHANGELOG.md) - [Commits](https://github.com/rusticata/der-parser/compare/der-parser-4.1.0...der-parser-5.0.0) Signed-off-by: dependabot[bot] <support@github.com> * Bump der-parser, nom, x509-parser * clippy Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
This commit is contained in:
Generated
+116
-16
@@ -63,7 +63,19 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
|
|||||||
checksum = "1d2838fdd79e8776dbe07a106c784b0f8dda571a21b2750a092cc4cbaa653c8e"
|
checksum = "1d2838fdd79e8776dbe07a106c784b0f8dda571a21b2750a092cc4cbaa653c8e"
|
||||||
dependencies = [
|
dependencies = [
|
||||||
"funty",
|
"funty",
|
||||||
"radium",
|
"radium 0.4.1",
|
||||||
|
"wyz",
|
||||||
|
]
|
||||||
|
|
||||||
|
[[package]]
|
||||||
|
name = "bitvec"
|
||||||
|
version = "0.19.4"
|
||||||
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||||
|
checksum = "a7ba35e9565969edb811639dbebfe34edc0368e472c5018474c8eb2543397f81"
|
||||||
|
dependencies = [
|
||||||
|
"funty",
|
||||||
|
"radium 0.5.3",
|
||||||
|
"tap",
|
||||||
"wyz",
|
"wyz",
|
||||||
]
|
]
|
||||||
|
|
||||||
@@ -168,7 +180,19 @@ 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 = "e66558629d772c3be040566b7be07be8c8f5aecee95e4a092dfe2efc313277ad"
|
checksum = "e66558629d772c3be040566b7be07be8c8f5aecee95e4a092dfe2efc313277ad"
|
||||||
dependencies = [
|
dependencies = [
|
||||||
"nom",
|
"nom 5.1.2",
|
||||||
|
"num-bigint 0.3.0",
|
||||||
|
"num-traits",
|
||||||
|
"proc-macro-hack",
|
||||||
|
]
|
||||||
|
|
||||||
|
[[package]]
|
||||||
|
name = "der-oid-macro"
|
||||||
|
version = "0.3.0"
|
||||||
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||||
|
checksum = "bd17d13ecf875e704369fdbde242483ac769fc18f6af21e43d5a692a079732fc"
|
||||||
|
dependencies = [
|
||||||
|
"nom 6.0.1",
|
||||||
"num-bigint 0.3.0",
|
"num-bigint 0.3.0",
|
||||||
"num-traits",
|
"num-traits",
|
||||||
"proc-macro-hack",
|
"proc-macro-hack",
|
||||||
@@ -180,12 +204,26 @@ version = "4.1.0"
|
|||||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||||
checksum = "caca07c50eaae94d43e21f4d14eca5543b6f5f5ce64715e9b7665ac5f5185b4e"
|
checksum = "caca07c50eaae94d43e21f4d14eca5543b6f5f5ce64715e9b7665ac5f5185b4e"
|
||||||
dependencies = [
|
dependencies = [
|
||||||
"der-oid-macro",
|
"der-oid-macro 0.2.0",
|
||||||
"nom",
|
"nom 5.1.2",
|
||||||
"num-bigint 0.3.0",
|
"num-bigint 0.3.0",
|
||||||
"num-traits",
|
"num-traits",
|
||||||
"proc-macro-hack",
|
"proc-macro-hack",
|
||||||
"rusticata-macros",
|
"rusticata-macros 2.1.0",
|
||||||
|
]
|
||||||
|
|
||||||
|
[[package]]
|
||||||
|
name = "der-parser"
|
||||||
|
version = "5.0.0"
|
||||||
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||||
|
checksum = "cb4b1e27396f46037881c39d821660f2ff48797aaa7152a45ded7a93b368a819"
|
||||||
|
dependencies = [
|
||||||
|
"der-oid-macro 0.3.0",
|
||||||
|
"nom 6.0.1",
|
||||||
|
"num-bigint 0.3.0",
|
||||||
|
"num-traits",
|
||||||
|
"proc-macro-hack",
|
||||||
|
"rusticata-macros 3.0.1",
|
||||||
]
|
]
|
||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
@@ -214,7 +252,7 @@ version = "0.6.6"
|
|||||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||||
checksum = "396db09c483e7fca5d4fdb9112685632b3e76c9a607a2649c1bf904404a01366"
|
checksum = "396db09c483e7fca5d4fdb9112685632b3e76c9a607a2649c1bf904404a01366"
|
||||||
dependencies = [
|
dependencies = [
|
||||||
"bitvec",
|
"bitvec 0.18.4",
|
||||||
"const-oid",
|
"const-oid",
|
||||||
"ff",
|
"ff",
|
||||||
"generic-array",
|
"generic-array",
|
||||||
@@ -242,7 +280,7 @@ version = "0.8.0"
|
|||||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||||
checksum = "01646e077d4ebda82b73f1bca002ea1e91561a77df2431a9e79729bcc31950ef"
|
checksum = "01646e077d4ebda82b73f1bca002ea1e91561a77df2431a9e79729bcc31950ef"
|
||||||
dependencies = [
|
dependencies = [
|
||||||
"bitvec",
|
"bitvec 0.18.4",
|
||||||
"rand_core",
|
"rand_core",
|
||||||
"subtle",
|
"subtle",
|
||||||
]
|
]
|
||||||
@@ -399,6 +437,18 @@ dependencies = [
|
|||||||
"version_check",
|
"version_check",
|
||||||
]
|
]
|
||||||
|
|
||||||
|
[[package]]
|
||||||
|
name = "nom"
|
||||||
|
version = "6.0.1"
|
||||||
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||||
|
checksum = "88034cfd6b4a0d54dd14f4a507eceee36c0b70e5a02236c4e4df571102be17f0"
|
||||||
|
dependencies = [
|
||||||
|
"bitvec 0.19.4",
|
||||||
|
"lexical-core",
|
||||||
|
"memchr",
|
||||||
|
"version_check",
|
||||||
|
]
|
||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "num-bigint"
|
name = "num-bigint"
|
||||||
version = "0.2.6"
|
version = "0.2.6"
|
||||||
@@ -470,6 +520,15 @@ dependencies = [
|
|||||||
"autocfg 1.0.1",
|
"autocfg 1.0.1",
|
||||||
]
|
]
|
||||||
|
|
||||||
|
[[package]]
|
||||||
|
name = "oid-registry"
|
||||||
|
version = "0.1.1"
|
||||||
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||||
|
checksum = "2508c8f170e55be68508b1113956a760a82684f42022f8834fb16ca198621211"
|
||||||
|
dependencies = [
|
||||||
|
"der-parser 5.0.0",
|
||||||
|
]
|
||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "once_cell"
|
name = "once_cell"
|
||||||
version = "1.5.2"
|
version = "1.5.2"
|
||||||
@@ -587,6 +646,12 @@ version = "0.4.1"
|
|||||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||||
checksum = "64de9a0c5361e034f1aefc9f71a86871ec870e766fe31a009734a989b329286a"
|
checksum = "64de9a0c5361e034f1aefc9f71a86871ec870e766fe31a009734a989b329286a"
|
||||||
|
|
||||||
|
[[package]]
|
||||||
|
name = "radium"
|
||||||
|
version = "0.5.3"
|
||||||
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||||
|
checksum = "941ba9d78d8e2f7ce474c015eea4d9c6d25b6a3327f9832ee29a4de27f91bbb8"
|
||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "rand"
|
name = "rand"
|
||||||
version = "0.7.3"
|
version = "0.7.3"
|
||||||
@@ -689,7 +754,16 @@ version = "2.1.0"
|
|||||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||||
checksum = "f8a9050636e8a1b487ba1fbe99114021cd7594dde3ce6ed95bfc1691e5b5367b"
|
checksum = "f8a9050636e8a1b487ba1fbe99114021cd7594dde3ce6ed95bfc1691e5b5367b"
|
||||||
dependencies = [
|
dependencies = [
|
||||||
"nom",
|
"nom 5.1.2",
|
||||||
|
]
|
||||||
|
|
||||||
|
[[package]]
|
||||||
|
name = "rusticata-macros"
|
||||||
|
version = "3.0.1"
|
||||||
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||||
|
checksum = "7390af60e66c44130b4c5ea85f2555b7ace835d73b4b889c704dc3cb4c0468c8"
|
||||||
|
dependencies = [
|
||||||
|
"nom 6.0.1",
|
||||||
]
|
]
|
||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
@@ -817,6 +891,12 @@ dependencies = [
|
|||||||
"unicode-xid",
|
"unicode-xid",
|
||||||
]
|
]
|
||||||
|
|
||||||
|
[[package]]
|
||||||
|
name = "tap"
|
||||||
|
version = "1.0.0"
|
||||||
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||||
|
checksum = "36474e732d1affd3a6ed582781b3683df3d0563714c59c39591e8ff707cf078e"
|
||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "termcolor"
|
name = "termcolor"
|
||||||
version = "1.1.2"
|
version = "1.1.2"
|
||||||
@@ -1022,12 +1102,32 @@ dependencies = [
|
|||||||
"base64 0.13.0",
|
"base64 0.13.0",
|
||||||
"chrono",
|
"chrono",
|
||||||
"data-encoding",
|
"data-encoding",
|
||||||
"der-oid-macro",
|
"der-oid-macro 0.2.0",
|
||||||
"der-parser",
|
"der-parser 4.1.0",
|
||||||
"lazy_static",
|
"lazy_static",
|
||||||
"nom",
|
"nom 5.1.2",
|
||||||
"num-bigint 0.3.0",
|
"num-bigint 0.3.0",
|
||||||
"rusticata-macros",
|
"rusticata-macros 2.1.0",
|
||||||
|
"rustversion",
|
||||||
|
"thiserror",
|
||||||
|
]
|
||||||
|
|
||||||
|
[[package]]
|
||||||
|
name = "x509-parser"
|
||||||
|
version = "0.9.0"
|
||||||
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||||
|
checksum = "b22c80f083d860f8e77f44762e9df8c92de7defeb70219ec37f32968cab53e90"
|
||||||
|
dependencies = [
|
||||||
|
"base64 0.13.0",
|
||||||
|
"chrono",
|
||||||
|
"data-encoding",
|
||||||
|
"der-oid-macro 0.3.0",
|
||||||
|
"der-parser 5.0.0",
|
||||||
|
"lazy_static",
|
||||||
|
"nom 6.0.1",
|
||||||
|
"num-bigint 0.3.0",
|
||||||
|
"oid-registry",
|
||||||
|
"rusticata-macros 3.0.1",
|
||||||
"rustversion",
|
"rustversion",
|
||||||
"thiserror",
|
"thiserror",
|
||||||
]
|
]
|
||||||
@@ -1043,7 +1143,7 @@ dependencies = [
|
|||||||
"sha2",
|
"sha2",
|
||||||
"subtle-encoding",
|
"subtle-encoding",
|
||||||
"termcolor",
|
"termcolor",
|
||||||
"x509-parser",
|
"x509-parser 0.8.2",
|
||||||
"yubikey-piv",
|
"yubikey-piv",
|
||||||
]
|
]
|
||||||
|
|
||||||
@@ -1053,7 +1153,7 @@ version = "0.1.0"
|
|||||||
dependencies = [
|
dependencies = [
|
||||||
"chrono",
|
"chrono",
|
||||||
"cookie-factory",
|
"cookie-factory",
|
||||||
"der-parser",
|
"der-parser 5.0.0",
|
||||||
"des",
|
"des",
|
||||||
"elliptic-curve",
|
"elliptic-curve",
|
||||||
"env_logger",
|
"env_logger",
|
||||||
@@ -1061,7 +1161,7 @@ dependencies = [
|
|||||||
"hmac",
|
"hmac",
|
||||||
"lazy_static",
|
"lazy_static",
|
||||||
"log",
|
"log",
|
||||||
"nom",
|
"nom 6.0.1",
|
||||||
"num-bigint-dig",
|
"num-bigint-dig",
|
||||||
"num-integer",
|
"num-integer",
|
||||||
"num-traits",
|
"num-traits",
|
||||||
@@ -1077,7 +1177,7 @@ dependencies = [
|
|||||||
"subtle",
|
"subtle",
|
||||||
"subtle-encoding",
|
"subtle-encoding",
|
||||||
"x509",
|
"x509",
|
||||||
"x509-parser",
|
"x509-parser 0.9.0",
|
||||||
"zeroize",
|
"zeroize",
|
||||||
]
|
]
|
||||||
|
|
||||||
|
|||||||
+3
-3
@@ -24,13 +24,13 @@ maintenance = { status = "experimental" }
|
|||||||
[dependencies]
|
[dependencies]
|
||||||
chrono = "0.4"
|
chrono = "0.4"
|
||||||
cookie-factory = "0.3"
|
cookie-factory = "0.3"
|
||||||
der-parser = "4"
|
der-parser = "5"
|
||||||
des = "0.6"
|
des = "0.6"
|
||||||
elliptic-curve = "0.6"
|
elliptic-curve = "0.6"
|
||||||
getrandom = "0.1"
|
getrandom = "0.1"
|
||||||
hmac = "0.10"
|
hmac = "0.10"
|
||||||
log = "0.4"
|
log = "0.4"
|
||||||
nom = "5"
|
nom = "6"
|
||||||
num-bigint = { version = "0.6", features = ["rand"], package = "num-bigint-dig" }
|
num-bigint = { version = "0.6", features = ["rand"], package = "num-bigint-dig" }
|
||||||
num-traits = "0.2"
|
num-traits = "0.2"
|
||||||
num-integer = "0.1"
|
num-integer = "0.1"
|
||||||
@@ -45,7 +45,7 @@ sha2 = "0.9"
|
|||||||
subtle = "2"
|
subtle = "2"
|
||||||
subtle-encoding = "0.5"
|
subtle-encoding = "0.5"
|
||||||
x509 = "0.1.2"
|
x509 = "0.1.2"
|
||||||
x509-parser = "0.8"
|
x509-parser = "0.9"
|
||||||
zeroize = "1"
|
zeroize = "1"
|
||||||
|
|
||||||
[dev-dependencies]
|
[dev-dependencies]
|
||||||
|
|||||||
+10
-9
@@ -49,7 +49,7 @@ use sha2::{Digest, Sha256};
|
|||||||
use std::convert::TryFrom;
|
use std::convert::TryFrom;
|
||||||
use std::fmt;
|
use std::fmt;
|
||||||
use std::ops::DerefMut;
|
use std::ops::DerefMut;
|
||||||
use x509_parser::{parse_x509_der, x509::SubjectPublicKeyInfo};
|
use x509_parser::{parse_x509_certificate, x509::SubjectPublicKeyInfo};
|
||||||
use zeroize::Zeroizing;
|
use zeroize::Zeroizing;
|
||||||
|
|
||||||
use crate::CB_OBJ_MAX;
|
use crate::CB_OBJ_MAX;
|
||||||
@@ -205,7 +205,13 @@ impl PublicKeyInfo {
|
|||||||
}
|
}
|
||||||
OID_EC_PUBLIC_KEY => {
|
OID_EC_PUBLIC_KEY => {
|
||||||
let key_bytes = &subject_pki.subject_public_key.data;
|
let key_bytes = &subject_pki.subject_public_key.data;
|
||||||
match read_pki::ec_parameters(&subject_pki.algorithm.parameters)? {
|
let algorithm_parameters = subject_pki
|
||||||
|
.algorithm
|
||||||
|
.parameters
|
||||||
|
.as_ref()
|
||||||
|
.ok_or(Error::InvalidObject)?;
|
||||||
|
|
||||||
|
match read_pki::ec_parameters(algorithm_parameters)? {
|
||||||
AlgorithmId::EccP256 => EcPublicKey::from_bytes(key_bytes)
|
AlgorithmId::EccP256 => EcPublicKey::from_bytes(key_bytes)
|
||||||
.map(PublicKeyInfo::EcP256)
|
.map(PublicKeyInfo::EcP256)
|
||||||
.map_err(|_| Error::InvalidObject),
|
.map_err(|_| Error::InvalidObject),
|
||||||
@@ -471,7 +477,7 @@ impl Certificate {
|
|||||||
return Err(Error::SizeError);
|
return Err(Error::SizeError);
|
||||||
}
|
}
|
||||||
|
|
||||||
let parsed_cert = match parse_x509_der(&cert) {
|
let parsed_cert = match parse_x509_certificate(&cert) {
|
||||||
Ok((_, cert)) => cert,
|
Ok((_, cert)) => cert,
|
||||||
_ => return Err(Error::InvalidObject),
|
_ => return Err(Error::InvalidObject),
|
||||||
};
|
};
|
||||||
@@ -631,12 +637,7 @@ mod read_pki {
|
|||||||
/// }
|
/// }
|
||||||
/// ```
|
/// ```
|
||||||
pub(super) fn ec_parameters(parameters: &DerObject<'_>) -> Result<AlgorithmId, Error> {
|
pub(super) fn ec_parameters(parameters: &DerObject<'_>) -> Result<AlgorithmId, Error> {
|
||||||
let curve_oid = match parameters.as_context_specific() {
|
let curve_oid = parameters.as_oid_val().map_err(|_| Error::InvalidObject)?;
|
||||||
Ok((_, Some(named_curve))) => {
|
|
||||||
named_curve.as_oid_val().map_err(|_| Error::InvalidObject)
|
|
||||||
}
|
|
||||||
_ => Err(Error::InvalidObject),
|
|
||||||
}?;
|
|
||||||
|
|
||||||
match curve_oid.to_string().as_str() {
|
match curve_oid.to_string().as_str() {
|
||||||
OID_NIST_P256 => Ok(AlgorithmId::EccP256),
|
OID_NIST_P256 => Ok(AlgorithmId::EccP256),
|
||||||
|
|||||||
Reference in New Issue
Block a user