PackageTrack
Sign in Get early access

ml-kem

Pure Rust implementation of the Module-Lattice-Based Key-Encapsulation Mechanism Standard (formerly known as Kyber) as described in FIPS 203

0.3.2 5.1M downloads/mo #4501 most downloaded on crates.io RustCrypto/KEMs

What this package is like to depend on

Last release 3 months ago

10 May 2026

Release timing varies

gaps range from 1 weeks to 9 months

Nearly every release is documented

notes for 7 of 7 stable releases

3 versions withdrawn

withdrawn after publishing

3 years old

22 releases · first in 2023

15 releases in the last 12 months

see the full history below

Release timeline

22 releases · Aug 2023 to May 2026
2024 2025 2026
Release Pre-release Withdrawn

Releases

latest 22
  1. 0.3.2 10 May 2026
    Release notes

    Added

    • Optional on-by-default heap offload support (#310)
    Open source →
    Release notes

    Added

    • Optional on-by-default heap offload support (#310)
    Open source →
  2. 0.3.0 28 Apr 2026
    Release notes

    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)
    Open source →
    Release notes

    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)
    Open source →
  3. 0.3.0-rc.2 03 Apr 2026 pre-release

    Nothing published for this version

  4. 0.3.0-rc.1 26 Mar 2026 pre-release

    Nothing published for this version

  5. 0.3.0-rc.0 05 Feb 2026 pre-release

    Nothing published for this version

  6. 0.3.0-pre.7 03 Feb 2026 pre-release

    Nothing published for this version

  7. 0.3.0-pre.6 31 Jan 2026 pre-release

    Nothing published for this version

  8. 0.3.0-pre.5 25 Jan 2026 pre-release

    Nothing published for this version

  9. 0.3.0-pre.4 23 Jan 2026 pre-release

    Nothing published for this version

  10. 0.3.0-pre.3 10 Jan 2026 pre-release

    Nothing published for this version

  11. 0.3.0-pre.2 31 Oct 2025 pre-release

    Nothing published for this version

  12. 0.3.0-pre.1 27 Oct 2025 pre-release

    Nothing published for this version

  13. 0.3.0-pre.0 25 Oct 2025 pre-release

    Nothing published for this version

  14. 0.3.0-pre 21 Jan 2025 pre-release

    Nothing published for this version

  15. 0.2.3 17 Feb 2026
    Release notes

    Fixed

    • Use doc_cfg instead of doc_auto_cfg (#265)
    Open source →
  16. 0.2.2 24 Jan 2026
    Release notes

    Changed

    • Pin kem crate dependency to =0.3.0-pre.0 (#194)
    Open source →
  17. 0.2.1 17 Aug 2024
    Release notes

    Added

    • zeroize feature (#51)
    Open source →
  18. 0.2.0 16 Aug 2024
    Release notes

    Added

    • DecapsulationKey::encapsulation_key (#48)
    • Re-export kem::{Decapsulate, Encapsulate} under kem module (#49)
    • Re-exports hybrid-array as array (#49)

    Changed

    • Update to FIPS 203 final (#47)
    Open source →
  19. 0.1.1 04 Jun 2024
    Release notes

    Security

    • Fix potential "Kyberslash" attack (#18)
    Open source →
  20. 0.1.0 12 Apr 2024 withdrawn
    Release notes
    • Initial release
    Open source →
  21. 0.1.0-alpha 04 Mar 2024 pre-release withdrawn

    Nothing published for this version

  22. 0.0.1 24 Aug 2023 withdrawn

    Nothing published for this version

Every package, every release, already written down.

The archive is open and free. Watching your own project is what we are building next.

Browse the archive