home *** CD-ROM | disk | FTP | other *** search
/ Unix System Administration Handbook 1997 October / usah_oct97.iso / rfc / 1800s / rfc1827.txt < prev    next >
Text File  |  1995-08-07  |  30KB  |  676 lines

  1.  
  2.  
  3.  
  4.  
  5.  
  6.  
  7. Network Working Group                                        R. Atkinson
  8. Request for Comments: 1827                     Naval Research Laboratory
  9. Category: Standards Track                                    August 1995
  10.  
  11.  
  12.                 IP Encapsulating Security Payload (ESP)
  13.  
  14. Status of this Memo
  15.  
  16.    This document specifies an Internet standards track protocol for the
  17.    Internet community, and requests discussion and suggestions for
  18.    improvements.  Please refer to the current edition of the "Internet
  19.    Official Protocol Standards" (STD 1) for the standardization state
  20.    and status of this protocol.  Distribution of this memo is unlimited.
  21.  
  22. ABSTRACT
  23.  
  24.    This document describes the IP Encapsulating Security Payload (ESP).
  25.    ESP is a mechanism for providing integrity and confidentiality to IP
  26.    datagrams.  In some circumstances it can also provide authentication
  27.    to IP datagrams.  The mechanism works with both IPv4 and IPv6.
  28.  
  29. 1. INTRODUCTION
  30.  
  31.    ESP is a mechanism for providing integrity and confidentiality to IP
  32.    datagrams.  It may also provide authentication, depending on which
  33.    algorithm and algorithm mode are used.  Non-repudiation and
  34.    protection from traffic analysis are not provided by ESP.  The IP
  35.    Authentication Header (AH) might provide non-repudiation if used with
  36.    certain authentication algorithms [Atk95b].  The IP Authentication
  37.    Header may be used in conjunction with ESP to provide authentication.
  38.    Users desiring integrity and authentication without confidentiality
  39.    should use the IP Authentication Header (AH) instead of ESP.  This
  40.    document assumes that the reader is familiar with the related
  41.    document "IP Security Architecture", which defines the overall
  42.    Internet-layer security architecture for IPv4 and IPv6 and provides
  43.    important background for this specification [Atk95a].
  44.  
  45. 1.1 Overview
  46.  
  47.    The IP Encapsulating Security Payload (ESP) seeks to provide
  48.    confidentiality and integrity by encrypting data to be protected and
  49.    placing the encrypted data in the data portion of the IP
  50.    Encapsulating Security Payload.  Depending on the user's security
  51.    requirements, this mechanism may be used to encrypt either a
  52.    transport-layer segment (e.g., TCP, UDP, ICMP, IGMP) or an entire IP
  53.    datagram.  Encapsulating the protected data is necessary to provide
  54.    confidentiality for the entire original datagram.
  55.  
  56.  
  57.  
  58. Atkinson                    Standards Track                     [Page 1]
  59.  
  60. RFC 1827             Encapsulating Security Payload          August 1995
  61.  
  62.  
  63.    Use of this specification will increase the IP protocol processing
  64.    costs in participating systems and will also increase the
  65.    communications latency.  The increased latency is primarily due to
  66.    the encryption and decryption required for each IP datagram
  67.    containing an Encapsulating Security Payload.
  68.  
  69.    In Tunnel-mode ESP, the original IP datagram is placed in the
  70.    encrypted portion of the Encapsulating Security Payload and that
  71.    entire ESP frame is placed within a datagram having unencrypted IP
  72.    headers.  The information in the unencrypted IP headers is used to
  73.    route the secure datagram from origin to destination. An unencrypted
  74.    IP Routing Header might be included between the IP Header and the
  75.    Encapsulating Security Payload.
  76.  
  77.    In Transport-mode ESP, the ESP header is inserted into the IP
  78.    datagram immediately prior to the transport-layer protocol header
  79.    (e.g., TCP, UDP, or ICMP). In this mode bandwidth is conserved
  80.    because there are no encrypted IP headers or IP options.
  81.  
  82.    In the case of IP, an IP Authentication Header may be present as a
  83.    header of an unencrypted IP packet, as a header after the IP header
  84.    and before the ESP header in a Transport-mode ESP packet, and also as
  85.    a header within the encrypted portion of a Tunnel-mode ESP packet.
  86.    When AH is present both in the cleartext IP header and also inside a
  87.    Tunnel-mode ESP header of a single packet, the unencrypted IPv6
  88.    Authentication Header is primarily used to provide protection for the
  89.    contents of the unencrypted IP headers and the encrypted
  90.    Authentication Header is used to provide authentication only for the
  91.    encrypted IP packet.  This is discussed in more detail later in this
  92.    document.
  93.  
  94.    The Encapsulating Security Payload is structured a bit differently
  95.    than other IP payloads. The first component of the ESP payload
  96.    consist of the unencrypted field(s) of the payload.  The second
  97.    component consists of encrypted data.  The field(s) of the
  98.    unencrypted ESP header inform the intended receiver how to properly
  99.    decrypt and process the encrypted data.  The encrypted data component
  100.    includes protected fields for the security protocol and also the
  101.    encrypted encapsulated IP datagram.
  102.  
  103.    The concept of a "Security Association" is fundamental to ESP.  It is
  104.    described in detail in the companion document "Security Architecture
  105.    for the Internet Protocol" which is incorporated here by reference
  106.    [Atk95a].  Implementors should read that document before reading this
  107.    one.
  108.  
  109.  
  110.  
  111.  
  112.  
  113.  
  114. Atkinson                    Standards Track                     [Page 2]
  115.  
  116. RFC 1827             Encapsulating Security Payload          August 1995
  117.  
  118.  
  119. 1.2 Requirements Terminology
  120.  
  121.    In this document, the words that are used to define the significance
  122.    of each particular requirement are usually capitalised.  These words
  123.    are:
  124.  
  125.    - MUST
  126.  
  127.       This word or the adjective "REQUIRED" means that the item is an
  128.       absolute requirement of the specification.
  129.  
  130.    - SHOULD
  131.  
  132.       This word or the adjective "RECOMMENDED" means that there might
  133.       exist valid reasons in particular circumstances to ignore this
  134.       item, but the full implications should be understood and the case
  135.       carefully weighed before taking a different course.
  136.  
  137.    - MAY
  138.  
  139.       This word or the adjective "OPTIONAL" means that this item is
  140.       truly optional.  One vendor might choose to include the item
  141.       because a particular marketplace requires it or because it
  142.       enhances the product, for example; another vendor may omit the
  143.       same item.
  144.  
  145. 2. KEY MANAGEMENT
  146.  
  147.    Key management is an important part of the IP security architecture.
  148.    However, a specific key management protocol is not included in this
  149.    specification because of a long history in the public literature of
  150.    subtle flaws in key management algorithms and protocols.  IP tries to
  151.    decouple the key management mechanisms from the security protocol
  152.    mechanisms.  The only coupling between the key management protocol
  153.    and the security protocol is with the Security Parameter Index (SPI),
  154.    which is described in more detail below.  This decoupling permits
  155.    several different key management mechanisms to be used.  More
  156.    importantly, it permits the key management protocol to be changed or
  157.    corrected without unduly impacting the security protocol
  158.    implementations. Thus, a key management protocol for IP is not
  159.    specified within this memo.  The IP Security Architecture describes
  160.    key management in more detail and specifies the key management
  161.    requirements for IP.  Those key management requirements are
  162.    incorporated here by reference [Atk95a].
  163.  
  164.    The key management mechanism is used to negotiate a number of
  165.    parameters for each security association, including not only the keys
  166.    but other information (e.g., the cryptographic algorithms and modes,
  167.  
  168.  
  169.  
  170. Atkinson                    Standards Track                     [Page 3]
  171.  
  172. RFC 1827             Encapsulating Security Payload          August 1995
  173.  
  174.  
  175.    security classification level, if any) used by the communicating
  176.    parties.  The key management protocol implementation usually creates
  177.    and maintains a logical table containing the several parameters for
  178.    each current security association. An ESP implementation normally
  179.    needs to read that security parameter table to determine how to
  180.    process each datagram containing an ESP (e.g., which algorithm/mode
  181.    and key to use).
  182.  
  183. 3. ENCAPSULATING SECURITY PAYLOAD SYNTAX
  184.  
  185.    The Encapsulating Security Payload (ESP) may appear anywhere after
  186.    the IP header and before the final transport-layer protocol.  The
  187.    Internet Assigned Numbers Authority has assigned Protocol Number 50
  188.    to ESP [STD-2].  The header immediately preceding an ESP header will
  189.    always contain the value 50 in its Next Header (IPv6) or Protocol
  190.    (IPv4) field.  ESP consists of an unencrypted header followed by
  191.    encrypted data.  The encrypted data includes both the protected ESP
  192.    header fields and the protected user data, which is either an entire
  193.    IP datagram or an upper-layer protocol frame (e.g., TCP or UDP).  A
  194.    high-level diagram of a secure IP datagram follows.
  195.  
  196.   |<--        Unencrypted              -->|<----    Encrypted   ------>|
  197.   +-------------+--------------------+------------+---------------------+
  198.   | IP Header   | Other IP Headers   | ESP Header | encrypted data      |
  199.   +-------------+--------------------+------------+---------------------+
  200.  
  201.    A more detailed diagram of the ESP Header follows below.
  202.  
  203.   +-------------+--------------------+------------+---------------------+
  204.   |             Security Association Identifier (SPI), 32 bits          |
  205.   +=============+====================+============+=====================+
  206.   |             Opaque Transform Data, variable length                  |
  207.   +-------------+--------------------+------------+---------------------+
  208.  
  209.    Encryption and authentication algorithms, and the precise format of
  210.    the Opaque Transform Data associated with them are known as
  211.    "transforms".  The ESP format is designed to support new transforms
  212.    in the future to support new or additional cryptographic algorithms.
  213.    The transforms are specified by themselves rather than in the main
  214.    body of this specification.  The mandatory transform for use with IP
  215.    is defined in a separate document [KMS95].  Other optional transforms
  216.    exist in other separate specifications and additional transforms
  217.    might be defined in the future.
  218.  
  219.  
  220.  
  221.  
  222.  
  223.  
  224.  
  225.  
  226. Atkinson                    Standards Track                     [Page 4]
  227.  
  228. RFC 1827             Encapsulating Security Payload          August 1995
  229.  
  230.  
  231. 3.1 Fields of the Encapsulating Security Payload
  232.  
  233.    The SPI is a 32-bit pseudo-random value identifying the security
  234.    association for this datagram.  If no security association has been
  235.    established, the value of the SPI field shall be 0x00000000.   An SPI
  236.    is similar to the SAID used in other security protocols.  The name
  237.    has been changed because the semantics used here are not exactly the
  238.    same as those used in other security protocols.
  239.  
  240.    The set of SPI values in the range 0x00000001 though 0x000000FF are
  241.    reserved to the Internet Assigned Numbers Authority (IANA) for future
  242.    use.  A reserved SPI value will not normally be assigned by IANA
  243.    unless the use of that particular assigned SPI value is openly
  244.    specified in an RFC.
  245.  
  246.    The SPI is the only mandatory transform-independent field.
  247.    Particular transforms may have other fields unique to the transform.
  248.    Transforms are not specified in this document.
  249.  
  250. 3.2 Security Labeling with ESP
  251.  
  252.    The encrypted IP datagram need not and does not normally contain any
  253.    explicit Security Label because the SPI indicates the sensitivity
  254.    level.  This is an improvement over the current practices with IPv4
  255.    where an explicit Sensitivity Label is normally used with
  256.    Compartmented Mode Workstations and other systems requiring Security
  257.    Labels [Ken91] [DIA].  In some situations, users MAY choose to carry
  258.    explicit labels (for example, IPSO labels as defined by RFC-1108
  259.    might be used with IPv4) in addition to using the implicit labels
  260.    provided by ESP.  Explicit label options could be defined for use
  261.    with IPv6 (e.g., using the IPv6 End-to-End Options Header or the IPv6
  262.    Hop-by-Hop Options Header).  Implementations MAY support explicit
  263.    labels in addition to implicit labels, but implementations are not
  264.    required to support explicit labels.  Implementations of ESP in
  265.    systems claiming to provide multi-level security MUST support
  266.    implicit labels.
  267.  
  268. 4. ENCAPSULATING SECURITY PROTOCOL PROCESSING
  269.  
  270.    This section describes the steps taken when ESP is in use between two
  271.    communicating parties.  Multicast is different from unicast only in
  272.    the area of key management (See the definition of the SPI, above, for
  273.    more detail on this).  There are two modes of use for ESP.  The first
  274.    mode, which is called "Tunnel-mode", encapsulates an entire IP
  275.    datagram inside ESP.  The second mode, which is called "Transport-
  276.    Mode", encapsulates a transport-layer (e.g., UDP, TCP) frame inside
  277.    ESP.  The term "Transport-mode" must not be misconstrued as
  278.    restricting its use to TCP and UDP. For example, an ICMP message MAY
  279.  
  280.  
  281.  
  282. Atkinson                    Standards Track                     [Page 5]
  283.  
  284. RFC 1827             Encapsulating Security Payload          August 1995
  285.  
  286.  
  287.    be sent either using the "Transport-mode" or the "Tunnel-mode"
  288.    depending upon circumstance.  ESP processing occurs prior to IP
  289.    fragmentation on output and after IP reassembly on input.  This
  290.    section describes protocol processing for each of these two modes.
  291.  
  292. 4.1 ESP in Tunnel-mode
  293.  
  294.    In Tunnel-mode ESP, the ESP header follows all of the end-to-end
  295.    headers (e.g., Authentication Header, if present in cleartext) and
  296.    immediately precedes an tunnelled IP datagram.
  297.  
  298.    The sender takes the original IP datagram, encapsulates it into the
  299.    ESP, uses at least the sending userid and Destination Address as data
  300.    to locate the correct Security Association, and then applies the
  301.    appropriate encryption transform.  If host-oriented keying is in use,
  302.    then all sending userids on a given system will have the same
  303.    Security Association for a given Destination Address.  If no key has
  304.    been established, then the key management mechanism is used to
  305.    establish an encryption key for this communications session prior to
  306.    the use of ESP.  The (now encrypted) ESP is then encapsulated in a
  307.    cleartext IP datagram as the last payload.  If strict red/black
  308.    separation is being enforced, then the addressing and other
  309.    information in the cleartext IP headers and optional payloads MAY be
  310.    different from the values contained in the (now encrypted and
  311.    encapsulated) original datagram.
  312.  
  313.    The receiver strips off the cleartext IP header and cleartext
  314.    optional IP payloads (if any) and discards them.  It then uses the
  315.    combination of Destination Address and SPI value to locate the
  316.    correct session key to use for this packet.  It then decrypts the ESP
  317.    using the session key that was just located for this packet.
  318.  
  319.    If no valid Security Association exists for this session (for
  320.    example, the receiver has no key), the receiver MUST discard the
  321.    encrypted ESP and the failure MUST be recorded in the system log or
  322.    audit log.  This system log or audit log entry SHOULD include the SPI
  323.    value, date/time, cleartext Sending Address, cleartext Destination
  324.    Address, and the cleartext Flow ID.  The log entry MAY also include
  325.    other identifying data.  The receiver might not wish to react by
  326.    immediately informing the sender of this failure because of the
  327.    strong potential for easy-to-exploit denial of service attacks.
  328.  
  329.    If decryption succeeds, the original IP datagram is then removed from
  330.    the (now decrypted) ESP.  This original IP datagram is then processed
  331.    as per the normal IP protocol specification.  In the case of system
  332.    claiming to provide multilevel security (for example, a B1 or
  333.    Compartmented Mode Workstation) additional appropriate mandatory
  334.    access controls MUST be applied based on the security level of the
  335.  
  336.  
  337.  
  338. Atkinson                    Standards Track                     [Page 6]
  339.  
  340. RFC 1827             Encapsulating Security Payload          August 1995
  341.  
  342.  
  343.    receiving process and the security level associated with this
  344.    Security Association.  If those mandatory access controls fail, then
  345.    the packet SHOULD be discarded and the failure SHOULD be logged using
  346.    implementation-specific procedures.
  347.  
  348. 4.2 ESP in Transport-mode
  349.  
  350.    In Transport-mode ESP, the ESP header follows the end-to-end headers
  351.    (e.g., Authentication Header) and immediately precedes a transport-
  352.    layer (e.g., UDP, TCP, ICMP) header.
  353.  
  354.    The sender takes the original transport-layer (e.g., UDP, TCP, ICMP)
  355.    frame, encapsulates it into the ESP, uses at least the sending userid
  356.    and Destination Address to locate the appropriate Security
  357.    Association, and then applies the appropriate encryption transform.
  358.    If host-oriented keying is in use, then all sending userids on a
  359.    given system will have the same Security Association for a given
  360.    Destination Address. If no key has been established, then the key
  361.    management mechanism is used to establish a encryption key for this
  362.    communications session prior to the encryption.  The (now encrypted)
  363.    ESP is then encapsulated as the last payload of a cleartext IP
  364.    datagram.
  365.  
  366.    The receiver processes the cleartext IP header and cleartext optional
  367.    IP headers (if any) and temporarily stores pertinent information
  368.    (e.g., source and destination addresses, Flow ID, Routing Header).
  369.    It then decrypts the ESP using the session key that has been
  370.    established for this traffic, using the combination of the
  371.    destination address and the packet's Security Association Identifier
  372.    (SPI) to locate the correct key.
  373.  
  374.    If no key exists for this session or the attempt to decrypt fails,
  375.    the encrypted ESP MUST be discarded and the failure MUST be recorded
  376.    in the system log or audit log.  If such a failure occurs, the
  377.    recorded log data SHOULD include the SPI value, date/time received,
  378.    clear-text Sending Address, clear-text Destination Address, and the
  379.    Flow ID.  The log data MAY also include other information about the
  380.    failed packet.  If decryption does not work properly for some reason,
  381.    then the resulting data will not be parsable by the implementation's
  382.    protocol engine.  Hence, failed decryption is generally detectable.
  383.  
  384.    If decryption succeeds, the original transport-layer (e.g., UDP, TCP,
  385.    ICMP) frame is removed from the (now decrypted) ESP.  The information
  386.    from the cleartext IP header and the now decrypted transport-layer
  387.    header is jointly used to determine which application the data should
  388.    be sent to.  The data is then sent along to the appropriate
  389.    application as normally per IP protocol specification.  In the case
  390.    of a system claiming to provide multilevel security (for example, a
  391.  
  392.  
  393.  
  394. Atkinson                    Standards Track                     [Page 7]
  395.  
  396. RFC 1827             Encapsulating Security Payload          August 1995
  397.  
  398.  
  399.    B1 or Compartmented Mode Workstation), additional Mandatory Access
  400.    Controls MUST be applied based on the security level of the receiving
  401.    process and the security level of the received packet's Security
  402.    Association.
  403.  
  404. 4.3. Authentication
  405.  
  406.    Some transforms provide authentication as well as confidentiality and
  407.    integrity.  When such a transform is not used, then the
  408.    Authentication Header might be used in conjunction with the
  409.    Encapsulating Security Payload.  There are two different approaches
  410.    to using the Authentication Header with ESP, depending on which data
  411.    is to be authenticated.  The location of the Authentication Header
  412.    makes it clear which set of data is being authenticated.
  413.  
  414.    In the first usage, the entire received datagram is authenticated,
  415.    including both the encrypted and unencrypted portions, while only the
  416.    data sent after the ESP Header is confidential.  In this usage, the
  417.    sender first applies ESP to the data being protected.  Then the other
  418.    plaintext IP headers are prepended to the ESP header and its now
  419.    encrypted data. Finally, the IP Authentication Header is calculated
  420.    over the resulting datagram according to the normal method.  Upon
  421.    receipt, the receiver first verifies the authenticity of the entire
  422.    datagram using the normal IP Authentication Header process.  Then if
  423.    authentication succeeds, decryption using the normal IP ESP process
  424.    occurs.  If decryption is successful, then the resulting data is
  425.    passed up to the upper layer.
  426.  
  427.    If the authentication process were to be applied only to the data
  428.    protected by Tunnel-mode ESP, then the IP Authentication Header would
  429.    be placed normally within that protected datagram.  However, if one
  430.    were using Transport-mode ESP, then the IP Authentication Header
  431.    would be placed before the ESP header and would be calculated across
  432.    the entire IP datagram.
  433.  
  434.    If the Authentication Header is encapsulated within a Tunnel-mode ESP
  435.    header, and both headers have specific security classification levels
  436.    associated with them, and the two security classification levels are
  437.    not identical, then an error has occurred.  That error SHOULD be
  438.    recorded in the system log or audit log using the procedures
  439.    described previously.  It is not necessarily an error for an
  440.    Authentication Header located outside of the ESP header to have a
  441.    different security classification level than the ESP header's
  442.    classification level.  This might be valid because the cleartext IP
  443.    headers might have a different classification level after the data
  444.    has been encrypted using ESP.
  445.  
  446.  
  447.  
  448.  
  449.  
  450. Atkinson                    Standards Track                     [Page 8]
  451.  
  452. RFC 1827             Encapsulating Security Payload          August 1995
  453.  
  454.  
  455. 5. CONFORMANCE REQUIREMENTS
  456.  
  457.    Implementations that claim conformance or compliance with this
  458.    specification MUST fully implement the header described here, MUST
  459.    support manual key distribution with this header, MUST comply with
  460.    all requirements of the "Security Architecture for the Internet
  461.    Protocol" [Atk95a], and MUST support the use of DES CBC as specified
  462.    in the companion document entitled "The ESP DES-CBC Transform"
  463.    [KMS95].  Implementors MAY also implement other ESP transforms.
  464.    Implementers should consult the most recent version of the "IAB
  465.    Official Standards" RFC for further guidance on the status of this
  466.    document.
  467.  
  468. 6. SECURITY CONSIDERATIONS
  469.  
  470.    This entire document discusses a security mechanism for use with IP.
  471.    This mechanism is not a panacea, but it does provide an important
  472.    component useful in creating a secure internetwork.
  473.  
  474.    Cryptographic transforms for ESP which use a block-chaining algorithm
  475.    and lack a strong integrity mechanism are vulnerable to a cut-and-
  476.    paste attack described by Bellovin and should not be used unless the
  477.    Authentication Header is always present with packets using that ESP
  478.    transform [Bel95].
  479.  
  480.    Users need to understand that the quality of the security provided by
  481.    this specification depends completely on the strength of whichever
  482.    encryption algorithm has been implemented, the correctness of that
  483.    algorithm's implementation, upon the security of the key management
  484.    mechanism and its implementation, the strength of the key [CN94]
  485.    [Sch94, p233] and upon the correctness of the ESP and IP
  486.    implementations in all of the participating systems.
  487.  
  488.    If any of these assumptions do not hold, then little or no real
  489.    security will be provided to the user.  Use of high assurance
  490.    development techniques is recommended for the IP Encapsulating
  491.    Security Payload.
  492.  
  493.    Users seeking protection from traffic analysis might consider the use
  494.    of appropriate link encryption.  Description and specification of
  495.    link encryption is outside the scope of this note.
  496.  
  497.    If user-oriented keying is not in use, then the algorithm in use
  498.    should not be an algorithm vulnerable to any kind of Chosen Plaintext
  499.    attack.  Chosen Plaintext attacks on DES are described in [BS93] and
  500.    [Mat94]. Use of user-oriented keying is recommended in order to
  501.    preclude any sort of Chosen Plaintext attack and to generally make
  502.    cryptanalysis more difficult.  Implementations SHOULD support user-
  503.  
  504.  
  505.  
  506. Atkinson                    Standards Track                     [Page 9]
  507.  
  508. RFC 1827             Encapsulating Security Payload          August 1995
  509.  
  510.  
  511.    oriented keying as is described in the IP Security Architecture
  512.    [Atk95a].
  513.  
  514. ACKNOWLEDGEMENTS
  515.  
  516.    This document benefited greatly from work done by Bill Simpson, Perry
  517.    Metzger, and Phil Karn to make general the approach originally
  518.    defined by the author for SIP, SIPP, and finally IPv6.
  519.  
  520.    Many of the concepts here are derived from or were influenced by the
  521.    US Government's SP3 security protocol specification, the ISO/IEC's
  522.    NLSP specification, or from the proposed swIPe security protocol
  523.    [SDNS89, ISO92a, IB93, IBK93, ISO92b].  The use of DES for
  524.    confidentiality is closely modeled on the work done for the SNMPv2
  525.    [GM93].  Steve Bellovin, Steve Deering, Dave Mihelcic, and Hilarie
  526.    Orman provided solid critiques of early versions of this memo.
  527.  
  528. REFERENCES
  529.  
  530.    [Atk95a] Atkinson, R., "Security Architecture for the Internet
  531.             Protocol", RFC 1825, NRL, August 1995.
  532.  
  533.    [Atk95b] Atkinson, R., "IP Authentication Header", RFC 1826, NRL,
  534.             August 1995.
  535.  
  536.    [Bel89]  Steven M. Bellovin, "Security Problems in the TCP/IP
  537.             Protocol Suite", ACM Computer Communications Review, Vol. 19,
  538.             No. 2, March 1989.
  539.  
  540.    [Bel95]  Steven M. Bellovin, Presentation at IP Security Working
  541.             Group Meeting, Proceedings of the 32nd Internet Engineering
  542.             Task Force, March 1995, Internet Engineering Task Force,
  543.             Danvers, MA.
  544.  
  545.    [BS93]   Eli Biham and Adi Shamir, "Differential Cryptanalysis of the
  546.             Data Encryption Standard", Springer-Verlag, New York, NY,
  547.             1993.
  548.  
  549.    [CN94]   John M. Carroll & Sri Nudiati, "On Weak Keys and Weak Data:
  550.             Foiling the Two Nemeses", Cryptologia, Vol. 18, No. 23,
  551.             July 1994. pp. 253-280
  552.  
  553.    [CERT95] Computer Emergency Response Team (CERT), "IP Spoofing Attacks
  554.             and Hijacked Terminal Connections", CA-95:01, January 1995.
  555.             Available via anonymous ftp from info.cert.org.
  556.  
  557.  
  558.  
  559.  
  560.  
  561.  
  562. Atkinson                    Standards Track                    [Page 10]
  563.  
  564. RFC 1827             Encapsulating Security Payload          August 1995
  565.  
  566.  
  567.    [DIA]    US Defense Intelligence Agency (DIA), "Compartmented Mode
  568.             Workstation Specification", Technical Report
  569.             DDS-2600-6243-87.
  570.  
  571.    [GM93]   Galvin J., and K. McCloghrie, "Security Protocols for
  572.             version 2 of the Simple Network Management Protocol
  573.             (SNMPv2)", RFC 1446, Trusted Information Systems, Hughes LAN
  574.             Systems, April 1993.
  575.  
  576.    [Hin94]  Bob Hinden (Editor), Internet Protocol version 6 (IPv6)
  577.             Specification, Work in Progress, October 1994.
  578.  
  579.    [IB93]   John Ioannidis & Matt Blaze, "Architecture and Implementation
  580.             of Network-layer Security Under Unix", Proceedings of the USENIX
  581.             Security Symposium, Santa Clara, CA, October 1993.
  582.  
  583.    [IBK93]  John Ioannidis, Matt Blaze, & Phil Karn, "swIPe:
  584.             Network-Layer Security for IP", presentation at the Spring
  585.             1993 IETF Meeting, Columbus, Ohio.
  586.  
  587.    [ISO92a] ISO/IEC JTC1/SC6, Network Layer Security Protocol, ISO-IEC
  588.             DIS 11577, International Standards Organisation, Geneva,
  589.             Switzerland, 29 November 1992.
  590.  
  591.    [ISO92b] ISO/IEC JTC1/SC6, Network Layer Security Protocol, ISO-IEC
  592.             DIS 11577, Section 13.4.1, page 33, International Standards
  593.             Organisation, Geneva, Switzerland, 29 November 1992.
  594.  
  595.    [Ken91]  Kent, S., "US DoD Security Options for the Internet
  596.             Protocol", RFC 1108, BBN Communications, November 1991.
  597.  
  598.    [KMS95]  Karn, P., Metzger, P., and W. Simpson, "The ESP DES-CBC
  599.             Transform", RFC 1829, Qualcomm, Inc., Piermont, Daydreamer,
  600.             August 1995.
  601.  
  602.    [Mat94]  Matsui, M., "Linear Cryptanalysis method for DES Cipher",
  603.             Proceedings of Eurocrypt '93, Berlin, Springer-Verlag, 1994.
  604.  
  605.    [NIST77] US National Bureau of Standards, "Data Encryption Standard",
  606.             Federal Information Processing Standard (FIPS) Publication
  607.             46, January 1977.
  608.  
  609.    [NIST80] US National Bureau of Standards, "DES Modes of Operation"
  610.             Federal Information Processing Standard (FIPS) Publication
  611.             81, December 1980.
  612.  
  613.  
  614.  
  615.  
  616.  
  617.  
  618. Atkinson                    Standards Track                    [Page 11]
  619.  
  620. RFC 1827             Encapsulating Security Payload          August 1995
  621.  
  622.  
  623.    [NIST81] US National Bureau of Standards, "Guidelines for Implementing
  624.             and Using the Data Encryption Standard", Federal Information
  625.             Processing Standard (FIPS) Publication 74, April 1981.
  626.  
  627.    [NIST88] US National Bureau of Standards, "Data Encryption Standard",
  628.             Federal Information Processing Standard (FIPS) Publication
  629.             46-1, January 1988.
  630.  
  631.    [STD-2]  Reynolds, J., and J. Postel, "Assigned Numbers", STD 2,
  632.             RFC 1700, USC/Information Sciences Institute, October 1994.
  633.  
  634.    [Sch94]  Bruce Schneier, Applied Cryptography, John Wiley & Sons,
  635.             New York, NY, 1994.  ISBN 0-471-59756-2
  636.  
  637.    [SDNS89] SDNS Secure Data Network System, Security Protocol 3, SP3,
  638.             Document SDN.301, Revision 1.5, 15 May 1989, as published
  639.             in NIST Publication NIST-IR-90-4250, February 1990.
  640.  
  641. DISCLAIMER
  642.  
  643.    The views and specification here are those of the author and are not
  644.    necessarily those of his employer.  The Naval Research Laboratory has
  645.    not passed judgement on the merits, if any, of this work.  The author
  646.    and his employer specifically disclaim responsibility for any
  647.    problems arising from correct or incorrect implementation or use of
  648.    this specification.
  649.  
  650. AUTHOR'S ADDRESS
  651.  
  652.    Randall Atkinson
  653.    Information Technology Division
  654.    Naval Research Laboratory
  655.    Washington, DC 20375-5320
  656.    USA
  657.  
  658.    Phone:  (202) 404-7090
  659.    Fax:    (202) 404-7942
  660.    EMail:  atkinson@itd.nrl.navy.mil
  661.  
  662.  
  663.  
  664.  
  665.  
  666.  
  667.  
  668.  
  669.  
  670.  
  671.  
  672.  
  673.  
  674. Atkinson                    Standards Track                    [Page 12]
  675.  
  676.