Skip to content

ml-kem: replace generate_deterministic with from_seed#138

Merged
tarcieri merged 1 commit intomasterfrom
ml-kem/kemcore-from-seed
Oct 25, 2025
Merged

ml-kem: replace generate_deterministic with from_seed#138
tarcieri merged 1 commit intomasterfrom
ml-kem/kemcore-from-seed

Conversation

@tarcieri
Copy link
Copy Markdown
Member

These two APIs are effectively equivalent, it's just from_seed uses the API standardized in FIPS 203.

The API is not feature-gated on deterministic, which now only gates deterministic encryption.

The trait signature of KemCore now is the same regardless of whether the deterministic feature is enabled.

These two APIs are effectively equivalent, it's just `from_seed` uses
the API standardized in FIPS 203.

The API is not feature-gated on `deterministic`, which now only gates
deterministic encryption.

The trait signature of `KemCore` now is the same regardless of whether
the `deterministic` feature is enabled.
@tarcieri tarcieri force-pushed the ml-kem/kemcore-from-seed branch from c3e0b5f to bea9654 Compare October 25, 2025 17:43
@tarcieri tarcieri merged commit 7a63ac3 into master Oct 25, 2025
23 checks passed
@tarcieri tarcieri deleted the ml-kem/kemcore-from-seed branch October 25, 2025 17:48
@tarcieri tarcieri mentioned this pull request Apr 28, 2026
tarcieri added a commit that referenced this pull request Apr 28, 2026
## Added
- `Seed` support e.g. `DecapsulationKey::from_seed` (#133, #138)
- PKCS#8 support (#135)
- `KeyInit`, `KeySizeUser`, and `KeyExport` impls for decapsulation keys
  (#156, #228)
- Parameter set modules: `ml_kem_512`, `mk_kem_768`, `mk_kem_1024`
  (#162)
- `DecapsulationKey::from_expanded` deprecated compatibility support
  (#163)
- `TryKeyInit` and `KeyExport` impls for encapsulation keys (#188)
- Validations against Wycheproof test vectors (#213, #214, #215,
  #217)
- Implement `kem::Kem` trait (#223)
- Support for `kem::FromSeed` trait (#255)

## Changed
- Edition changed to 2024 and MSRV bumped to 1.85 (#118)
- Relax MSRV policy and allow MSRV bumps in patch releases
- Upgrade `hybrid-array` dependency to 0.4 (#129)
- Extract `module-lattice` crate (#199, #202, #204, #209,
  #210, #211, #212, #218, #219, #220)
- Replace `EncodedSizeUser` with `ExpandedKeyEncoding` (#226)
- Bump `getrandom` to v0.4 (#245)
- Bump `rand_core` to v0.10 (#245)
- Migrate from `subtle` to `ctutils` (#277)
- Bump `sha3` dependency to v0.11 (#282)
- Bump `kem` dependency to v0.3 (#283)
- Bump `pkcs8` dependency to v0.11 (#291)

## Fixed
- Validate encryption/encapsulation keys (#179)
- Validate expanded decapsulation key hash (#207)

## Removed
- `Kem` struct and `KemCore` trait - replaced by `kem::Kem` (#223)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant