RFC4869

From RFC-Wiki

Network Working Group L. Law Request for Comments: 4869 J. Solinas Category: Informational NSA

                                                            May 2007
             Suite B Cryptographic Suites for IPsec

Status of This Memo

This memo provides information for the Internet community. It does not specify an Internet standard of any kind. Distribution of this memo is unlimited.

Copyright Notice

Copyright (C) The IETF Trust (2007).

Abstract

This document proposes four optional cryptographic user interface suites ("UI suites") for IPsec, similar to the two suites specified in RFC 4308. The four new suites provide compatibility with the United States National Security Agency's Suite B specifications.

Introduction

RFC4308 proposes two optional cryptographic user interface suites ("UI suites") for IPsec. The two suites, VPN-A and VPN-B, represent commonly used present-day corporate VPN security choices and anticipated future choices, respectively. This document proposes four new UI suites based on implementations of the United States National Security Agency's Suite B algorithms (see [SuiteB]).

As with the VPN suites, the Suite B suites are simply collections of values for some options in IPsec. Use of UI suites does not change the IPsec protocols in any way.

Requirements Terminology

The key words "MUST", "MUST NOT", "SHOULD", "SHOULD NOT", and "MAY" in this document are to be interpreted as described in RFC2119.

New UI Suites

Each of the following UI suites provides choices for ESP (see RFC4303) and for IKEv1 and IKEv2 (see RFC2409 and RFC4306). The four suites are differentiated by the choice of cryptographic algorithm strengths and a choice of whether the Encapsulating Security Payload (ESP) is to provide both confidentiality and integrity or integrity only. The suite names are based on the Advanced Encryption Standard [AES] mode and AES key length specified for ESP.

IPsec implementations that use these UI suites SHOULD use the suite names listed here. IPsec implementations SHOULD NOT use names different than those listed here for the suites that are described, and MUST NOT use the names listed here for suites that do not match these values. These requirements are necessary for interoperability.

Suite "Suite-B-GCM-128"

This suite provides ESP integrity protection and confidentiality using 128-bit AES-GCM (see RFC4106). This suite or the following suite should be used when ESP integrity protection and encryption are both needed.

ESP:

 Encryption     AES with 128-bit keys and 16-octet Integrity
                  Check Value (ICV) in GCM mode RFC4106
 Integrity      NULL

IKEv1:

 Encryption                   AES with 128-bit keys in CBC mode
                                RFC3602
 Pseudo-random function       HMAC-SHA-256 RFC4868
 Hash                         SHA-256 [FIPS-180-2] RFC4634
 Diffie-Hellman group         256-bit random ECP group RFC4753
 Group Type                   ECP

For IKEv1, Phase 1 SHOULD use Main mode. IKEv1 implementations MUST support pre-shared key authentication RFC2409 for interoperability. The authentication method used with IKEv1 MAY be either pre-shared key RFC2409 or ECDSA-256 RFC4754.

IKEv2:

 Encryption                   AES with 128-bit keys in CBC mode
                                RFC3602
 Pseudo-random function       HMAC-SHA-256 RFC4868
 Integrity                    HMAC-SHA-256-128 RFC4868
 Diffie-Hellman group         256-bit random ECP group RFC4753
 Authentication               ECDSA-256 RFC4754

Rekeying of Phase 2 (for IKEv1) or the CREATE_CHILD_SA (for IKEv2) MUST be supported by both parties in this suite.

Suite "Suite-B-GCM-256"

This suite provides ESP integrity protection and confidentiality using 256-bit AES-GCM (see RFC4106). This suite or the preceding suite should be used when ESP integrity protection and encryption are both needed.

ESP:

 Encryption     AES with 256-bit keys and 16-octet ICV in GCM mode
                  RFC4106
 Integrity      NULL

IKEv1:

 Encryption                   AES with 256-bit keys in CBC mode
                                RFC3602
 Pseudo-random function       HMAC-SHA-384 RFC4868
 Hash                         SHA-384 [FIPS-180-2] RFC4634
 Diffie-Hellman group         384-bit random ECP group RFC4753
 Group Type                   ECP

For IKEv1, Phase 1 SHOULD use Main mode. IKEv1 implementations MUST support pre-shared key authentication RFC2409 for interoperability. The authentication method used with IKEv1 MAY be either pre-shared key RFC2409 or ECDSA-384 RFC4754.

IKEv2:

 Encryption                   AES with 256-bit keys in CBC mode
                                RFC3602
 Pseudo-random function       HMAC-SHA-384 RFC4868
 Integrity                    HMAC-SHA-384-192 RFC4868
 Diffie-Hellman group         384-bit random ECP group RFC4753
 Authentication               ECDSA-384 RFC4754

Rekeying of Phase 2 (for IKEv1) or the CREATE_CHILD_SA (for IKEv2) MUST be supported by both parties in this suite.

Suite "Suite-B-GMAC-128"

This suite provides ESP integrity protection using 128-bit AES-GMAC (see RFC4543) but does not provide confidentiality. This suite or the following suite should be used only when there is no need for ESP encryption.

ESP:

 Encryption     NULL
 Integrity      AES with 128-bit keys in GMAC mode RFC4543

IKEv1:

 Encryption                   AES with 128-bit keys in CBC mode
                                RFC3602
 Pseudo-random function       HMAC-SHA-256 RFC4868
 Hash                         SHA-256 [FIPS-180-2] RFC4634
 Diffie-Hellman group         256-bit random ECP group RFC4753
 Group Type                   ECP

For IKEv1, Phase 1 SHOULD use Main mode. IKEv1 implementations MUST support pre-shared key authentication RFC2409 for interoperability. The authentication method used with IKEv1 MAY be either pre-shared key RFC2409 or ECDSA-256 RFC4754.

IKEv2:

 Encryption                   AES with 128-bit keys in CBC mode
                                RFC3602
 Pseudo-random function       HMAC-SHA-256 RFC4868
 Integrity                    HMAC-SHA-256-128 RFC4868
 Diffie-Hellman group         256-bit random ECP group RFC4753
 Authentication               ECDSA-256 RFC4754

Rekeying of Phase 2 (for IKEv1) or the CREATE_CHILD_SA (for IKEv2) MUST be supported by both parties in this suite.

Suite "Suite-B-GMAC-256"

This suite provides ESP integrity protection using 256-bit AES-GMAC (see RFC4543) but does not provide confidentiality. This suite or the preceding suite should be used only when there is no need for ESP encryption.

ESP:

 Encryption     NULL
 Integrity      AES with 256-bit keys in GMAC mode RFC4543

IKEv1:

 Encryption                   AES with 256-bit keys in CBC mode
                                RFC3602
 Pseudo-random function       HMAC-SHA-384 RFC4868
 Hash                         SHA-384 [FIPS-180-2] RFC4634
 Diffie-Hellman group         384-bit random ECP group RFC4753
 Group Type                   ECP

For IKEv1, Phase 1 SHOULD use Main mode. IKEv1 implementations MUST support pre-shared key authentication RFC2409 for interoperability. The authentication method used with IKEv1 MAY be either pre-shared key RFC2409 or ECDSA-384 RFC4754.

IKEv2:

 Encryption                   AES with 256-bit keys in CBC mode
                                RFC3602
 Pseudo-random function       HMAC-SHA-384 RFC4868
 Integrity                    HMAC-SHA-384-192 RFC4868
 Diffie-Hellman group         384-bit random ECP group RFC4753
 Authentication               ECDSA-384 RFC4754

Rekeying of Phase 2 (for IKEv1) or the CREATE_CHILD_SA (for IKEv2) MUST be supported by both parties in this suite.

Security Considerations

This document inherits all of the security considerations of the IPsec, IKEv1, and IKEv2 documents. See [CNSSP-15] for guidance on the use of AES in these suites for the protection of U.S. Government information.

Some of the security options specified in these suites may be found in the future to have properties significantly weaker than those that were believed at the time this document was produced.

IANA Considerations

IANA has created and will maintain a registry called "Cryptographic Suites for IKEv1, IKEv2, and IPsec" (see [IANA-Suites]). The registry consists of a text string and an RFC number that lists the associated transforms. The four new suites in this document have been added to this registry after approval by an expert designated by the IESG.

The new values for the registry are:

Identifier Defined in Suite-B-GCM-128 RFC 4869 Suite-B-GCM-256 RFC 4869 Suite-B-GMAC-128 RFC 4869 Suite-B-GMAC-256 RFC 4869

References

Normative References

[FIPS-180-2] FIPS 180-2 with change notice, "Secure Hash Standard",

             National Institute of Standards and Technology,
             February 2004.

[IANA-Suites] Internet Assigned Numbers Authority, "Cryptographic

             Suites for IKEv1, IKEv2, and IPsec",
             <http://www.iana.org/assignments/crypto-suites>.

RFC2119 Bradner, S., "Key words for use in RFCs to Indicate

             Requirement Levels", BCP 14, RFC 2119, March 1997.

RFC2409 Harkins, D. and D. Carrel, "The Internet Key Exchange

             (IKE)", RFC 2409, November 1998.

RFC3602 Frankel, S., Glenn, R., and S. Kelly, "The AES-CBC

             Cipher Algorithm and Its Use with IPsec", RFC 3602,
             September 2003.

RFC4106 Viega, J. and D. McGrew, "The Use of Galois/Counter

             Mode (GCM) in IPsec Encapsulating Security Payload
             (ESP)", RFC 4106, June 2005.

RFC4303 Kent, S., "IP Encapsulating Security Payload (ESP)",

             RFC 4303, December 2005.

RFC4306 Kaufman, C., "Internet Key Exchange (IKEv2) Protocol",

             RFC 4306, December 2005.

RFC4308 Hoffman, P., "Cryptographic Suites for IPsec", RFC

             4308, December 2005.

RFC4543 McGrew, D. and J. Viega, "The Use of Galois Message

             Authentication Code (GMAC) in IPsec ESP and AH", RFC
             4543, May 2006.

RFC4753 Fu, D. and J. Solinas, "ECP Groups for IKE and IKEv2",

             RFC 4753, November 2006.

RFC4754 Fu, D. and J. Solinas, "IKE and IKEv2 Authentication

             Using ECDSA", RFC 4754, November 2006.

RFC4868 Kelly, S. and S. Frankel, "Using HMAC-SHA-256, HMAC-

             SHA-384, and HMAC-SHA-512 with IPsec", RFC 4868, May
             2007.

Informative References

[AES] U.S. Department of Commerce/National Institute of

             Standards and Technology, "Advanced Encryption Standard
             (AES)", FIPS PUB 197, November 2001,
             <http://csrc.nist.gov/publications/fips/index.html>.

[CNSSP-15] Committee on National Security Systems, "National

             Policy on the Use of the Advanced Encryption Standard
             (AES) to Protect National Security Systems and National
             Security Information", June 2003,
             <http://www.cnss.gov/Assets/pdf/cnssp_15_fs.pdf>.

RFC4634 Eastlake 3rd, D. and T. Hansen, "US Secure Hash

             Algorithms (SHA and HMAC-SHA)", RFC 4634, July 2006.

[SuiteB] U.S. National Security Agency, "Fact Sheet NSA Suite B

             Cryptography", July 2005, <http://www.nsa.gov/ia/
             industry/crypto_Suite_b.cfm?MenuID=10.2.7>.

Authors' Addresses

Laurie E. Law National Information Assurance Research Laboratory National Security Agency

EMail: [email protected]

Jerome A. Solinas National Information Assurance Research Laboratory National Security Agency

EMail: [email protected]

Full Copyright Statement

Copyright (C) The IETF Trust (2007).

This document is subject to the rights, licenses and restrictions contained in BCP 78, and except as set forth therein, the authors retain all their rights.

This document and the information contained herein are provided on an "AS IS" basis and THE CONTRIBUTOR, THE ORGANIZATION HE/SHE REPRESENTS OR IS SPONSORED BY (IF ANY), THE INTERNET SOCIETY, THE IETF TRUST AND THE INTERNET ENGINEERING TASK FORCE DISCLAIM ALL WARRANTIES, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO ANY WARRANTY THAT THE USE OF THE INFORMATION HEREIN WILL NOT INFRINGE ANY RIGHTS OR ANY IMPLIED WARRANTIES OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE.

Intellectual Property

The IETF takes no position regarding the validity or scope of any Intellectual Property Rights or other rights that might be claimed to pertain to the implementation or use of the technology described in this document or the extent to which any license under such rights might or might not be available; nor does it represent that it has made any independent effort to identify any such rights. Information on the procedures with respect to rights in RFC documents can be found in BCP 78 and BCP 79.

Copies of IPR disclosures made to the IETF Secretariat and any assurances of licenses to be made available, or the result of an attempt made to obtain a general license or permission for the use of such proprietary rights by implementers or users of this specification can be obtained from the IETF on-line IPR repository at http://www.ietf.org/ipr.

The IETF invites any interested party to bring to its attention any copyrights, patents or patent applications, or other proprietary rights that may cover technology that may be required to implement this standard. Please address the information to the IETF at [email protected].

Acknowledgement

Funding for the RFC Editor function is currently provided by the Internet Society.