RFC 2411 INFORMATIONAL SECURITY · IPSEC · ENCRYPTION

IPsec Roadmap: IP Security Document Roadmap

A guide to organizing new encryption and authentication algorithm documents for IPsec.

On rfc-editor.org ↗
PUBLISHED
November 1998
AUTHORS
R. Thayer, N. Doraswamy, R. Glenn
STREAM
IETF
OBSOLETED BY
RFC 6071 — IP Security (IPsec) and Internet Key Exchange (IKE) Document Roadmap
TYPE
Informational
YEAR
November 1998
DOI
10.17487/RFC2411

RFC text

Contents
Original text · RFC Editor View on rfc-editor.org ↗
Network  Working Group                                        R. Thayer
Request for Comments: 2411                 Sable Technology Corporation
Category: Informational                                    N. Doraswamy
                                                           Bay Networks
                                                               R. Glenn
                                                                   NIST
                                                          November 1998


                              IP Security
                            Document Roadmap


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 Internet Society (1998).  All Rights Reserved.


Abstract

   The IPsec protocol suite is used to provide privacy and
   authentication services at the IP layer.  Several documents are used
   to describe this protocol suite.  The interrelationship and
   organization of the various documents covering the IPsec protocol are
   discussed here.  An explanation of what to find in which document,
   and what to include in new Encryption Algorithm and Authentication
   Algorithm documents are described.

Table of Contents

   1. Introduction ................................................2
   2. Interrelationship of IPsec Documents ........................2
   3. Keying Material .............................................4
   4. Recommended Content of Algorithm Documents ..................5
   4.1 Encryption and Authentication Algorithms ...................5
   4.2 Encryption Algorithms ......................................6
   4.3 Authentication Algorithms ..................................7
   5. Security Considerations .....................................8
   6. Acknowledgments .............................................8
   7. References ..................................................9
   8. Authors' Addresses .........................................10
   9. Full Copyright Statement ...................................11

1. Introduction

   This document is intended to provide guidelines for the development
   of collateral specifications describing the use of new encryption and
   authentication algorithms with the ESP protocol, described in [ESP]
   and new authentication algorithms used with the AH protocol,
   described in [AH].  ESP and AH are part of the IP Security
   architecture described in [Arch].  There is a requirement for a
   well-known procedure that can be used to add new encryption
   algorithms or authentication algorithms to ESP and AH, not only while
   the initial document set is undergoing development but after the base
   documents have achieved RFC status.  Following the guidelines
   discussed below simplifies adding new algorithms and reduces that
   amount of redundant documentation.

   The goal in writing a new Encryption Algorithm or Authentication
   Algorithm document is to concentrate on the application of the
   specific algorithm within ESP and AH.  General ESP and AH concepts,
   definitions, and issues are covered in the ESP and AH documents. The
   algorithms themselves are not described in these documents.  This
   gives us the capability to add new algorithms and also specify how
   any given algorithm might interact with other algorithms. The intent
   is to achieve the goal of avoiding duplication of information and
   excessive numbers of documents, the so-called "draft explosion"
   effect.

2. Interrelationship of IPsec Documents

   The documents describing the set of IPsec protocols are divided into
   seven groups.  This is illustrated in Figure 1.  There is a main
   Architecture document which broadly covers the general concepts,
   security requirements, definitions, and mechanisms defining IPsec
   technology.

   There is an ESP Protocol document and an AH Protocol document which
   covers the packet format and general issues regarding the respective
   protocols.  These protocol documents also contain default values if
   appropriate, such as the default padding contents, and mandatory to
   implement algorithms.  These documents dictate some of the values in
   the Domain Of Interpretation document [DOI].  Note the DOI document
   is itself part of the IANA Assigned Numbers mechanism and so the
   values described in the DOI are well-known.  See [DOI] for more
   information on the mechanism.

   The "Encryption Algorithm" document set, shown on the left, is the
   set of documents describing how various encryption algorithms are
   used for ESP.  These documents are intended to fit in this roadmap,
   and should avoid overlap with the ESP protocol document and with the
   Authentication Algorithm documents.  Examples of this document are
   the [DES-Detroit] and [CBC] documents.  When these or other
   encryption algorithms are used for ESP, the DOI document has to
   indicate certain values, such as an encryption algorithm identifier,
   so these documents provide input to the DOI.

   The "Authentication Algorithm" document set, shown on the right, is
   the set of documents describing how various authentication algorithms
   are used for both ESP and AH.  These documents are intended to fit in
   this roadmap, and should avoid overlap with the AH protocol document
   and with the Encryption Algorithm documents.  Examples of this
   document are the [HMAC-MD5], and [HMAC-SHA-1] documents.  When these
   or other algorithms are used for either ESP or AH, the DOI document
   has to indicate certain values, such as algorithm type, so these
   documents provide input to the DOI.

   The "Key Management Documents", shown at the bottom, are the
   documents describing the IETF standards-track key management schemes.
   These documents provide certain values for the DOI also.  Note that
   issues of key management should be indicated here and not in, for
   example, the ESP and AH protocol documents.  Currently this box
   represents [ISAKMP], [Oakley], and [Resolution].

   The DOI document, shown in the middle, contains values needed for the
   other documents to relate to each other.  This includes for example
   encryption algorithms, authentication algorithms, and operational
   parameters such as key lifetimes.

                      +--------------+
                      | Architecture |
                      +--------------+
                        v          v
               +<-<-<-<-+          +->->->->+
               v                            v
      +----------+                       +----------+
      |   ESP    |                       |    AH    |
      | Protocol |                       | Protocol |
      +----------+                       +----------+
        v      v                           v       v
        v      +->->->->->->->->+          v       v
        v      v                v          v       v
        v      v                v          v       v
        v  +------------+     +----------------+   v
        v  | +------------+   | +----------------+ v
        v  | | Encryption |   | | Authentication | v
        v  +-| Algorithm  |   +-| Algorithm      | v
        v    +------------+     +----------------+ v
        v        v                       v         v
        v        v        +-----+        v         v
        +>->->->-+->->->->| DOI |<-<-<-<-+-<-<-<-<-+
                          +-----+
                             ^
                             ^
                       +------------+
                       |    KEY     |
                       | MANAGEMENT |
                       +------------+


              Figure 1. IPsec Document Roadmap.

3. Keying Material

   Describing the encryption and authentication algorithms in different
   documents raises the issue of how the key management protocols knows
   the required keying material length for the desired algorithms when
   used together with ESP.  It also raises the issue of how to divide
   the keying material.  This is known as the "slicing and dicing"
   information.

   Each Encryption Algorithm and Authentication Algorithm document
   should specify their respective key attributes (e.g. how to pad,
   location of parity bits, key order for multi-keyed algorithms, and
   length).  The key management protocols should use the length of the
   keys specified in the respective Algorithm documents to generate the
   keying material of required length.

   The key management protocol generates keying material with enough
   strength and size to generate keys for individual algorithms. The
   IPsec Architecture document specifies how keys are extracted from a
   single block of keying material when multiple keys are required (e.g.
   ESP with authentication).  The Encryption Algorithm and

   Authentication Algorithm documents are responsible for specifying the
   key sizes and strengths for each algorithm. However, whether the
   entire keying material is passed down to the kernel to perform
   slicing and dicing or if the keys are sliced and diced by key
   management protocol is an implementation issue. The AH protocol
   document has no such requirement.

4. Recommended Content of Algorithm Documents

   The document describing how a specific encryption or authentication
   algorithm is used should contain information appropriate to that
   encryption or authentication algorithm.  This section enumerates what
   information should be provided.  It is the intention of the document
   roadmap that:

   .  General protocol information goes in the respective ESP or AH
      protocol documents.
   .  Key management information goes in the key management documents.
   .  Assigned values and constants of negotiable items go in the DOI
      document.

   Encryption and authentication algorithms require some set of optional
   parameters or have optional modes of operation (e.g. IVs,
   authentication data lengths, and key lengths).  To help eliminate
   some complexity involved with key management having to negotiate
   large numbers of algorithm-specific parameters, encryption and
   authentication algorithm documents will select fixed values for these
   parameters when it is deemed technically reasonable and feasible.

   Note, the following information is intended as a general guideline
   only.

4.1 Encryption and Authentication Algorithms

   This section describes the information that should be included in
   both Encryption Algorithm and Authentication Algorithm documents.

   Keying Material

   .  Size of keys, including minimum, maximum, recommended and/or
      required sizes.  Note: the security considerations section should
      address any weakness in specific sizes.

   .  Recommended or required pseudo-random number generator techniques
      and attributes to provide sufficiently strong keys.  [RANDOM]
      provides recommendations on generating strong randomness for use
      with security.
   .  Format of keying material.
   .  Known weak keys or references to documentation on known weak keys.
   .  Recommended or required processing of input keying material such
      as parity generation or checking.
   .  Requirements and/or recommendations on how often the keying
      material should be refreshed.

   Performance Considerations
   .  Any available estimates on performance of this algorithm.
   .  Any available comparison data  (e.g., compared against DES or
      MD5).
   .  Input size or other considerations that could improve or degrade
      performance.

   ESP Environmental Considerations
   .  Any known issues regarding interactions between this algorithm and
      other aspects of ESP, such as use of certain authentication
      schemes.  Note:  As new encryption and authentication algorithms
      are applied to ESP, the later documents will be required to
      address interactions with previously specified algorithms.

   Payload Content and Format Description
   .  Specification of size, placement, and content of algorithm-
      specific fields not defined in the ESP or AH protocol documents
      (e.g., IV).

   Security Considerations
   .  Discuss any known attacks.
   .  Discuss any known common implementation pitfalls, such as use of
      weak random number generators.
   .  Discuss any relevant validation procedures, such as test vectors.
      [RFC-2202] is an example document containing test vectors for
      a set of authentication algorithms.

4.2 Encryption Algorithms

   This section describes the information that should be included in the
   Encryption Algorithm documents.

   Encryption Algorithm Description
   .  General information how this encryption algorithm is to be used in
      ESP.
   .  Description of background material and formal algorithm
      description.

   .  Features of this encryption algorithm to be used by ESP, including
      encryption and/or authentication.
   .  Mention of any availability issues such as Intellectual Property
      considerations.
   .  References, in IETF style, to background material such as FIPS
      documents.

   Algorithm Modes of Operation
   .  Description of how the algorithm is operated, whether it is block
      mode or streaming mode or other.
   .  Requirements for input or output block format.
   .  Padding requirements of this algorithm.  Note: there is a default
      for padding, specified in the base ESP document, so this is only
      needed if the default cannot be used.
   .  Any algorithm-specific operating parameters, such as number of
      rounds.
   .  Identify optional parameters and optional methods of operation and
      pick reasonable fixed values and methods with explicit technical
      explanations.
   .  Identify those optional parameters in which values and methods
      should remain optional with explicit technical explanations on why
      fixed values and methods should not be used.
   .  Defaults and mandatory ranges on algorithm-specific optional
      parameters that could not be fixed.

4.3 Authentication Algorithms

   This section describes the information that should be included in the
   Authentication Algorithm documents.  In most cases, an authentication
   algorithm will operate the same whether it is used for ESP or AH.
   This should be represented in a single Authentication Algorithm
   document.

   Authentication Algorithm Description
   .  General information on how this authentication algorithm is to be
      used with ESP and AH.
   .  Description of background material and formal algorithm
      description.
   .  Features of this authentication algorithm.
   .  Mention of any availability issues such as Intellectual Property
      considerations.
   .  References, in IETF style, to background material such as
      FIPS documents and definitive descriptions of underlying
      algorithms.

   Algorithm Modes of Operation
   .  Description of how the algorithm is operated.

   .  Algorithm-specific operating parameters, such as number of
      rounds, and input or output block format.
   .  Implicit and explicit padding requirements of this algorithm.
      Note: There is a default method for padding of the
      authentication data field specified in the AH protocol document.
      This is only needed if the default cannot be used.
   .  Identify optional parameters and optional methods of operation and
      pick reasonable fixed values and methods with explicit technical
      explanations.
   .  Identify those optional parameters in which values and methods
      should remain optional with explicit technical explanations on why
      fixed values and methods should not be used.
   .  Defaults and mandatory ranges on algorithm-specific optional
      parameters that could not be fixed.
   .  Authentication data comparison criteria for this algorithm.  Note:
      There is a default method for verifying the authentication data
      specified in the AH protocol document.  This is only needed if the
      default cannot be used (e.g. when using a signed hash).

5. Security Considerations

   This document provides a roadmap and guidelines for writing
   Encryption and Authentication Algorithm documents. The reader should
   follow all the security procedures and guidelines described in the
   IPsec Architecture, ESP Protocol, AH Protocol, Encryption Algorithm,
   and Authentication Algorithm documents.  Note that many encryption
   algorithms are not considered secure if they are not used with some
   sort of authentication mechanism.

6. Acknowledgments

   Several Internet drafts were referenced in writing this document.
   Depending on where the documents are on (or off) the IETF standards
   track these may not be available through the IETF RFC repositories.
   In certain cases the reader may want to know what version of these
   documents were referenced. These documents are:

   .  DES-Detroit: this is the ANX Workshop style of ESP, based on the
      Hughes draft as modified by Cheryl Madson and published on the ANX
      mailing list.
   .  DOI: draft-ietf-ipsec-ipsec-doi-02.txt.
   .  3DES: this is <the Triple-DES shim document>.
   .  CAST: this is draft-ietf-ipsec-esp-cast-128-cbc-00.txt, as revised
      to relate to this document.
   .  ESP: draft-ietf-ipsec-esp-04.txt, mailed to the IETF mailing list
      in May/June 1997.
   .  AH: draft-ietf-ipsec-auth-05.txt, mailed to the IETF mailing list
      in May/June 1997.

   .  HUGHES: this is draft-ietf-ipsec-esp-des-md5-03.txt
   .  ISAKMP: There are three documents describing ISAKMP.  These are
      draft-ietf-ipsec-isakmp-07.txt, draft-ietf-ipsec-isakmp-oakley-
      03.txt, and draft-ietf-ipsec-ipsec-doi-02.txt.

7. References

   [CBC]         Periera, R., and R. Adams, "The ESP CBC-Mode Cipher
                 Algorithms", RFC 2451, November 1998.

   [Arch]        Kent, S., and R.  Atkinson, "Security Architecture for
                 the Internet Protocol", RFC 2401, November 1998.

   [DES-Detroit] Madson, C., and N. Doraswamy, "The ESP DES-CBC Cipher
                 Algorithm With Explicit IV", RFC 2405, November 1998.

   [DOI]         Piper, D., "The Internet IP Security Domain of
                 Interpretation for ISAKMP", RFC 2407, November 1998.

   [AH]          Kent, S., and R. Atkinson, "IP Authentication Header",
                 RFC 2402, November 1998.

   [ESP]         Kent, S., and R. Atkinson, "IP Encapsulating Security
                 Payload (ESP)", RFC 2406, November 1998.

   [HMAC]        Krawczyk, K., Bellare, M., and R. Canetti, "HMAC:
                 Keyed-Hashing for Message Authentication", RFC 2104,
                 February 1997.

   [HMAC-MD5]    Madson, C., and R. Glenn, "The Use of HMAC-MD5 within
                 ESP and AH", RFC 2403, November 1998.

   [HMAC-SHA-1]  Madson, C., and R. Glenn, "The Use of HMAC-SHA-1 within
                 ESP and AH", RFC 2404, November 1998.

   [RANDOM]      Eastlake, D., Crocker, S., and J. Schiller, "Randomness
                 Recommendations for Security", RFC 1750, December 1994.

   [RFC-2202]    Cheng, P., and R. Glenn, "Test Cases for HMAC-MD5 and
                 HMAC-SHA-1", RFC 2202, March 1997.

8. Authors' Addresses

   Rodney Thayer
   Sable Technology Corporation
   246 Walnut Street
   Newton, Massachusetts  02160

   EMail: mailto:rodney@sabletech.com


   Naganand Doraswamy
   Bay Networks

   EMail: naganand@baynetworks.com


   Rob Glenn
   NIST

   EMail: rob.glenn@nist.gov

9.  Full Copyright Statement

   Copyright (C) The Internet Society (1998).  All Rights Reserved.

   This document and translations of it may be copied and furnished to
   others, and derivative works that comment on or otherwise explain it
   or assist in its implementation may be prepared, copied, published
   and distributed, in whole or in part, without restriction of any
   kind, provided that the above copyright notice and this paragraph are
   included on all such copies and derivative works.  However, this
   document itself may not be modified in any way, such as by removing
   the copyright notice or references to the Internet Society or other
   Internet organizations, except as needed for the purpose of
   developing Internet standards in which case the procedures for
   copyrights defined in the Internet Standards process must be
   followed, or as required to translate it into languages other than
   English.

   The limited permissions granted above are perpetual and will not be
   revoked by the Internet Society or its successors or assigns.

   This document and the information contained herein is provided on an
   "AS IS" basis and THE INTERNET SOCIETY AND THE INTERNET ENGINEERING
   TASK FORCE DISCLAIMS 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.

AI ELI5

On this page
PROBLEMThe IPsec protocol suite requires many separate documents for different algorithms and protocols, but there was no clear structure for how new algorithm documents should fit together.
MECHANISMRFC 2411 maps out how IPsec documents relate to each other: an Architecture document at the center, with separate documents for ESP and AH protocols, algorithm documents, key management, and a Domain of Interpretation document that ties values together.
WHY IT MATTERSThis roadmap prevents duplicated information and 'draft explosion' by showing exactly where new algorithm documents belong and what they should contain. It was replaced by RFC 6071.

§1Introduction and Purpose

RFC 2411 is an informational document that provides guidelines for developing new documents describing encryption and authentication algorithms for the IPsec (IP Security) protocol. The core IPsec protocols—ESP (Encapsulating Security Payload) and AH (Authentication Header)—need a well-organized way to add new algorithms without creating duplicate information across documents.

The main goal is to concentrate on specific algorithms in dedicated documents while keeping general concepts in the core protocol documents. This approach avoids the 'draft explosion' effect, where too many overlapping documents make the specification unclear and hard to maintain.

IPsec is a way to make data secret and verify it hasn't been tampered with. This document explains how to add new secret codes in an organized way.

§2IPsec Document Organization

The IPsec specification is divided into seven groups of documents that work together. At the top is the Architecture document, which covers general concepts, security requirements, definitions and mechanisms defining IPsec technology.

Below that are the ESP Protocol document and AH Protocol document, which describe packet formats and general issues for their respective protocols. These documents also specify default values and mandatory-to-implement algorithms.

Two parallel sets of documents describe specific algorithms: the Encryption Algorithm documents (for ESP) and the Authentication Algorithm documents (for both ESP and AH). Each algorithm gets its own document describing how to use it within the protocol.

At the center is the Domain of Interpretation (DOI) document, which contains assigned values and constants needed by all the other documents. Below everything are the Key Management documents, describing how keys are negotiated and managed.

One document explains the overall design, separate documents describe each encryption method, and a central document lists all the numbers and settings that tie them together.

§3Encryption and Authentication Algorithm Documents

Encryption and authentication algorithm documents must cover several required topics. On keying material, they must specify key sizes (minimum, maximum, recommended, required), how to generate strong keys, the format of keying material, any known weak keys, and how often keys should be refreshed.

Each document should include performance considerations: available estimates on the algorithm's performance, comparison data against other algorithms like DES or MD5, and any factors that could improve or degrade performance.

The document must describe payload format and content: the size, placement and content of any algorithm-specific fields not defined in the base ESP or AH documents (such as the initialization vector, or IV).

Each algorithm document must address security considerations: any known attacks, common implementation pitfalls (such as using weak random number generators), and relevant validation procedures and test vectors.

When you add a new encryption method, the document must explain what size key it needs, how fast it runs, how to store the secret parts, and what can go wrong.

§4Requirements for Encryption Algorithm Documents

Encryption algorithm documents must include a general description of how the algorithm is used in ESP. This includes background material and the formal algorithm description, the features of the algorithm as used by ESP (including encryption and/or authentication), any intellectual property considerations, and references to background material such as FIPS documents.

The document must specify algorithm modes of operation: whether the algorithm operates in block mode or streaming mode, requirements for input or output block format, padding requirements, and any algorithm-specific operating parameters such as the number of rounds.

The specification must identify optional parameters and pick fixed values with explicit technical explanations. For parameters that must remain optional, the document provides defaults and mandatory ranges with explanations of why fixed values would not work.

The document says how the encryption code actually works inside IPsec and what options are available for making it stronger or faster.

§5Requirements for Authentication Algorithm Documents

Authentication algorithm documents must cover how the algorithm operates with both ESP and AH. Like encryption documents, they must include general information, background material and formal description, features, intellectual property considerations, and references to FIPS documents and definitive descriptions of underlying algorithms.

The specification must describe algorithm-specific operating parameters such as the number of rounds and input or output block format. It must specify padding requirements for the authentication data field (noting that AH has a default padding method). As with encryption documents, optional parameters should be assigned fixed values with technical justifications.

Authentication documents must define the criteria for comparing authentication data, noting that AH has a default verification method. If the algorithm requires a different method (such as verifying a signed hash), the document must explain it.

When adding an authentication method, the document says how to use it with both encryption and authentication protocols, and how to check that the signature is correct.

§6Key Management and Integration

Both encryption and authentication algorithm documents must specify the key attributes needed by key management protocols: the length of keys, how to pad them, the location of parity bits, the order for multi-keyed algorithms, and the overall key size required.

Key management protocols use the length specifications from algorithm documents to generate keying material of sufficient strength and size. The IPsec Architecture document specifies how keys are extracted from a single block of keying material when multiple keys are required (for example, when using ESP with authentication). Whether the entire keying material passes to the kernel for 'slicing and dicing' or if keys are divided by the key management protocol is an implementation choice for ESP. The AH protocol document has no such requirement.

The encryption and authentication documents tell the key manager how much secret material to create and how to divide it among different algorithms.

§7References