152 Commits

Author SHA1 Message Date
Tony Arcieri a8c7206efe rfc6979 v0.6.0-pre.0 (#1373)
The changes in #1360 were breaking, so this release bumps the minor
version.

It might be possible to get some additional breaking changes in as well,
if we can land RustCrypto/crypto-bigint#1266.
2026-06-06 13:00:38 -06:00
Tony Arcieri 1b47ec5298 dsa: impl Generate for Components and SigningKey (#1372)
This renames the old `SigningKey::generate` to
`try_generate_from_rng_with_components`, having the new one generate
random `Components` with a 3072-bit modulus size, which is now the
`Default` for `KeySize`.
2026-06-06 11:27:17 -06:00
Arthur Gautier 43d9831ccf rfc6979: allow the use of non-block_api-backed hashes (#1360)
Never mind, I'll take care of it
2026-06-06 09:58:40 -06:00
Tony Arcieri 275aea5146 dsa: add TryCryptoRng support (#1367)
This renames the previous `generate` methods to
`try_generate_from_rng_with_key_size` and changes them to accept a
`TryCryptoRng`, returning a `Result` with potential RNG errors.

This helps clear the way for implementing the `Generate` trait from
`crypto-common`, which defines its own `generate` method which takes
no parameters, using the system RNG and default key size.
2026-06-02 15:20:32 -06:00
Tony Arcieri ebe040ee89 rfc6979 v0.5.0 (#1337) 2026-05-06 12:55:52 -06:00
Tony Arcieri e0d47990aa Update copyright year to 2026 (#1322) 2026-05-02 18:10:44 -06:00
Tony Arcieri 088a4fe7a4 Bump signature dependency to v3 (#1321)
Release PR: RustCrypto/traits#2400
2026-05-02 15:16:18 -06:00
Tony Arcieri 58bae19939 Cut new prereleases (#1319)
Releases the following, which all now depend either directly or
transitively on `pkcs8` v0.11 (which had breaking changes in the final
release)

- `dsa` v0.7.0-rc.15
- `ecdsa` v0.17.0-rc.18
- `ed25519` v3.0.0-rc.5
- `ed448` v0.5.0-rc.6
- `ml-dsa` v0.1.0-rc.9
- `slh-dsa` v0.2.0-rc.5
- `xmss` v0.1.0-pre.1
2026-04-28 10:08:48 -06:00
Tony Arcieri 86c035a74f Bump pkcs8 dependency to v0.11 (#1316)
Release PR: RustCrypto/formats#2314
2026-04-28 08:32:20 -06:00
Tony Arcieri d8b1875a9f Bump pkcs8 to v0.11.0-rc.12 (#1312) 2026-04-27 13:07:45 -06:00
dependabot[bot] ff2cf64b0c build(deps): bump sha1 from 0.11.0-rc.5 to 0.11 (#1273)
Release PR: RustCrypto/hashes#810
2026-03-27 11:15:30 -06:00
Tony Arcieri abb0c54f39 Bump sha2 dependency to v0.11 (#1267)
Release PR: RustCrypto/hashes#806
2026-03-25 12:44:11 -06:00
dependabot[bot] b9b41d61b4 build(deps): bump crypto-primes from 0.7.0-pre.9 to 0.7 (#1250) 2026-03-10 11:13:59 -06:00
Tony Arcieri d33ead087d dsa: bump crypto-bigint to v0.7 final release (#1247)
Release PR: RustCrypto/crypto-bigint#1218
2026-03-09 10:13:53 -06:00
Tony Arcieri 6ad289f648 dsa v0.7.0-rc.14 (#1238) 2026-03-02 08:51:30 -07:00
Tony Arcieri 8699f8f010 dsa+ecdsa: bump digest to v0.11 (#1237)
Release PR: RustCrypto/traits#2300
2026-03-02 08:39:12 -07:00
Tony Arcieri c7fab72db3 dsa: bump crypto-bigint to v0.7.0-rc.28 (#1233)
Updates to use `ConcatenatingMul`
2026-02-26 16:14:01 -07:00
Tony Arcieri b560da796b Bump der to v0.8 (#1232)
Release PR: RustCrypto/formats#2234
2026-02-26 08:49:04 -07:00
Tony Arcieri b54e7ba925 dsa: bump crypto-bigint to v0.7.0-rc.27 (#1222)
Also bumps `crypto-primes` to v0.7.0-pre.9
2026-02-12 17:55:54 -07:00
Tony Arcieri 61d0fd34e8 dsa v0.7.0-rc.13 (#1219) 2026-02-11 17:12:46 -07:00
Tony Arcieri 2fbbca70ea dsa: bump crypto-bigint to v0.7.0-rc.26 (#1217)
Includes changes to the default `Mul` and `Add` impls so they are no
longer widening, necessitating a switch to
`concatenating_add`/`concatenating_mul`.

See RustCrypto/crypto-bigint#1177
2026-02-11 09:02:14 -07:00
dependabot[bot] f5515b2ab6 build(deps): bump chacha20 from 0.10.0-rc.10 to 0.10.0-rc.11 (#1210) 2026-02-05 07:49:56 -07:00
Tony Arcieri a8fb994c39 Bump dependency requirements in Cargo.toml files (#1206)
Updates the following dependency requirements:
- `cipher` v0.5.0-rc.8
- `crypto-bigint` v0.7.0-rc.25
- `ctr` v0.10.0-rc.3
- `digest` v0.11.0-rc.11
- `getrandom` v0.4
- `hmac` v0.13.0-rc.5
- `sha1` v0.11.0-rc.5
- `sha2` v0.11.0-rc.5
- `sha3` v0.11.0-rc.7

This also does the following:
- `ecdsa`: `EncodedPoint` => `Sec1Point` (RustCrypto/traits#2264)
- `slh-dsa`: adds back to workspace with `rand` sourced from `git`

Releases the following:
- `dsa` v0.7.0-rc.12
- `ecdsa` v0.17.0-rc.16
- `ed25519` v0.3.0-rc.4
- `ed448` v0.5.0-rc.5
- `lms-signature` v0.1.0-rc.2
- `ml-dsa` v0.1.0-rc.6
- `rfc6979` v0.5.0-rc.5
- `slh-dsa` v0.2.0-rc.4
2026-02-02 13:10:39 -07:00
Tony Arcieri 72b44e49c6 Bump getrandom to v0.4 (#1205)
Release PR: rust-random/getrandom#798
2026-02-02 10:16:09 -07:00
Tony Arcieri a0473fb042 Bump rand_core to v0.10.0 (#1197)
NOTE: temporarily excludes `slh-dsa` from the workspace until `rand` is
bumped because it is the only crate that depends on it

Release notes:

https://github.com/rust-random/rand_core/releases/tag/v0.10.0

Also bumps the following:
- `chacha20` v0.10.0-rc.10
- `cipher` v0.5.0-rc.7
- `crypto-bigint` v0.7.0-rc.24
- `crypto-common` v0.2.0-rc.14
- `digest` v0.11.0-rc.10
- `elliptic-curve` v0.14.0-rc.27
- `signature` v3.0.0-rc.10
2026-02-01 21:47:05 -07:00
Tony Arcieri 942de7faa6 Cut new releases (#1188)
Releases new versions of everything except `dsa` and `ecdsa` (since we
previously released those) which include the `rand_core` v0.10.0-rc-6
upgrade (as well as the associated `signature` v3.0.0-rc.9 release).

The `ml-dsa` crate contains a fix for #1176.

Releases the following:
- `ed25519` v3.0.0-rc.3
- `ed448` v0.5.0-rc.3
- `lms-signature` v0.1.0-rc.1
- `ml-dsa` v0.1.0-rc.4
- `rfc6979` v0.5.0-rc.4
- `slh-dsa` v0.2.0-rc.3
2026-01-27 14:34:22 -07:00
Tony Arcieri c147ef027f Bump dependencies (#1182)
Updates the following dependency requirements:
- `cipher` v0.5.0-rc.6
- `digest` v0.11.0-rc.9
- `hmac` v0.13.0-rc.4
- `signature` v3.0.0-rc.9
- `pkcs8` v0.11.0-rc.10
- `sha2` v0.11.0-rc.4
- `sha3` v0.11.0-rc.6
2026-01-26 09:41:25 -07:00
Tony Arcieri 3f69e4e2ad dsa v0.7.0-rc.11 (#1174) 2026-01-25 13:38:33 -07:00
Tony Arcieri e22c4fc5a2 dsa: bump dependencies (#1173)
Upgrades the following dependency requirements:
- `digest` v0.11.0-rc.8
- `crypto-bigint` v0.7.0-rc.22
- `crypto-primes` v0.7.0-pre.8
- `getrandom` v0.4.0-rc.1
- `pkcs8` v0.11.0-rc.10
- `sha2` v0.11.0-rc.4
- `signature` v3.0.0-rc.9
2026-01-25 13:01:53 -07:00
Tony Arcieri 66295315cf Bump rand_core to v0.10.0-rc-6 (#1170)
Renames `(Try)RngCore` => `(Try)Rng`
2026-01-24 15:30:36 -07:00
Tony Arcieri ec88a73c79 dsa v0.7.0-rc.10 (#1168) 2026-01-21 12:49:06 -07:00
Arthur Gautier 3edd7d6dbf chore(deps): bump crypto-primes to 0.7.0-pre.7 (#1165)
Remove `patch.crates-io` on non-main branches.
2026-01-20 17:18:46 -07:00
Tony Arcieri c13a0d808f Upgrade dependencies (#1163)
- `digest` v0.11.0-rc.7
- `elliptic-curve` v0.14.0-rc.23
- `signature` v3.0.0-rc.8
2026-01-20 12:14:02 -07:00
Arthur Gautier 4b8dee598e chore(deps): bump rand_core to 0.10.0-rc-5 (#1161) 2026-01-20 11:29:27 -07:00
Tony Arcieri 74e20a93fa dsa v0.7.0-rc.9 (#1149) 2026-01-12 14:40:12 -07:00
Tony Arcieri 837975e56c dsa: bump crypto-bigint to v0.7.0-rc.16 (#1148)
Includes changes to the `BoxedMontyForm::new` API, and also bumps
`crypto-primes` to v0.7.0-rc.6 which includes the associated updates
to that crate for the API change.
2026-01-12 13:34:07 -07:00
Steven Dee 4112075105 dsa: decouple precise RNG state from tests (#1139)
The `signature` test was too tightly coupled with the precise RNG
output, in effect not just testing the DSA signature/verification logic
but also testing that the exact bit sequence was produced by the
dependent crate.

We already have tests against deterministic keys and signatures at
`tests/deterministic.rs`, so modify `tests/signature.rs` to instead
generate a random keypair using the system RNG, then generate a
signature with that keypair, and then verify that signature.

The existing hard-coded signatures have been left in place as they are
used to test PKCS decoding and encoding.
2026-01-05 17:33:18 -07:00
Tony Arcieri 223d52886b dsa v0.7.0-rc.8 (#1129) 2026-01-03 14:23:02 -07:00
Tony Arcieri 05b77d63b1 dsa: bump crypto-primes to v0.7.0-pre.5 (#1128) 2026-01-03 13:19:08 -07:00
Tony Arcieri 48b7f61e52 RNG cleanup (#1127)
Switches every crate except `slh-dsa` away from a direct `rand`
dependency they don't need. Right now we can't publish any crate that
directly depends on `rand`.

Uses a consistent default strategy for RNGs: `SysRng`, sourced from the
`getrandom` or as `rand::rngs::SysRng` in the case of `slh-dsa` which is
actually using `rand`-specific features.

If this causes too much of a slowdown, we can re-evaluate and go (back)
to `ChaCha8Rng` where needed for testing.
2025-12-29 21:07:55 -07:00
Tony Arcieri 81149cc5ae Bump crypto-bigint to v0.7.0-rc.12 (#1124)
This includes a migration from `subtle` to `ctutils`
2025-12-29 09:45:05 -07:00
Tony Arcieri a8df31793c Bump signature dependency to v3.0.0-rc.6 (#1122)
Also bumps the `digest` crate dependency to v0.11.0-rc.5 and `rand_core`
to v0.10.0-rc-3
2025-12-27 16:15:23 -07:00
Tony Arcieri 072a7087c2 dsa v0.7.0-rc.7 (#1105) 2025-11-06 17:43:15 -07:00
Tony Arcieri dfc63509b6 dsa: bump crypto-primes to v0.7.0-pre.4 (#1104) 2025-11-06 17:36:04 -07:00
Tony Arcieri 29d50476b4 Bump pkcs8 to v0.11.0-rc.8 (#1101) 2025-11-06 13:36:33 -07:00
Tony Arcieri 293c7d99f7 rfc6979 v0.5.0-rc.3 (#1100) 2025-11-06 07:59:00 -07:00
Tony Arcieri d9fc3ebd3b dsa: bump crypto-bigint to v0.7.0-rc.10 (#1098)
Switches to the crate release
2025-11-05 20:49:15 -07:00
Tony Arcieri e68b77acbd Bump rand_core to v0.10.0-rc-2 (#1097)
This also accordingly bumps all of the underlying crates to versions
which (transitively) depend on the `rand`/`rand_core` v0.10 release
series
2025-11-05 17:44:01 -07:00
Tony Arcieri fe23a8cf66 rfc6979 v0.5.0-rc.2 (#1089) 2025-10-22 12:28:54 -06:00
Tom French 21e60bad04 chore: apply unreachable_pub lint (#1062) 2025-10-16 12:22:45 -06:00