Bump p256 => v0.10; p384 => v0.9 (#344)

This commit is contained in:
Tony Arcieri (iqlusion)
2022-01-17 15:08:48 -08:00
committed by GitHub
parent dd4b1c60a4
commit 935fea0868
4 changed files with 112 additions and 32 deletions
+10 -4
View File
@@ -54,6 +54,8 @@ use crate::{
};
use elliptic_curve::sec1::EncodedPoint as EcPublicKey;
use log::{debug, error, warn};
use p256::NistP256;
use p384::NistP384;
use rsa::{BigUint, RsaPublicKey};
use std::str::FromStr;
@@ -657,10 +659,14 @@ pub fn generate(
let point = tlv.value.to_vec();
if let AlgorithmId::EccP256 = algorithm {
EcPublicKey::from_bytes(point).map(PublicKeyInfo::EcP256)
} else {
EcPublicKey::from_bytes(point).map(PublicKeyInfo::EcP384)
match algorithm {
AlgorithmId::EccP256 => {
EcPublicKey::<NistP256>::from_bytes(point).map(PublicKeyInfo::EcP256)
}
AlgorithmId::EccP384 => {
EcPublicKey::<NistP384>::from_bytes(point).map(PublicKeyInfo::EcP384)
}
_ => return Err(Error::AlgorithmError),
}
.map_err(|_| Error::InvalidObject)
}