Commercial National Security Algorithm Suite

Set of cryptographic algorithms by the NSA

The Commercial National Security Algorithm Suite (CNSA) is a set of cryptographic algorithms promulgated by the National Security Agency as a replacement for NSA Suite B Cryptography algorithms. It serves as the cryptographic base to protect US National Security Systems information up to the top secret level, while the NSA plans for a transition to quantum-resistant cryptography.[1][2][3][4][5][6]

Timeline for the transition to CNSA 2.0

The suite includes:

The CNSA transition is notable for moving RSA from a temporary legacy status, as it appeared in Suite B, to supported status. It also did not include the Digital Signature Algorithm. This, and the overall delivery and timing of the announcement, in the absence of post-quantum standards, raised considerable speculation about whether NSA had found weaknesses e.g. in elliptic-curve algorithms or others, or was trying to distance itself from an exclusive focus on ECC for non-technical reasons.[7][8][9]

In September 2022, the NSA announced CNSA 2.0, which includes its first recommendations for post-quantum cryptographic algorithms.[10]

CNSA 2.0 includes[2]:

  • Advanced Encryption Standard with 256 bit keys
  • CRYSTALS-Kyber and CRYSTALS-Dilithium with Level V parameters
  • SHA-2 with 384 or 512 bits
  • eXtended Merkle Signature Scheme (XMSS) and Leighton-Micali Signatures (LMS) with all parameters approved, with SHA256/192 recommended

Note that compared to CNSA 1.0, CNSA 2.0:

  • Suggests separate post-quantum algorithms (XMSS/LMS) for software/firmware signing for use immediately
  • Allows SHA-512
  • Announced the selection of CRYSTALS-Kyber and CRYSTALS-Dilithium early, with the expectation that they will be mandated only when the final standards and FIPS-validated implementations are released.
    • RSA, Diffie-Hellman, and elliptic curve cryptography will be deprecated at that time.

The CNSA 2.0 and CNSA 1.0 algorithms, detailed functions descriptions, specifications, and parameters are below:[11]

CNSA 2.0

Algorithm Function Specification Parameters
Advanced Encryption Standard (AES) Symmetric block cipher for information protection FIPS PUB 197 Use 256-bit keys for all classification levels.
CRYSTALS-Kyber Asymmetric algorithm for key establishment TBD Use Level V parameters for all classification levels.
CRYSTALS-Dilithium Asymmetric algorithm for digital signatures TBD Use Level V parameters for all classification levels.
Secure Hash Algorithm (SHA) Algorithm for computing a condensed representation of information FIPS PUB 180-4 Use SHA-384 or SHA-512 for all classification levels.
Leighton-Micali Signature (LMS) Asymmetric algorithm for digitally signing firmware and software NIST SP 800-208 All parameters approved for all classification levels. SHA256/192 recommended.
Xtended Merkle Signature Scheme (XMSS) Asymmetric algorithm for digitally signing firmware and software NIST SP 800-208 All parameters approved for all classification levels.

CNSA 1.0

Algorithm Function Specification Parameters
Advanced Encryption Standard (AES) Symmetric block cipher for information protection FIPS PUB 197 Use 256-bit keys for all classification levels.
Elliptic Curve Diffie-Hellman (ECDH) Key Exchange Asymmetric algorithm for key establishment NIST SP 800-56A Use Curve P-384 for all classification levels.
Elliptic Curve Digital Signature Algorithm (ECDSA) Asymmetric algorithm for digital signatures FIPS PUB 186-4 Use Curve P-384 for all classification levels.
Secure Hash Algorithm (SHA) Algorithm for computing a condensed representation of information FIPS PUB 180-4 Use SHA-384 for all classification levels.
Diffie-Hellman (DH) Key Exchange Asymmetric algorithm for key establishment IETF RFC 3526 Minimum 3072-bit modulus for all classification levels
[Rivest-Shamir-Adleman] RSA Asymmetric algorithm for key establishment FIPS SP 800-56B Minimum 3072-bit modulus for all classification levels
[Rivest-Shamir-Adleman] RSA Asymmetric algorithm for digital signatures FIPS PUB 186-4 Minimum 3072-bit modulus for all classification levels

References

  1. ^ Cook, John (2019-05-23). "NSA recommendations | algorithms to use until PQC". www.johndcook.com. Retrieved 2020-02-28.
  2. ^ a b c "Announcing the Commercial National Security Algorithm Suite 2.0" (PDF). media.defense.gov. 2022-09-07. Retrieved 2024-06-10.
  3. ^ "CNSA Suite and Quantum Computing FAQ" (PDF). cryptome.org. January 2016. Retrieved 24 July 2023.
  4. ^ "Use of public standards for the secure sharing of information among national security systems, Advisory Memorandum 02-15 CNSS Advisory Memorandum Information Assurance 02-15". Committee on National Security Systems. 2015-07-31. Archived from the original on 2020-02-28. Retrieved 2020-02-28.
  5. ^ "Commercial National Security Algorithm Suite". apps.nsa.gov. 19 August 2015. Archived from the original on 2022-02-18. Retrieved 2020-02-28.
  6. ^ Housley, Russ; Zieglar, Lydia (July 2018). "RFC 8423 - Reclassification of Suite B Documents to Historic Status". tools.ietf.org. Retrieved 2020-02-28.
  7. ^ "NSA's FAQs Demystify the Demise of Suite B, but Fail to Explain One Important Detail – Pomcor". 9 February 2016. Retrieved 2020-02-28.
  8. ^ "A riddle wrapped in a curve". A Few Thoughts on Cryptographic Engineering. 2015-10-22. Retrieved 2020-02-28.
  9. ^ Koblitz, Neal; Menezes, Alfred J. (2018-05-19). "A Riddle Wrapped in an Enigma". Cryptology ePrint Archive.
  10. ^ "Post-Quantum Cybersecurity Resources". www.nsa.gov. Retrieved 2023-03-03.
  11. ^ "Announcing the Commercial National Security Algorithm Suite 2.0, U/OO/194427-22, PP-22-1338, Ver. 1.0" (PDF). media.defense.gov. National Security Agency. September 2022. Table IV: CNSA 2.0 algorithms, p. 9.; Table V: CNSA 1.0 algorithms, p. 10. Retrieved 2024-04-14.
  • v
  • t
  • e
Block ciphers (security summary)
Common
algorithms
Less common
algorithms
Other
algorithms
Design
Attack
(cryptanalysis)
Standardization
Utilization
  • v
  • t
  • e
Algorithms
Integer factorization
Discrete logarithm
Lattice/SVP/CVP/LWE/SIS
Others
Theory
Standardization
Topics
  • v
  • t
  • e
Common functions
SHA-3 finalists
Other functions
Password hashing/
key stretching functions
General purpose
key derivation functions
MAC functions
Authenticated
encryption modes
Attacks
Design
Standardization
Utilization
  • v
  • t
  • e
General
Mathematics
  • Category


Stub icon

This cryptography-related article is a stub. You can help Wikipedia by expanding it.

  • v
  • t
  • e