#post-quantum-cryptography #key-exchange #post-quantum #quantum-computer #security-key #secure-communication #kyber

no-std ml-kem

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

3 unstable releases

0.2.1 Aug 17, 2024
0.2.0 Aug 16, 2024
0.1.1 Jun 4, 2024
0.1.0 Apr 12, 2024
0.0.1 Aug 24, 2023

#2195 in Cryptography

Download history 105/week @ 2024-09-19 65/week @ 2024-09-26 140/week @ 2024-10-03 1143/week @ 2024-10-10 4830/week @ 2024-10-17 3769/week @ 2024-10-24 2520/week @ 2024-10-31 3932/week @ 2024-11-07 4234/week @ 2024-11-14 4548/week @ 2024-11-21 3644/week @ 2024-11-28 3512/week @ 2024-12-05 6326/week @ 2024-12-12 3788/week @ 2024-12-19 820/week @ 2024-12-26 4144/week @ 2025-01-02

15,956 downloads per month
Used in 6 crates (5 directly)

Apache-2.0 OR MIT

89KB
2K SLoC

RustCrypto: ML-KEM

crate Docs Build Status Apache2/MIT licensed Rust Version Project Chat

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

Documentation

About

ML-KEM is a cutting-edge post-quantum secure key encapsulation mechanism (KEM). KEMs play a vital role in modern cryptographic systems by securely exchanging keys between parties, ensuring confidential communication over insecure channels.

Originally developed as Kyber, ML-KEM inherits the foundation of its predecessor while introducing refinements and optimizations to enhance its security and efficiency. ML-KEM and Kyber are intimately related, with ML-KEM representing a refined and evolved version of the original Kyber algorithm. While Kyber pioneered lattice-based cryptography and provided a reliable framework for secure key exchange, ML-KEM builds upon this foundation, incorporating advancements in cryptographic research and addressing potential vulnerabilities.

In summary, ML-KEM stands at the forefront of post-quantum cryptography, offering enhanced security and efficiency in key encapsulation mechanisms to safeguard sensitive communications in an era where quantum computers potentially pose a looming threat.

⚠️ Security Warning

The implementation contained in this crate has never been independently audited!

USE AT YOUR OWN RISK!

Minimum Supported Rust Version

This crate requires Rust 1.74 at a minimum.

We may change the MSRV in the future, but it will be accompanied by a minor version bump.

License

Licensed under either of:

at your option.

Contribution

Unless you explicitly state otherwise, any contribution intentionally submitted for inclusion in the work by you, as defined in the Apache-2.0 license, shall be dual licensed as above, without any additional terms or conditions.

Dependencies

~1.5MB
~13K SLoC