From 82ce491436d34406e30f6396db0218de2823f0ac Mon Sep 17 00:00:00 2001 From: pinkforest <36498018+pinkforest@users.noreply.github.com> Date: Sat, 7 Nov 2026 18:51:40 +1300 Subject: [PATCH 1/4] chore: Add 0.10 changelog --- CHANGELOG.md | 79 ++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 79 insertions(+) diff --git a/CHANGELOG.md b/CHANGELOG.md index 5d091bdb..85635552 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -4,6 +4,85 @@ All notable changes to this project will be documented in this file. The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/), and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html). +## 0.10.0 (2026-11-7) +### Added +- Implement crypto_common::Generate for RsaPrivateKey ([#780]) +- Add signature max size restrictions ([#767]) +- Impl `TryFrom>` for Signature types ([#764]) +- Minimum modulus size checks ([#760]) +- Add `RsaPrivateKey::from_components_with_large_exponent ([#648]) +- Support for cryptographic operations with larger keys ([#595]) +- Add `RsaPrivateKey::as_public_key()` convenience method ([#592]) +- error: impl core::error::Error ([#530]) +- Implement MultipartSign/Verify ([#525]) + +### Fixed +- Fix constant time implementation problems ([#711]) +- Fix PKCS1v1.5 constant-time issues ([#626]) +- Propagate precompute errors from private key constructors ([#782]) +- pss: prevent verification panics on invalid lengths ([#769]) +- Reduce CRT inputs with fixed-width Montgomery arithmetic ([#756]) +- Choose private prime and CRT exponent widths from public parameters ([#755]) +- PSS: Improve interoperability with optional auto salt length detection during verification ([#546]) + +### Changed +- Deprecate `Rsa` prefix from `PublicKey` and `PrivateKey` ([#781]) +- Gate PKCS1 v1.5 as opt-in via `feature=pkcs1v15` ([#778]) +- Replace `CryptoRng` with `TryCryptoRng` ([#779]) +- Reject repeated prime factors in private keys ([#772], [#774]) +- Blind signing paths by default; deprecate pss::BlindedSigningKey ([#758]) +- Reject private exponents greater or equal to n ([#738]) +- Implement RFC8017 rules for PSS message width ([#725]) +- Raise max modulus size to 8192-bits ([#681]) +- pss+oaep: remove `DynDigest` ([#593]) +- Gate PKCS#1/PKCS#8 support on encoding feature ([#537]) +- Remove PKCS#8 blanket impls for PKCS#1 traits ([#538]) +- Remove deprecated pkcs1v15 methods ([#524]) +- Bump `rand_core` dependency to v0.10 +- Bump `pkcs1` dependency to v0.8 ([#766]) +- Bump `signature` dependency to v3 ([#693]) +- Bump `pkcs8` depenency to v0.11 ([#688]) +- Bump `spki` crate dependency to v0.8 ([#684]) + +[#524]: https://github.com/RustCrypto/RSA/pull/524 +[#525]: https://github.com/RustCrypto/RSA/pull/525 +[#530]: https://github.com/RustCrypto/RSA/pull/530 +[#538]: https://github.com/RustCrypto/RSA/pull/538 +[#537]: https://github.com/RustCrypto/RSA/pull/537 +[#546]: https://github.com/RustCrypto/RSA/pull/546 +[#593]: https://github.com/RustCrypto/RSA/pull/593 +[#592]: https://github.com/RustCrypto/RSA/pull/592 +[#648]: https://github.com/RustCrypto/RSA/pull/648 +[#595]: https://github.com/RustCrypto/RSA/pull/595 +[#681]: https://github.com/RustCrypto/RSA/pull/681 +[#684]: https://github.com/RustCrypto/RSA/pull/684 +[#688]: https://github.com/RustCrypto/RSA/pull/688 +[#693]: https://github.com/RustCrypto/RSA/pull/693 +[#716]: https://github.com/RustCrypto/RSA/pull/716 +[#725]: https://github.com/RustCrypto/RSA/pull/725 +[#738]: https://github.com/RustCrypto/RSA/pull/738 +[#626]: https://github.com/RustCrypto/RSA/issues/626 +[#711]: https://github.com/RustCrypto/RSA/issues/711 +[#752]: https://github.com/RustCrypto/RSA/pull/752 +[#755]: https://github.com/RustCrypto/RSA/pull/755 +[#756]: https://github.com/RustCrypto/RSA/pull/756 +[#758]: https://github.com/RustCrypto/RSA/pull/758 +[#760]: https://github.com/RustCrypto/RSA/pull/760 +[#766]: https://github.com/RustCrypto/RSA/pull/766 +[#764]: https://github.com/RustCrypto/RSA/pull/764 +[#767]: https://github.com/RustCrypto/RSA/pull/767 +[#769]: https://github.com/RustCrypto/RSA/pull/769 +[#770]: https://github.com/RustCrypto/RSA/pull/770 +[#771]: https://github.com/RustCrypto/RSA/pull/771 +[#772]: https://github.com/RustCrypto/RSA/pull/772 +[#773]: https://github.com/RustCrypto/RSA/pull/773 +[#774]: https://github.com/RustCrypto/RSA/pull/774 +[#778]: https://github.com/RustCrypto/RSA/pull/778 +[#779]: https://github.com/RustCrypto/RSA/pull/779 +[#780]: https://github.com/RustCrypto/RSA/pull/780 +[#781]: https://github.com/RustCrypto/RSA/pull/781 +[#782]: https://github.com/RustCrypto/RSA/pull/782 + ## 0.9.8 (2025-03-12) ### Added - Doc comments to specify the `rand` version ([#473]) From afd3b77fbd93acac72609180ec2853f0825f85f6 Mon Sep 17 00:00:00 2001 From: pinkforest <36498018+pinkforest@users.noreply.github.com> Date: Sat, 7 Nov 2026 18:54:19 +1300 Subject: [PATCH 2/4] Add 638 --- CHANGELOG.md | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 85635552..61b51be6 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -6,14 +6,15 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 ## 0.10.0 (2026-11-7) ### Added -- Implement crypto_common::Generate for RsaPrivateKey ([#780]) +- Add `PrivateKey/PublicKey` inherent methods for algorithms ([#638]) +- Implement `crypto_common::Generate` for `RsaPrivateKey` ([#780]) - Add signature max size restrictions ([#767]) - Impl `TryFrom>` for Signature types ([#764]) - Minimum modulus size checks ([#760]) - Add `RsaPrivateKey::from_components_with_large_exponent ([#648]) - Support for cryptographic operations with larger keys ([#595]) - Add `RsaPrivateKey::as_public_key()` convenience method ([#592]) -- error: impl core::error::Error ([#530]) +- error: impl `core::error::Error` ([#530]) - Implement MultipartSign/Verify ([#525]) ### Fixed @@ -44,6 +45,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 - Bump `pkcs8` depenency to v0.11 ([#688]) - Bump `spki` crate dependency to v0.8 ([#684]) +[#638]: https://github.com/RustCrypto/RSA/pull/638 [#524]: https://github.com/RustCrypto/RSA/pull/524 [#525]: https://github.com/RustCrypto/RSA/pull/525 [#530]: https://github.com/RustCrypto/RSA/pull/530 From 1a468a83aae91375172fcf72d9daaa1b62320aeb Mon Sep 17 00:00:00 2001 From: pinkforest <36498018+pinkforest@users.noreply.github.com> Date: Sat, 7 Nov 2026 18:56:53 +1300 Subject: [PATCH 3/4] fix typo --- CHANGELOG.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 61b51be6..0017a700 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -42,7 +42,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 - Bump `rand_core` dependency to v0.10 - Bump `pkcs1` dependency to v0.8 ([#766]) - Bump `signature` dependency to v3 ([#693]) -- Bump `pkcs8` depenency to v0.11 ([#688]) +- Bump `pkcs8` dependency to v0.11 ([#688]) - Bump `spki` crate dependency to v0.8 ([#684]) [#638]: https://github.com/RustCrypto/RSA/pull/638 From 1667eba82ac36b18d1352693ee7f55400d6690f9 Mon Sep 17 00:00:00 2001 From: pinkforest <36498018+pinkforest@users.noreply.github.com> Date: Sat, 7 Nov 2026 20:14:46 +1300 Subject: [PATCH 4/4] Minor formatting nit --- CHANGELOG.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 0017a700..420eb1d8 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -11,7 +11,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 - Add signature max size restrictions ([#767]) - Impl `TryFrom>` for Signature types ([#764]) - Minimum modulus size checks ([#760]) -- Add `RsaPrivateKey::from_components_with_large_exponent ([#648]) +- Add `RsaPrivateKey::from_components_with_large_exponent` ([#648]) - Support for cryptographic operations with larger keys ([#595]) - Add `RsaPrivateKey::as_public_key()` convenience method ([#592]) - error: impl `core::error::Error` ([#530])