
TheCommercial National Security Algorithm Suite (CNSA) is a set of cryptographic algorithmspromulgated by theNational Security Agency as a replacement forNSA Suite B Cryptography algorithms. It serves as the cryptographic base to protect US National Security Systems information up to theTOP SECRET level. Two versions of CNSA exist: the pre-quantum 1.0 of 2015 and thequantum-resistant 2.0 of 2022.[1][2][3][4][5][6]
A singular parameter length is provided for protection up to TOP SECRET level.
| Purpose | Algorithm | Standard | Parameter Length | Bits of Security | Notes |
|---|---|---|---|---|---|
| Symmetric encryption | AES | FIPS 197 | 256 | 256 | |
| Digital Signature | Elliptic Curve Digital Signature Algorithm (ECDSA) | FIPS 186-4 | 384 | 192 | Use curveP-384 only. |
| RSA | FIPS 186-4 | 3072 | 128 | Minimum modulus size, can be larger. | |
| Key agreement | Elliptic-curve Diffie–Hellman (ECDH) | NIST SP 800-56Ar3 | 384 | 192 | Use curveP-384 only. |
| Diffie–Hellman key exchange | RFC 3526 | 3072 | 128 | Minimum modulus size, can be larger. | |
| RSA | FIPS SP 800-56Br2 | 3072 | 128 | Minimum modulus size, can be larger. | |
| Message digest | SHA-2 | FIPS 180-4 | 384 | 192 | Use exactly SHA-384. |
The CNSA 1.0 transition is notable for movingRSA from a temporarylegacy status, as it appeared in Suite B, tosupported status. It also did not include theDigital 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]
Documents describing the integration of CNSA 1.0 with Internet protocols include:
In September 2022, the NSA announced CNSA 2.0, which includes its first recommendations for post-quantum cryptographic algorithms. Again, all parameters are provided for classified information up to TOP SECRET level.[10]
| Purpose | Algorithm | Standard | Parameter Length | Bits of Security | Notes |
|---|---|---|---|---|---|
| Symmetric encryption | AES | FIPS 197-upd1 | 256 | 256 | |
| Key agreement | ML-KEM | FIPS 203 | ML-KEM-1024 | 256 | |
| Digital signature | ML-DSA | FIPS 204 | ML-DSA-87 | 256 | |
| Message digest of data | SHA-2 | FIPS 180-4 | 384 or 512 | 192 or 256 | |
| Digital signature of firmware and software | Leighton-Micali | NIST SP 800-208 | 192 or 256 | 192 or 256 | All standard parameter sets are approved, the minimum being SHA256/192. SHA256/192 is the recommended choice. |
| Xtended Merkle | NIST SP 800-208 | 192 or 256 | 192 or 256 | All standard parameter sets are approved, the minimum being SHA256/192. |
Note that compared to CNSA 1.0, CNSA 2.0:
Documents describing the integration of CNSA 2.0 with Internet protocols include:
{{cite web}}: CS1 maint: url-status (link)This cryptography-related article is astub. You can help Wikipedia byadding missing information. |