The National Institute of Standards and Technologies of the USA (NIST) has introduced the first three standards for cryptoalgorithms that are resistant to selection on a quantum computer. The initial standardized algorithm, known as Crystals-Kyber, focuses on key encapsulation for encrypting data exchange. Additionally, two other algorithms, Crystals-Dilithium and SPHINCS+, offer options for creating digital signatures used for authentication purposes. To prevent confusion, the standardized algorithms have been renamed to ML-Kem, ML-DSA, and SLH-DSA. These selected algorithms were developed since 2016 and were winners in an earlier NIST competition aimed at post-quantum cryptography algorithm development.
The rapid development of quantum computers presents a significant challenge as they are much faster at solving tasks like factoring large numbers (RSA) and calculating discrete logarithms of elliptical curve points (ECDSA). These tasks form the basis of modern asymmetric encryption algorithms for public keys, which are currently difficult to solve on classic processors. While quantum computers are not yet capable of breaking traditional encryption algorithms and digital signatures like ECDSA, it is anticipated that this may change in the coming decade.
Here are the accepted standards:
- FIPS 203 – considered the main standard for data encryption using the Crystals-Kyber algorithm (ML-Kem-Module-lattice Key-Encapsulation Mechanism) to facilitate key exchange between parties involved in encryption and data decoding. This algorithm is based on cryptographic methods that rely on solving problems in lattice theory, with comparable solution times on both ordinary and quantum computers. The algorithm offers the advantage of relatively low key sizes and high speed.
- FIPS 204 – the primary standard for generating digital signatures based on the Crystals-Dilithium algorithm (ML-DSA-Module-lattice digital signature algorithm), which is also lattice-based.
- FIPS 205