diff options
author | Justus Winter <justus@sequoia-pgp.org> | 2021-06-07 14:11:40 +0200 |
---|---|---|
committer | Justus Winter <justus@sequoia-pgp.org> | 2021-06-07 20:05:15 +0200 |
commit | 486e988981b49c6c5df11538b56a8383ef2d8b99 (patch) | |
tree | 6d4df4b26293271c7a3df245c63d0c272b3c320b | |
parent | f980bd2364745aecdca2ebd0d6db97401f047d49 (diff) |
openpgp: Drop workaround now that we depend on nettle 7.0.2.
-rw-r--r-- | openpgp/src/crypto/backend/nettle/asymmetric.rs | 23 |
1 files changed, 2 insertions, 21 deletions
diff --git a/openpgp/src/crypto/backend/nettle/asymmetric.rs b/openpgp/src/crypto/backend/nettle/asymmetric.rs index b272ff36..4b937815 100644 --- a/openpgp/src/crypto/backend/nettle/asymmetric.rs +++ b/openpgp/src/crypto/backend/nettle/asymmetric.rs @@ -158,25 +158,6 @@ impl Decryptor for KeyPair { (PublicKey::RSA{ ref e, ref n }, mpi::SecretKeyMaterial::RSA{ ref p, ref q, ref d, .. }, mpi::Ciphertext::RSA{ ref c }) => { - // Workaround for #440: Make sure c is of the same - // length as n. - // XXX: Remove once we depend on nettle > 7.0.0. - let c_ = if c.value().len() < n.value().len() { - let mut c_ = vec![0; n.value().len() - c.value().len()]; - c_.extend_from_slice(c.value()); - Some(c_) - } else { - // If it is bigger, then the packet is likely - // corrupted, tough luck then. - None - }; - let c = if let Some(c_) = c_.as_ref() { - &c_[..] - } else { - c.value() - }; - // End of workaround. - let public = rsa::PublicKey::new(n.value(), e.value())?; let secret = rsa::PrivateKey::new(d.value(), p.value(), q.value(), Option::None)?; @@ -184,11 +165,11 @@ impl Decryptor for KeyPair { if let Some(l) = plaintext_len { let mut plaintext: SessionKey = vec![0; l].into(); rsa::decrypt_pkcs1(&public, &secret, &mut rand, - c, plaintext.as_mut())?; + c.value(), plaintext.as_mut())?; plaintext } else { rsa::decrypt_pkcs1_insecure(&public, &secret, - &mut rand, c)? + &mut rand, c.value())? .into() } } |