home *** CD-ROM | disk | FTP | other *** search
/ Internet Info 1997 December / Internet_Info_CD-ROM_Walnut_Creek_December_1997.iso / drafts / draft_ietf_q_t / draft-ietf-rsvp-md5-03.txt < prev    next >
Text File  |  1997-05-28  |  34KB  |  901 lines

  1.  
  2.  
  3.  
  4.  
  5.           Draft         RSVP Cryptographic Authentication       May 1997
  6.  
  7.  
  8.                         RSVP Cryptographic Authentication                 |
  9.                             draft-ietf-rsvp-md5-03.txt                    |
  10.  
  11.  
  12.  
  13.  
  14.  
  15.  
  16.  
  17.                                Status of this Memo
  18.  
  19.           This document is an Internet Draft.  Internet Drafts are
  20.           working documents of the Internet Engineering Task Force
  21.           (IETF), its Areas, and its Working Groups.  Note that other
  22.           groups may also distribute working documents as Internet
  23.           Drafts.
  24.  
  25.           Internet Drafts are valid for a maximum of six months and may
  26.           be updated, replaced, or obsoleted by other documents at any
  27.           time.  It is inappropriate to use Internet Drafts as reference
  28.           material or to cite them other than as a "work in progress".    |
  29.           Comments should be made on the list rsvp@isi.edu.
  30.  
  31.           Abstract
  32.  
  33.           This document describes the format and use of RSVP's INTEGRITY
  34.           object to provide hop-by-hop integrity and authentication of
  35.           RSVP messages.
  36.  
  37.  
  38.  
  39.  
  40.  
  41.  
  42.  
  43.  
  44.  
  45.  
  46.  
  47.  
  48.  
  49.  
  50.  
  51.  
  52.  
  53.  
  54.  
  55.  
  56.  
  57.  
  58.  
  59.  
  60.           Fred Baker        Expiration: November 1997           [Page 1]
  61.  
  62.  
  63.  
  64.  
  65.           Draft         RSVP Cryptographic Authentication       May 1997
  66.  
  67.  
  68.           1.  Introduction                                                |
  69.  
  70.           The Resource ReSerVation Protocol RSVP [1] is a protocol for
  71.           setting up distributed state in routers and hosts, and in
  72.           particular for reserving resources to implement integrated
  73.           service.  RSVP allows particular users to obtain preferential
  74.           access to network resources, under the control of an admission
  75.           control mechanism.  Permission to make a reservation will
  76.           depend both upon the availability of the requested resources
  77.           along the path of the data, and upon satisfaction of policy
  78.           rules.
  79.  
  80.           To protect the integrity of this admission control mechanism,
  81.           RSVP requires the ability to protect its messages against
  82.           corruption and spoofing.  This document proposes a mechanism
  83.           to protect RSVP message integrity hop-by-hop.  The proposed
  84.           scheme transmits the result of applying a cryptographic         |
  85.           algorithm to a one-way function or "digest" of the message
  86.           together with a secret Authentication Key.  This scheme
  87.           affords protection against forgery or message modification,
  88.           but not replays.  It is possible to replay a message until the
  89.           sequence number changes, but the sequence number makes replays
  90.           less of an issue.  The proposed mechanism does not afford
  91.           confidentiality, since messages stay in the clear; however,
  92.           the mechanism is also exportable from most countries, which
  93.           would be impossible were a privacy algorithm to be used.
  94.  
  95.           The proposed mechanism is independent of a specific
  96.           cryptographic algorithm, but the document describes the use of  |
  97.           Keyed-Hashing for Message Authentication using H-MD5 [7] [9]    |
  98.           for this purpose.  As noted in [9], there exist stronger        |
  99.           hashes, such as H-SHA-1; where warranted, implementations will  |
  100.           do well to make them available.  However, in the general case,  |
  101.           [9] suggests that H-MD5 is adequate to the purpose at hand and  |
  102.           has preferable performance characteristics.  [9] also offers    |
  103.           source code and test vectors for this algorithm, a boon to      |
  104.           those who would test for interoperability.  The author          |
  105.           therefore suggests that H-MD5 should be the baseline,           |
  106.           universally implemented by RSVP implementations implementing    |
  107.           cryptographic authentication, with other proposals optional.
  108.  
  109.           The cost of computing an H-MD5 message digest far exceeds the   |
  110.           cost of computing an RSVP checksum; therefore the RSVP
  111.           checksum should be disabled (set to zero) ifH-MD5               |
  112.           authentication is used, as theH-MD5 digest is a much stronger
  113.           integrity check.
  114.  
  115.  
  116.  
  117.  
  118.  
  119.  
  120.           Fred Baker        Expiration: November 1997           [Page 2]
  121.  
  122.  
  123.  
  124.  
  125.           Draft         RSVP Cryptographic Authentication       May 1997
  126.  
  127.  
  128.           Two uses are envisioned: authentication of RSVP messages or
  129.           message fragments (should a fragmentation procedure be defined
  130.           in the future), and authentication of sessions.  The INTEGRITY
  131.           object used in both is the same, and is defined in this
  132.           document.  The use of the INTEGRITY object for those purposes
  133.           is defined in other more appropriate documents [1] [8].         |
  134.  
  135.           1.1.  Why not use the Standard IPSEC Authentication Header?     |
  136.  
  137.           One obvious question is why, since there exists a standard
  138.           mechanism for authentication, we would choose to not use it.
  139.           This was discussed at length in the working group, and was
  140.           rejected due to the operational impact of manually opening a
  141.           new security association among the routers that a flow
  142.           traverses for each flow making reservations.  In addition, it   |
  143.           was noted that neighbor relationships between RSVP systems are  |
  144.           not limited to those which face one another across a            |
  145.           communication channel; RSVP relationships across non-RSVP       |
  146.           clouds, such as those described in section 2.8 of [1], are not  |
  147.           necessarily visible to the sending system, suggesting that key  |
  148.           management based on the source address may be a simpler key     |
  149.           management strategy.
  150.  
  151.           It is also not clear that RSVP messages are well defined for
  152.           the security associations, as a router must forward PATH and
  153.           PATH TEAR messages using the same source address as the sender
  154.           listed in the SENDER TEMPLATE, as in RSVP traffic may           |
  155.           otherwise not follow exactly the same IP path as data traffic.
  156.  
  157.  
  158.           These matters are simplified if a secure key management
  159.           protocol exists which can be used to open and key the security
  160.           associations; should such a protocol come into existence, it
  161.           may be worthwhile reviewing this decision.  However, the non-   |
  162.           RSVP cloud considerations conspire against using the same       |
  163.           solution as one which would work for IPSEC.  Therefore, this
  164.           consideration cannot be understood as a promise that this
  165.           procedure will go away.
  166.  
  167.  
  168.           2.  Data Structures
  169.  
  170.           2.1.  INTEGRITY Object Format                                   *
  171.  
  172.           The RSVP Message consists of a sequence of "objects," which
  173.           are type-length-value encoded fields having specific purposes.
  174.           The information required for hop-by-hop integrity checking is
  175.  
  176.  
  177.  
  178.  
  179.  
  180.           Fred Baker        Expiration: November 1997           [Page 3]
  181.  
  182.  
  183.  
  184.  
  185.           Draft         RSVP Cryptographic Authentication       May 1997
  186.  
  187.  
  188.           carried in an INTEGRITY object.
  189.  
  190.           The contents of INTEGRITY object are defined as a "Keyed
  191.           Message Digest" structure, with one of the following formats:
  192.  
  193.                  IP4 Keyed Message Digest INTEGRITY Object: Class = 4,    |
  194.                                       C-Type = 1
  195.  
  196.                +-------------+-------------+-------------+-------------+  *
  197.                |                    Key Identifier                     |
  198.                +-------------+-------------+-------------+-------------+
  199.                |                    Sequence Number                    |
  200.                +-------------+-------------+-------------+-------------+
  201.                |               Sending System IP4 Address              |
  202.                +-------------+-------------+-------------+-------------+
  203.                |                                                       |
  204.                +                                                       +
  205.                |                                                       |
  206.                +              Keyed Message Digest                     |
  207.                |                                                       |
  208.                +                                                       +
  209.                |                                                       |
  210.                +-------------+-------------+-------------+-------------+
  211.  
  212.                  IP6 Keyed Message Digest INTEGRITY Object: Class = 4,    *
  213.                                       C-Type = 2
  214.  
  215.                +-------------+-------------+-------------+-------------+  *
  216.                |                    Key Identifier                     |
  217.                +-------------+-------------+-------------+-------------+
  218.                |                    Sequence Number                    |
  219.                +-------------+-------------+-------------+-------------+
  220.                |                                                       |
  221.                +                                                       +
  222.                |                                                       |
  223.                +              Sending System IP6 Address               +
  224.                |                                                       |
  225.                +                                                       +
  226.                |                                                       |
  227.                +-------------+-------------+-------------+-------------+
  228.                |                                                       |
  229.                +                                                       +
  230.                |                                                       |
  231.                +              Keyed Message Digest                     +
  232.                |                                                       |
  233.                +                                                       +
  234.                |                                                       |
  235.  
  236.  
  237.  
  238.  
  239.  
  240.           Fred Baker        Expiration: November 1997           [Page 4]
  241.  
  242.  
  243.  
  244.  
  245.           Draft         RSVP Cryptographic Authentication       May 1997
  246.  
  247.  
  248.                +-------------+-------------+-------------+-------------+
  249.  
  250.           (1)  Key Identifier                                             |
  251.  
  252.                   An unsigned 32-bit number that acts as a key selector.
  253.                   With the key, the system stores an algorithm for its
  254.                   application.
  255.  
  256.           (2)  Sending System Address
  257.  
  258.                   This is the same address as would be carried in the
  259.                   Next Hop or Previous Hop object, the address of the
  260.                   interface of the RSVP system that sent this message.
  261.  
  262.           (3)  Sequence Number
  263.  
  264.                   unsigned 32-bit non-decreasing sequence number.         |
  265.  
  266.                   Any non-decreasing sequence of numbers may be used as
  267.                   Sequence Number values.  For example, a timestamp on
  268.                   the message's creation or a simple message counter
  269.                   might be used.
  270.  
  271.                   This sequence number is reset to zero upon any key
  272.                   change.                                                 |
  273.  
  274.                   Note that when procedures such as the Network Time      |
  275.                   Protocol [10] are in use to synchronize clocks, it is   |
  276.                   feasible and advisable to use the current time as a     |
  277.                   sequence number.  Doing this obviates the need to       |
  278.                   store sequence numbers in memory that survives a        |
  279.                   system or process failure.
  280.  
  281.           (4)  Keyed Message Digest
  282.  
  283.                   The digest must be a multiple of 4 octets long.  For    |
  284.                   H-MD5, it will be 16 bytes long.
  285.  
  286.           2.2.  H-MD5 Message Header and Trailer                          |
  287.  
  288.           The H-MD5 algorithm requires affixing a header and trailer to   |
  289.           the message to be sent before the hash is computed.  This       |
  290.           extra information is not transmitted, since the receiver can
  291.           reconstruct it knowing the message length and hash algorithm.
  292.  
  293.           The content of this trailer is specified by [7] and [9].        |
  294.  
  295.  
  296.  
  297.  
  298.  
  299.  
  300.           Fred Baker        Expiration: November 1997           [Page 5]
  301.  
  302.  
  303.  
  304.  
  305.           Draft         RSVP Cryptographic Authentication       May 1997
  306.  
  307.  
  308.           3.  Message Processing Rules
  309.  
  310.           3.1.  Message Generation                                        *
  311.  
  312.           An RSVP message is created as specified in [1], with these      |
  313.           exceptions:                                                     *
  314.  
  315.           (1)  The RSVP checksum is not calculated, but is set to zero.   |
  316.  
  317.           (2)  The INTEGRITY object is inserted in the appropriate
  318.                place, and its location in the message is remembered for
  319.                later use.
  320.  
  321.           (3)  The current sequence number is placed in the Sequence
  322.                Number field of the INTEGRITY object.
  323.  
  324.                If several messages are being created simultaneously (for
  325.                example, in a periodic refresh generated by a router),
  326.                the messages should all use the same sequence number.
  327.                This is to assure that message reordering between RSVP
  328.                peers (in non-FIFO queues or in an RSVP tunnel) does not
  329.                cause authentication to fail for some of them.
  330.  
  331.           (4)  The appropriate Authentication Key is selected and placed
  332.                in the Keyed Message Digest field of the INTEGRITY
  333.                object.
  334.  
  335.           (5)  The Key Identifier is placed into the INTEGRITY object.
  336.  
  337.           (6)  The H-MD5 message header and trailer are placed in memory  |
  338.                as described in [7] and [9].
  339.  
  340.           (7)  A Keyed Message Digest of the augmented message is
  341.                calculated using the appropriate hash algorithm.  When     |
  342.                the H-MD5 algorithm is used, the hash calculation is       |
  343.                described in [7] and [9].
  344.  
  345.           (8)  The digest is written into the Cryptographic Digest field
  346.                of the INTEGRITY object, overlaying the Authentication
  347.                Key.
  348.  
  349.           In the sender, Authentication Key selection is based on the     *
  350.           interface through which the message is sent, there being a key
  351.           configured per interface.  While administrations may configure
  352.           all the routers and hosts on a subnet (or for that matter, in
  353.           their network) with the same key, implementations should
  354.           assume that each sender may send with a different key on each
  355.  
  356.  
  357.  
  358.  
  359.  
  360.           Fred Baker        Expiration: November 1997           [Page 6]
  361.  
  362.  
  363.  
  364.  
  365.           Draft         RSVP Cryptographic Authentication       May 1997
  366.  
  367.  
  368.           numbered interface, and that they keys are simplex - the key
  369.           that a system uses to sign its messages need he same key that
  370.           its recievers use to sign theirs.  Implementations SHOULD       |
  371.           maintain a separate key per ip address that they sign with.
  372.  
  373.           This restriction to numbered interfaces is intentional; if an
  374.           RSVP system peers with another through a set of non-RSVP
  375.           routers, and it might be able to reach systems through that
  376.           domain from either a numbered interface or an unnumbered
  377.           interface using the same address as a router id, the choice of
  378.           key would otherwise be ambiguous.  Therefore, on unnumbered
  379.           interfaces, an RSVP router must use the same key as it uses on
  380.           the related numbered interface.  User interfaces SHOULD
  381.           provide convenient ways to configure these keys.                *
  382.  
  383.           3.2.  Message Reception
  384.  
  385.           When the message is received, the process is reversed:
  386.  
  387.           (1)  The RSVP checksum is not calculated.
  388.  
  389.           (2)  The Cryptographic Digest field of the INTEGRITY object is
  390.                set aside.
  391.  
  392.           (3)  The Key Identifer field and Sending System Address are
  393.                used to determine the Authentication Key and the hash
  394.                algorithm to be used.  Implementations SHOULD maintain a
  395.                key per neighboring RSVP system address or CIDR prefix,
  396.                as the keys used by neighbors to sign their messages need
  397.                not be the same key that the recieving system uses.
  398.  
  399.           (4)  If the received sequence number is less than the last
  400.                sequence number received from the sending system with
  401.                that key identifier, the message is discarded
  402.                unprocessed.
  403.  
  404.           (5)  The Cryptographic Digest field of the INTEGRITY object is
  405.                overlaid with the Authentication Key.
  406.  
  407.           (6)  The message header and trailer are reconstructed.          |
  408.  
  409.           (7)  A new digest is calculated using the indicated algorithm.  |
  410.  
  411.           (8)  If the calculated digest does not match the received
  412.                digest, the message is discarded without further           |
  413.                processing.
  414.  
  415.  
  416.  
  417.  
  418.  
  419.  
  420.           Fred Baker        Expiration: November 1997           [Page 7]
  421.  
  422.  
  423.  
  424.  
  425.           Draft         RSVP Cryptographic Authentication       May 1997
  426.  
  427.  
  428.           If a system detects the loss of a neighbor or interface, or
  429.           the RSVP process is restarted on a system, the system should
  430.           start with a new key if possible.  In this way, the sequence
  431.           number may be reset without exposure to a replay attack.  In
  432.           the event that no other key is available, the sequence number
  433.           should be stored in non-volatile memory around failures, so     |
  434.           that it may continue without decreasing, or (if the NTP         |
  435.           timestamp is being used as a sequence number), RSVP             |
  436.           resynchronization should await NTP synchronization.
  437.  
  438.           4.  Key Management
  439.  
  440.           It is likely that the IETF will define a standard key           *
  441.           management protocol.  It is strongly desirable to use that key
  442.           management protocol to distribute RSVP Authentication Keys
  443.           among communicating RSVP implementations.  Such a protocol
  444.           would provide scalability and significantly reduce the human
  445.           administrative burden.  The Key ID can be used as a hook
  446.           between RSVP and such a future protocol.  Key management
  447.           protocols have a long history of subtle flaws that are often
  448.           discovered long after the protocol was first described in
  449.           public.  To avoid having to change all RSVP implementations
  450.           should such a flaw be discovered, integrated key management
  451.           protocol techniques were deliberately omitted from this
  452.           specification.
  453.  
  454.  
  455.           4.1.  Key Management Procedures
  456.  
  457.           Each key has a lifetime associated with it.  No key is ever
  458.           used outside its lifetime.  If more than one key is currently
  459.           alive, then the youngest key (the key whose lifetime most
  460.           recently started) should be sent, and all "live" keys should    |
  461.           be tested upon message receipt.
  462.  
  463.           Possible mechanisms for managing key lifetime include: the use  |
  464.           of the Network Time Protocol, hardware time-of-day clocks, or
  465.           waiting some time before emitting the first message to
  466.           determine what key other systems are signing with.  The matter
  467.           is left for the implementor.  Note that the concept of a "key
  468.           lifetime" does not require a hardware time-of-day clock or the
  469.           use of NTP, although one or the other is advised; it merely
  470.           requires that the earliest and latest times that the key is
  471.           valid must be programmable in a way the system understands.
  472.  
  473.           To maintain security, it is advisable to change the RSVP        |
  474.           Authentication Key on a regular basis.  It should be possible   |
  475.  
  476.  
  477.  
  478.  
  479.  
  480.           Fred Baker        Expiration: November 1997           [Page 8]
  481.  
  482.  
  483.  
  484.  
  485.           Draft         RSVP Cryptographic Authentication       May 1997
  486.  
  487.  
  488.           to switch the RSVP Authentication Key without loss of RSVP
  489.           state or denial of reservation service, and without requiring
  490.           people to change all the keys at once.  This requires the RSVP
  491.           implementation to support the storage and use of more than one
  492.           RSVP Authentication Key on a given interface at the same time.
  493.  
  494.           For each key there will be a locally-stored Key Identifier.
  495.           The combination of the Key Identifier and the interface
  496.           associated with the message uniquely identifies the
  497.           cryptographic algorithm and Authentication Key in use by RSVP.
  498.           As noted above, the party creating the RSVP message will
  499.           select a valid key from the set of valid keys for that
  500.           interface.  The receiver will use the Key Identifier and
  501.           interface to determine which key to use for authentication of
  502.           the received message.  More than one key may be associated
  503.           with an interface at the same time.
  504.  
  505.           To ensure a smooth switch-over, each communicating RSVP system
  506.           must be updated with the new key before the current key will    |
  507.           expire and before the new key lifetime begins.  The new key
  508.           should have a lifetime that starts several minutes before the
  509.           old key expires.  This gives time for each system to learn of
  510.           the new RSVP Authentication Key before that key will be used.
  511.           It also ensures that the new key will begin being used and the
  512.           current key will go out of use before the current key's
  513.           lifetime expires.  For the duration of the overlap in key
  514.           lifetimes, a system may receive messages using either key and
  515.           authenticate the message.
  516.  
  517.           There are four important times for each key:
  518.  
  519.             + KeyStartReceive: the time the system starts accepting
  520.                received packets signed with the key.
  521.  
  522.             + KeyStartSign: the time the system starts signing packets
  523.                with the key.
  524.  
  525.             + KeyStopSign: the time the system stops signing packets
  526.                with the key, which implies that it starts signing with
  527.                the next key, if any.
  528.  
  529.             + KeyStopReceive: the time the system stops accepting
  530.                received packets signed with the key.
  531.  
  532.           The times in the order listed SHOULD form a non-decreasing
  533.           sequence.  There needs to be some distance between start times
  534.           and stop times, to achieve a seamless transition.  Each system
  535.  
  536.  
  537.  
  538.  
  539.  
  540.           Fred Baker        Expiration: November 1997           [Page 9]
  541.  
  542.  
  543.  
  544.  
  545.           Draft         RSVP Cryptographic Authentication       May 1997
  546.  
  547.  
  548.           sends using the key with the most recent "start" time and
  549.           makes its first attempt at validation of incoming traffic with
  550.           this same key.  If this validation fails and another (older)
  551.           key is also active, the system should attempt to validate with
  552.           any other active keys it may possess.                           *
  553.  
  554.           4.2.  Key Management Requirements
  555.  
  556.           Requirements on an implementation are as follows.               *
  557.  
  558.           (1)  It is strongly desirable that a hypothetical security
  559.                breach in one Internet protocol not automatically
  560.                compromise other Internet protocols.  The Authentication
  561.                Key of this specification SHOULD NOT be stored using
  562.                protocols or algorithms that have known flaws.
  563.  
  564.           (2)  An implementation MUST support the storage of more than
  565.                one key at the same time, although normally only one key
  566.                will be active on an interface.
  567.  
  568.           (3)  An implementation MUST associate a specific lifetime
  569.                (i.e., KeyStartSign and KeyStopSign) with each key and
  570.                corresponding Key Identifier.
  571.  
  572.           (4)  An implementation MUST support manual key distribution
  573.                (e.g., the privileged user manually typing in the key,
  574.                key lifetime, and key identifier on the console).  The
  575.                lifetime may be infinite.
  576.  
  577.           (5)  If more than one algorithm is supported, then the
  578.                implementation MUST require that the algorithm be
  579.                specified for each key at the time the other key
  580.                information is entered.
  581.  
  582.           (6)  Keys that are out of date MAY be deleted at will by the
  583.                implementation without requiring human intervention.
  584.  
  585.           (7)  Manual deletion of active keys SHOULD also be supported.
  586.  
  587.           (8)  Key storage SHOULD persist across a system restart, warm
  588.                or cold, to avoid operational issues, and an acceptable    |
  589.                sequence number SHOULD be derivable either from non-       |
  590.                volatile memory or a procedure such as NTP.
  591.  
  592.  
  593.  
  594.  
  595.  
  596.  
  597.  
  598.  
  599.  
  600.           Fred Baker        Expiration: November 1997          [Page 10]
  601.  
  602.  
  603.  
  604.  
  605.           Draft         RSVP Cryptographic Authentication       May 1997
  606.  
  607.  
  608.           4.3.  Pathological Cases
  609.  
  610.           An implementation of this document must handle two
  611.           pathological cases.  Both of these should be exceedingly rare.
  612.  
  613.           (1)  During key switch-over, devices may exist which have not
  614.                yet been successfully configured with the new key.
  615.  
  616.                Therefore, systems MAY implement (and would be well
  617.                advised to implement) an algorithm that detects the set
  618.                of keys being used by its neighbors, and transmits its
  619.                messages using both the new and old keys until all the
  620.                neighbors are using the new key or the lifetime of the
  621.                old key expires.  Under normal circumstances, this
  622.                elevated transmission rate will exist for a single
  623.                refresh interval.
  624.  
  625.           (2)  It is possible that the last key associated with an
  626.                interface may expire.
  627.  
  628.                When this happens, it is unacceptable to revert to an
  629.                unauthenticated condition, and not advisable to disrupt
  630.                current reservations.  Therefore, the system should send
  631.                a "last authentication key expiration" notification to
  632.                the network manager and treat the key as having an
  633.                infinite lifetime until the lifetime is extended, the key
  634.                is deleted by network management, or a new key is
  635.                configured.                                                *
  636.  
  637.           5.  Conformance Requirements
  638.  
  639.           To conform to this specification, an implementation MUST
  640.           support all of its aspects.  The H-MD5 authentication           |
  641.           algorithm defined in [7] and [9] MUST be implemented by all
  642.           conforming implementations.  A conforming implementation MAY
  643.           also support other authentication algorithms such as NIST's
  644.           Secure Hash Algorithm (SHA).  Manual key distribution as
  645.           described above MUST be supported by all conforming
  646.           implementations.  All implementations MUST support the smooth
  647.           key rollover described under "Key Change Procedures."
  648.  
  649.           The user documentation provided with the implementation MUST
  650.           contain clear instructions on how to ensure that smooth key
  651.           rollover occurs.
  652.  
  653.           Implementations SHOULD support a standard key management
  654.           protocol for secure distribution of RSVP Authentication Keys
  655.  
  656.  
  657.  
  658.  
  659.  
  660.           Fred Baker        Expiration: November 1997          [Page 11]
  661.  
  662.  
  663.  
  664.  
  665.           Draft         RSVP Cryptographic Authentication       May 1997
  666.  
  667.  
  668.           once such a key management protocol is standardized by the
  669.           IETF.                                                           |
  670.  
  671.           6.  Acknowledgments                                             |
  672.  
  673.           This document is derived directly from similar work done for
  674.           OSPF and RIP Version II, jointly by Ran Atkinson and Fred       |
  675.           Baker.  Significant editing was sone by Bob Braden, resulting   |
  676.           in increased clarity.  (if you think this document was hard to  |
  677.           read, think about what Bob read).  Signifiant comments were     |
  678.           submitted by Steve Bellovin, who actually understands this      |
  679.           stuff.
  680.  
  681.  
  682.           7.  References
  683.  
  684.           [1]  Braden, R., Ed., Zhang, L., Estrin, D., Herzog, S., and
  685.                S.  Jamin, "Resource ReSerVation Protocol (RSVP) --
  686.                Version 1 Functional Specificationq.  Internet Draft       |
  687.                draft-ietf-rsvp-spec-14.ps, January 1997.
  688.  
  689.           [2]  S.  Bellovin, "Security Problems in the TCP/IP Protocol    *
  690.                Suite", ACM Computer Communications Review, Volume 19,
  691.                Number 2, pp.32-48, April 1989.                            |
  692.  
  693.           [3]  N.  Haller, R.  Atkinson, "Internet Authentication
  694.                Guidelines", Request for Comments 1704, October 1994.      |
  695.  
  696.           [4]  R.  Braden, D.  Clark, S.  Crocker, & C.  Huitema,
  697.                "Report of IAB Workshop on Security in the Internet
  698.                Architecture", Request for Comments 1636, June 1994.       |
  699.  
  700.           [5]  R.  Atkinson, "IP Authentication Header", Request for      |
  701.                Comments 1826, August 1995.                                |
  702.  
  703.           [6]  R.  Atkinson, "IP Encapsulating Security Payload",         |
  704.                Request for Comments 1827, August 1995.                    |
  705.  
  706.           [7]  P.  Metzger, W.  Simpson, "IP Authentication using H-      |
  707.                MD5", Request for Comments 1828, August 1995.              |
  708.  
  709.           [8]  S.  Herzog,
  710.  
  711.                "RSVP Extensions for Policy Control", draft-ietf-rsvp-     |
  712.                policy-ext-02.txt, March 1997.                             |
  713.  
  714.  
  715.  
  716.  
  717.  
  718.  
  719.  
  720.           Fred Baker        Expiration: November 1997          [Page 12]
  721.  
  722.  
  723.  
  724.  
  725.           Draft         RSVP Cryptographic Authentication       May 1997
  726.  
  727.  
  728.           [9]  Krawczyk, Bellare, and Canetti,                            |
  729.  
  730.                "HMAC: Keyed-Hashing for Message Authentication", Request  |
  731.                for Comments 2104, March 1996.
  732.  
  733.  
  734.  
  735.  
  736.  
  737.  
  738.  
  739.  
  740.  
  741.  
  742.  
  743.  
  744.  
  745.  
  746.  
  747.  
  748.  
  749.  
  750.  
  751.  
  752.  
  753.  
  754.  
  755.  
  756.  
  757.  
  758.  
  759.  
  760.  
  761.  
  762.  
  763.  
  764.  
  765.  
  766.  
  767.  
  768.  
  769.  
  770.  
  771.  
  772.  
  773.  
  774.  
  775.  
  776.  
  777.  
  778.  
  779.  
  780.           Fred Baker        Expiration: November 1997          [Page 13]
  781.  
  782.  
  783.  
  784.  
  785.           Draft         RSVP Cryptographic Authentication       May 1997
  786.  
  787.  
  788.           8.  Security Considerations
  789.  
  790.           This entire memo describes and specifies an authentication
  791.           mechanism for RSVP that is believed to be secure against
  792.           active and passive attacks.  Passive attacks are widespread in  |
  793.           the Internet at present.  Protection against active attacks is
  794.           also needed even though such attacks are not as widespread.     |
  795.  
  796.           Users need to understand that the quality of the security
  797.           provided by this mechanism depends completely on the strength
  798.           of the implemented authentication algorithms, the strength of
  799.           the key being used, and the correct implementation of the
  800.           security mechanism in all communicating RSVP implementations.
  801.           This mechanism also depends on the RSVP Authentication Keys
  802.           being kept confidential by all parties.  If any of these        |
  803.           assumptions are incorrect or procedures are insufficiently      |
  804.           secure, then no real security will be provided to the users of  |
  805.           this mechanism.
  806.  
  807.           Confidentiality is not provided by this mechanism; if this is   |
  808.           required, IPSEC ESP may be the best approach, although it is    |
  809.           subject to the same criticisms as IPSEC Authetication, and      |
  810.           therefore would be applicable only in specific environments.
  811.           Protection against traffic analysis is also not provided.
  812.           Mechanisms such as bulk link encryption might be used when
  813.           protection against traffic analysis is required.                *
  814.  
  815.           9.  Author's Address
  816.  
  817.                Fred Baker
  818.                Cisco Systems
  819.                519 Lado Drive
  820.                Santa Barbara,
  821.                California 93111
  822.                Phone: (408) 526-4257
  823.                Email: fred@cisco.com
  824.  
  825.  
  826.  
  827.  
  828.  
  829.  
  830.  
  831.  
  832.  
  833.  
  834.  
  835.  
  836.  
  837.  
  838.  
  839.  
  840.           Fred Baker        Expiration: November 1997          [Page 14]
  841.  
  842.  
  843.  
  844.  
  845.           Draft         RSVP Cryptographic Authentication       May 1997
  846.  
  847.  
  848.           Table of Contents
  849.  
  850.  
  851.           1 Introduction ..........................................    2
  852.           1.1 Why not  use  the  Standard  IPSEC  Authentication
  853.                Header?  ...........................................    3
  854.           2 Data Structures .......................................    3
  855.           2.1 INTEGRITY Object Format .............................    3
  856.           2.2 H-MD5 Message Header and Trailer ....................    5
  857.           3 Message Processing Rules ..............................    6
  858.           3.1 Message Generation ..................................    6
  859.           3.2 Message Reception ...................................    7
  860.           4 Key Management ........................................    8
  861.           4.1 Key Management Procedures ...........................    8
  862.           4.2 Key Management Requirements .........................   10
  863.           4.3 Pathological Cases ..................................   11
  864.           5 Conformance Requirements ..............................   11
  865.           6 Acknowledgments .......................................   12
  866.           7 References ............................................   12
  867.           8 Security Considerations ...............................   14
  868.           9 Author's Address ......................................   14
  869.  
  870.  
  871.  
  872.  
  873.  
  874.  
  875.  
  876.  
  877.  
  878.  
  879.  
  880.  
  881.  
  882.  
  883.  
  884.  
  885.  
  886.  
  887.  
  888.  
  889.  
  890.  
  891.  
  892.  
  893.  
  894.  
  895.  
  896.  
  897.  
  898.  
  899.  
  900.           Fred Baker        Expiration: November 1997          [Page 15]
  901.