rsa
Pure Rust RSA implementation
0.9.10
205M downloads/mo
#498 most downloaded on crates.io
RustCrypto/RSA
What this package is like to depend on
Last release 3 months ago
27 Apr 2026
Release timing varies
gaps range from 8 days to 2 months
Some releases are documented
notes for 16 of 29 stable releases
1 version withdrawn
withdrawn after publishing
8 years old
64 releases · first in 2018
15 releases in the last 12 months
see the full history below
Release timeline
64 releases · Jul 2018 to Apr 2026Releases
latest 60 of 64-
0.10.0-rc.1827 Apr 2026 pre-release -
0.10.0-rc.1710 Mar 2026 pre-release -
0.10.0-rc.1627 Feb 2026 pre-release -
0.10.0-rc.1503 Feb 2026 pre-release -
0.10.0-rc.1425 Jan 2026 pre-releaseRelease notes
Open source →Includes
rand_corev0.10.0-rc-6 upgrade with(Try)RngCore=>
(Try)Rngrename -
0.10.0-rc.1321 Jan 2026 pre-release -
0.10.0-rc.1212 Jan 2026 pre-release -
0.10.0-rc.1103 Jan 2026 pre-release -
0.10.0-rc.1007 Nov 2025 pre-releaseNothing published for this version
-
0.10.0-rc.930 Sep 2025 pre-releaseNothing published for this version
-
0.10.0-rc.814 Sep 2025 pre-releaseNothing published for this version
-
0.10.0-rc.714 Sep 2025 pre-releaseNothing published for this version
-
0.10.0-rc.603 Sep 2025 pre-releaseNothing published for this version
-
0.10.0-rc.526 Aug 2025 pre-releaseNothing published for this version
-
0.10.0-rc.406 Aug 2025 pre-releaseNothing published for this version
-
0.10.0-rc.310 Jul 2025 pre-releaseNothing published for this version
-
0.10.0-rc.210 Jul 2025 pre-releaseNothing published for this version
-
0.10.0-rc.121 Jun 2025 pre-releaseNothing published for this version
-
0.10.0-rc.031 May 2025 pre-releaseNothing published for this version
-
0.10.0-pre.414 Feb 2025 pre-releaseNothing published for this version
-
0.10.0-pre.308 Oct 2024 pre-releaseNothing published for this version
-
0.10.0-pre.228 Jul 2024 pre-releaseNothing published for this version
-
0.10.0-pre.106 Feb 2024 pre-releaseNothing published for this version
-
0.10.0-pre.019 Jan 2024 pre-releaseNothing published for this version
-
0.9.1006 Jan 2026 -
0.9.913 Nov 2025 -
0.9.812 Mar 2025 -
0.9.726 Nov 2024Release notes
Open source →Fixed
- always validate keys in from_components
- do not crash when handling tiny keys in PKCS1v15
-
0.9.601 Dec 2023 -
0.9.528 Nov 2023Release notes
Open source →Added
- Adds
RsaPrivateKey::from_primesandRsaPrivateKey::from_p_qmethods (#386)
- Adds
-
0.9.420 Nov 2023 -
0.9.326 Oct 2023Release notes
Open source →Added
- PKCS#8/SPKI decoding trait impls for
pkcs1v15keys (#346) hazmatfeature as a replacement forexpose-internals(#352)
Changed
- Bump
serdedependency to 1.0.184 (#360)
Removed
- Unused dependencies (#357)
- PKCS#8/SPKI decoding trait impls for
-
0.9.208 May 2023 -
0.9.104 May 2023 -
0.9.027 Apr 2023Release notes
Open source →Added
- Function to get salt length from RSA PSS keys (#277)
AssociatedAlgorithmIdentifierimplementation (#278)- Random key generation for
pss::BlindedSigningKey(#295) - Impl
Signerforpss::SigningKey(#297) - Impl
core::hash::HashforRsaPrivateKey(#308) - Impl
ZeroizeOnDropforRsaPrivateKey,SigningKey,DecryptingKey(#311) u64_digitfeature; on-by-default (#313)AsRef<RsaPublicKey>impl onRsaPrivateKey(#317)
Changed
- Use namespaced features for
serde(#268) - Bump
pkcs1to v0.7,pkcs8to v0.10; MSRV 1.65 (#270) - Rename PKCS#1v1.5
*_with_prefixmethods (#290)SigningKey::new=>SigningKey::new_unprefixedSigningKey::new_with_prefix=>SigningKey::newVerifyingKey::new=>VerifyingKey::new_unprefixedVerifyingKey::new_with_prefix=>VerifyingKey::new
- Rename
Pkcs1v15Sign::new_rawtoPkcs1v15Sign::new_unprefixed(#293) - Use digest output size as default PSS salt length (#294)
- Specify
salt_lenwhen verifying PSS signatures (#294) - Ensure signatures have the expected length and don't overflow the modulus (#306)
- Improved public key checks (#307)
- Rename
CRTValue=>CrtValue(#314) - Traits under
paddingmodule now located undertraitsmodule (#315) PublicKeyParts/PrivateKeyPartsnow located undertraitsmodule (#315)
Removed
- "Unsalted" PSS support (#294)
EncryptionPrimitive/DescriptionPrimitivetraits (#300)PublicKey/PrivateKeytraits (#300)Zeroizeimpl onRsaPrivateKey; automatically zeroized on drop (#311)Deref<Target=RsaPublicKey>impl onRsaPrivateKey; useAsRefinstead (#317)expose-internalsfeature and public access to all functions it gated ([#304])
Release notes
Open source →Added
- Function to get salt length from RSA PSS keys (#277)
AssociatedAlgorithmIdentifierimplementation (#278)- Random key generation for
pss::BlindedSigningKey(#295) - Impl
Signerforpss::SigningKey(#297) - Impl
core::hash::HashforRsaPrivateKey(#308) - Impl
ZeroizeOnDropforRsaPrivateKey,SigningKey,DecryptingKey(#311) u64_digitfeature; on-by-default (#313)AsRef<RsaPublicKey>impl onRsaPrivateKey(#317)
Changed
- Use namespaced features for
serde(#268) - Bump
pkcs1to v0.7,pkcs8to v0.10; MSRV 1.65 (#270) - Rename PKCS#1v1.5
*_with_prefixmethods (#290)SigningKey::new=>SigningKey::new_unprefixedSigningKey::new_with_prefix=>SigningKey::newVerifyingKey::new=>VerifyingKey::new_unprefixedVerifyingKey::new_with_prefix=>VerifyingKey::new
- Rename
Pkcs1v15Sign::new_rawtoPkcs1v15Sign::new_unprefixed(#293) - Use digest output size as default PSS salt length (#294)
- Specify
salt_lenwhen verifying PSS signatures (#294) - Ensure signatures have the expected length and don't overflow the modulus (#306)
- Improved public key checks (#307)
- Rename
CRTValue=>CrtValue(#314) - Traits under
paddingmodule now located undertraitsmodule (#315) PublicKeyParts/PrivateKeyPartsnow located undertraitsmodule (#315)
Removed
- "Unsalted" PSS support (#294)
EncryptionPrimitive/DecriptionPrimitivetraits (#300)PublicKey/PrivateKeytraits (#300)Zeroizeimpl onRsaPrivateKey; automatically zeroized on drop (#311)Deref<Target=RsaPublicKey>impl onRsaPrivateKey; useAsRefinstead (#317)expose-internalsfeature and public access to all functions it gated ([#304])
-
0.9.0-rc.025 Apr 2023 pre-releaseNothing published for this version
-
0.9.0-pre.219 Apr 2023 pre-releaseNothing published for this version
-
0.9.0-pre.105 Apr 2023 pre-releaseNothing published for this version
-
0.9.0-pre.006 Mar 2023 pre-releaseNothing published for this version
-
0.8.202 Mar 2023 -
0.8.121 Jan 2023 -
0.8.017 Jan 2023 -
0.8.0-rc.011 Jan 2023 pre-releaseNothing published for this version
-
0.8.0-pre.017 Dec 2022 pre-releaseNothing published for this version
-
0.7.215 Nov 2022Release notes
Open source → -
0.7.131 Oct 2022Release notes
Open source → -
0.7.010 Oct 2022 withdrawnRelease notes
Open source →NOTE: when computing signatures with this release, make sure to enable the
oidcrate feature of the digest crate you are using when computing the signature (e.g.sha2,sha3). If theoidfeature doesn't exist, make sure you're using the latest versions.Added
pkcs1v15andpssmodules withSigningKey/VerifyingKeytypes (#174, #195, #202, #207, #208)- 4096-bit default max
RsaPublicKeysize (#176) RsaPublicKey::new_with_max_size(#176)RsaPublicKey::new_unchecked(#206)
Changed
- MSRV 1.57 (#162)
- Bump
pkcs1to 0.4 (#162) - Bump
pkcs8to 0.9 (#162) RsaPrivateKey::from_componentsis now fallible (#167)- pkcs1v15: use
AssociatedOidfor getting the RSA prefix (#183)
Removed
-
0.7.0-rc.105 Oct 2022 pre-releaseNothing published for this version
-
0.7.0-rc.016 Sep 2022 pre-releaseNothing published for this version
-
0.7.0-pre24 May 2022 pre-releaseNothing published for this version
-
0.6.111 Apr 2022Nothing published for this version
-
0.6.008 Apr 2022Nothing published for this version
-
0.6.0-pre10 Mar 2022 pre-releaseNothing published for this version
-
0.5.027 Jul 2021Nothing published for this version
-
0.4.126 Jul 2021Nothing published for this version
-
0.4.028 Mar 2021Nothing published for this version
-
0.3.011 Jun 2020Nothing published for this version
-
0.2.011 Dec 2019Nothing published for this version
-
0.1.413 Oct 2019Nothing published for this version
-
0.1.326 Mar 2019Nothing published for this version