123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904905906907908909910911912913914915916917918919920921922923924925926927928929930931932933934935936937938939940941942943944945946947948949950951952953954955956957958959960961962963964965966967968969970971972973974975976977978979980981982983984985986987988989990991992993994995996997998999100010011002100310041005100610071008100910101011101210131014101510161017101810191020102110221023102410251026102710281029103010311032103310341035103610371038103910401041104210431044104510461047104810491050105110521053105410551056105710581059106010611062106310641065106610671068106910701071107210731074107510761077107810791080108110821083108410851086108710881089109010911092109310941095109610971098109911001101110211031104110511061107110811091110111111121113111411151116111711181119112011211122112311241125112611271128112911301131113211331134113511361137113811391140114111421143114411451146114711481149115011511152115311541155115611571158115911601161116211631164116511661167116811691170117111721173117411751176117711781179118011811182118311841185118611871188118911901191119211931194119511961197119811991200120112021203120412051206120712081209121012111212121312141215121612171218121912201221122212231224122512261227122812291230123112321233123412351236123712381239124012411242124312441245124612471248124912501251125212531254125512561257125812591260126112621263126412651266126712681269127012711272127312741275127612771278127912801281128212831284128512861287128812891290129112921293129412951296129712981299130013011302130313041305130613071308130913101311131213131314131513161317131813191320132113221323132413251326132713281329133013311332133313341335133613371338133913401341134213431344134513461347134813491350135113521353135413551356135713581359136013611362136313641365136613671368136913701371137213731374137513761377137813791380138113821383138413851386138713881389139013911392139313941395139613971398139914001401 |
- Network Working Group Y. Sheffer
- Internet-Draft Check Point
- Intended status: Experimental H. Tschofenig
- Expires: September 20, 2008 Nokia Siemens Networks
- L. Dondeti
- V. Narayanan
- QUALCOMM, Inc.
- March 19, 2008
- IPsec Gateway Failover Protocol
- draft-sheffer-ipsec-failover-03.txt
- Status of this Memo
- By submitting this Internet-Draft, each author represents that any
- applicable patent or other IPR claims of which he or she is aware
- have been or will be disclosed, and any of which he or she becomes
- aware will be disclosed, in accordance with Section 6 of BCP 79.
- Internet-Drafts are working documents of the Internet Engineering
- Task Force (IETF), its areas, and its working groups. Note that
- other groups may also distribute working documents as Internet-
- Drafts.
- Internet-Drafts are draft documents valid for a maximum of six months
- and may be updated, replaced, or obsoleted by other documents at any
- time. It is inappropriate to use Internet-Drafts as reference
- material or to cite them other than as "work in progress."
- The list of current Internet-Drafts can be accessed at
- http://www.ietf.org/ietf/1id-abstracts.txt.
- The list of Internet-Draft Shadow Directories can be accessed at
- http://www.ietf.org/shadow.html.
- This Internet-Draft will expire on September 20, 2008.
- Abstract
- The Internet Key Exchange version 2 (IKEv2) protocol has
- computational and communication overhead with respect to the number
- of round-trips required and cryptographic operations involved. In
- remote access situations, the Extensible Authentication Protocol is
- used for authentication, which adds several more round trips and
- therefore latency.
- To re-establish security associations (SA) upon a failure recovery
- Sheffer, et al. Expires September 20, 2008 [Page 1]
- Internet-Draft IPsec Gateway Failover Protocol March 2008
- condition is time consuming, especially when an IPsec peer, such as a
- VPN gateway, needs to re-establish a large number of SAs with various
- end points. A high number of concurrent sessions might cause
- additional problems for an IPsec peer during SA re-establishment.
- In many failure cases it would be useful to provide an efficient way
- to resume an interrupted IKE/IPsec session. This document proposes
- an extension to IKEv2 that allows a client to re-establish an IKE SA
- with a gateway in a highly efficient manner, utilizing a previously
- established IKE SA.
- A client can reconnect to a gateway from which it was disconnected,
- or alternatively migrate to another gateway that is associated with
- the previous one. The proposed approach conveys IKEv2 state
- information, in the form of an encrypted ticket, to a VPN client that
- is later presented to the VPN gateway for re-authentication. The
- encrypted ticket can only be decrypted by the VPN gateway in order to
- restore state for faster session setup.
- Sheffer, et al. Expires September 20, 2008 [Page 2]
- Internet-Draft IPsec Gateway Failover Protocol March 2008
- Table of Contents
- 1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . . 4
- 1.1. Goals . . . . . . . . . . . . . . . . . . . . . . . . . . 4
- 1.2. Non-Goals . . . . . . . . . . . . . . . . . . . . . . . . 5
- 2. Terminology . . . . . . . . . . . . . . . . . . . . . . . . . 5
- 3. Usage Scenarios . . . . . . . . . . . . . . . . . . . . . . . 6
- 3.1. Recovering from a Remote Access Gateway Failover . . . . . 6
- 3.2. Recovering from an Application Server Failover . . . . . . 8
- 4. Protocol Details . . . . . . . . . . . . . . . . . . . . . . . 9
- 4.1. Requesting a Ticket . . . . . . . . . . . . . . . . . . . 9
- 4.2. Presenting a Ticket . . . . . . . . . . . . . . . . . . . 10
- 4.2.1. Protection of the IKE_SESSION_RESUME Exchange . . . . 12
- 4.2.2. Presenting a Ticket: The DoS Case . . . . . . . . . . 12
- 4.2.3. Requesting a ticket during resumption . . . . . . . . 13
- 4.3. IKE Notifications . . . . . . . . . . . . . . . . . . . . 13
- 4.4. TICKET_OPAQUE Notify Payload . . . . . . . . . . . . . . . 14
- 4.5. TICKET_GATEWAY_LIST Notify Payload . . . . . . . . . . . . 14
- 4.6. Processing Guidelines for IKE SA Establishment . . . . . . 15
- 5. The IKE Ticket . . . . . . . . . . . . . . . . . . . . . . . . 16
- 5.1. Ticket Contents . . . . . . . . . . . . . . . . . . . . . 16
- 5.2. Ticket Format . . . . . . . . . . . . . . . . . . . . . . 17
- 5.3. Ticket Identity and Lifecycle . . . . . . . . . . . . . . 17
- 5.4. Exchange of Ticket-Protecting Keys . . . . . . . . . . . . 18
- 6. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 18
- 7. Security Considerations . . . . . . . . . . . . . . . . . . . 18
- 7.1. Stolen Tickets . . . . . . . . . . . . . . . . . . . . . . 18
- 7.2. Forged Tickets . . . . . . . . . . . . . . . . . . . . . . 19
- 7.3. Denial of Service Attacks . . . . . . . . . . . . . . . . 19
- 7.4. Ticket Protection Key Management . . . . . . . . . . . . . 19
- 7.5. Ticket Lifetime . . . . . . . . . . . . . . . . . . . . . 19
- 7.6. Alternate Ticket Formats and Distribution Schemes . . . . 20
- 7.7. Identity Privacy, Anonymity, and Unlinkability . . . . . . 20
- 7.8. Replay Protection in the IKE_SESSION_RESUME Exchange . . . 20
- 8. Acknowledgements . . . . . . . . . . . . . . . . . . . . . . . 21
- 9. References . . . . . . . . . . . . . . . . . . . . . . . . . . 21
- 9.1. Normative References . . . . . . . . . . . . . . . . . . . 21
- 9.2. Informative References . . . . . . . . . . . . . . . . . . 21
- Appendix A. Related Work . . . . . . . . . . . . . . . . . . . . 22
- Appendix B. Change Log . . . . . . . . . . . . . . . . . . . . . 22
- B.1. -03 . . . . . . . . . . . . . . . . . . . . . . . . . . . 22
- B.2. -02 . . . . . . . . . . . . . . . . . . . . . . . . . . . 23
- B.3. -01 . . . . . . . . . . . . . . . . . . . . . . . . . . . 23
- B.4. -00 . . . . . . . . . . . . . . . . . . . . . . . . . . . 23
- Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . . 23
- Intellectual Property and Copyright Statements . . . . . . . . . . 25
- Sheffer, et al. Expires September 20, 2008 [Page 3]
- Internet-Draft IPsec Gateway Failover Protocol March 2008
- 1. Introduction
- The Internet Key Exchange version 2 (IKEv2) protocol has
- computational and communication overhead with respect to the number
- of round-trips required and cryptographic operations involved. In
- particular the Extensible Authentication Protocol is used for
- authentication in remote access cases, which increases latency.
- To re-establish security associations (SA) upon a failure recovery
- condition is time-consuming, especially when an IPsec peer, such as a
- VPN gateway, needs to re-establish a large number of SAs with various
- end points. A high number of concurrent sessions might cause
- additional problems for an IPsec peer.
- In many failure cases it would be useful to provide an efficient way
- to resume an interrupted IKE/IPsec session. This document proposes
- an extension to IKEv2 that allows a client to re-establish an IKE SA
- with a gateway in a highly efficient manner, utilizing a previously
- established IKE SA.
- A client can reconnect to a gateway from which it was disconnected,
- or alternatively migrate to another gateway that is associated with
- the previous one. This document proposes to maintain IKEv2 state in
- a "ticket", an opaque data structure created and used by a server and
- stored by a client, which the client cannot understand or tamper
- with. The IKEv2 protocol is extended to allow a client to request
- and present a ticket. When two gateways mutually trust each other,
- one can accept a ticket generated by the other.
- This approach is similar to the one taken by TLS session resumption
- [RFC4507] with the required adaptations for IKEv2, e.g., to
- accommodate the two-phase protocol structure. We have borrowed
- heavily from that specification.
- 1.1. Goals
- The high-level goal of this extension is to provide an IPsec failover
- solution, according to the requirements defined in
- [I-D.vidya-ipsec-failover-ps].
- Specifically, the proposed extension should allow IPsec sessions to
- be recovered from failures in remote access scenarios, in a more
- efficient manner than the basic IKE solution. This efficiency is
- primarily on the gateway side, since the gateway might have to deal
- with many thousands of concurrent requests. We should enable the
- following cases:
- Sheffer, et al. Expires September 20, 2008 [Page 4]
- Internet-Draft IPsec Gateway Failover Protocol March 2008
- o Failover from one gateway to another, where the two gateways do
- not share state but do have mutual trust. For example, the
- gateways may be operated by the same provider and share the same
- keying materials to access an encrypted ticket.
- o Recovery from an intermittent connectivity, where clients
- reconnect into the same gateway. In this case, the gateway would
- typically have detected the clients' absence and removed the state
- associated with them.
- o Recovery from a gateway restart, where clients reconnect into the
- same gateway.
- The proposed solution should additionally meet the following goals:
- o Using only symmetric cryptography to minimize CPU consumption.
- o Allowing a gateway to push state to clients.
- o Providing cryptographic agility.
- o Having no negative impact on IKEv2 security features.
- 1.2. Non-Goals
- The following are non-goals of this solution:
- o Providing load balancing among gateways.
- o Specifying how a client detects the need for a failover.
- 2. Terminology
- The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT",
- "SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this
- document are to be interpreted as described in [RFC2119].
- This document uses terminology defined in [RFC4301], [RFC4306], and
- [RFC4555]. In addition, this document uses the following terms:
- Secure domain: A secure domain comprises a set of gateways that are
- able to resume an IKEv2 session that may have been established by
- any other gateway within the domain. All gateways in the secure
- domain are expected to share some secrets, so that they can
- generate an IKEv2 ticket, verify the validity of the ticket and
- extract the IKEv2 policy and session key material from the ticket.
- IKEv2 ticket: An IKEv2 ticket is a data structure that contains all
- the necessary information that allows any gateway within the same
- secure domain as the gateway that created the ticket to verify the
- validity of the ticket and extract IKEv2 policy and session keys
- to re-establish an IKEv2 session.
- Sheffer, et al. Expires September 20, 2008 [Page 5]
- Internet-Draft IPsec Gateway Failover Protocol March 2008
- Stateless failover: When the IKEv2 session state is stored at the
- client, the IKEv2 responder is "stateless" until the client
- restores the SA with one of the gateways within the secure domain;
- thus, we refer to SA resumption with SA storage at the client as
- stateless session resumption.
- Stateful failover: When the infrastructure maintains IKEv2 session
- state, we refer to the process of IKEv2 SA re-establishment as
- stateful session resumption.
- 3. Usage Scenarios
- This specification envisions two usage scenarios for efficient IKEv2
- and IPsec SA session re-establishment.
- The first is similar to the use case specified in Section 1.1.3 of
- the IKEv2 specification [RFC4306], where the IPsec tunnel mode is
- used to establish a secure channel between a remote access client and
- a gateway; the traffic flow may be between the client and entities
- beyond the gateway.
- The second use case focuses on the usage of transport (or tunnel)
- mode to secure the communicate between two end points (e.g., two
- servers). The two endpoints have a client-server relationship with
- respect to a protocol that runs using the protections afforded by the
- IPsec SA.
- 3.1. Recovering from a Remote Access Gateway Failover
- Sheffer, et al. Expires September 20, 2008 [Page 6]
- Internet-Draft IPsec Gateway Failover Protocol March 2008
- (a)
- +-+-+-+-+-+ +-+-+-+-+-+
- ! ! IKEv2/IKEv2-EAP ! ! Protected
- ! Remote !<------------------------>! Remote ! Subnet
- ! Access ! ! Access !<--- and/or
- ! Client !<------------------------>! Gateway ! Internet
- ! ! IPsec tunnel ! !
- +-+-+-+-+-+ +-+-+-+-+-+
- (b)
- +-+-+-+-+-+ +-+-+-+-+-+
- ! ! IKE_SESSION_RESUME ! !
- ! Remote !<------------------------>! New/Old !
- ! Access ! ! Gateway !
- ! Client !<------------------------>! !
- ! ! IPsec tunnel ! !
- +-+-+-+-+-+ +-+-+-+-+-+
- Figure 1: Remote Access Gateway Failure
- In this scenario, an end-host (an entity with a host implementation
- of IPsec [RFC4301] ) establishes a tunnel mode IPsec SA with a
- gateway in a remote network using IKEv2. The end-host in this
- scenario is sometimes referred to as a remote access client. When
- the remote gateway fails, all the clients associated with the gateway
- either need to re-establish IKEv2 sessions with another gateway
- within the same secure domain of the original gateway, or with the
- original gateway if the server is back online soon.
- The clients may choose to establish IPsec SAs using a full IKEv2
- exchange or the IKE_SESSION_RESUME exchange (shown in Figure 1).
- In this scenario, the client needs to get an IP address from the
- remote network so that traffic can be encapsulated by the remote
- access gateway before reaching the client. In the initial exchange,
- the gateway may acquire IP addresses from the address pool of a local
- DHCP server. The new gateway that a client gets associated may not
- receive addresses from the same address pool. Thus, the session
- resumption protocol needs to support the assignment of a new IP
- address.
- The protocol defined in this document supports the re-allocation of
- an IP address to the client, if this capability is provided by the
- Sheffer, et al. Expires September 20, 2008 [Page 7]
- Internet-Draft IPsec Gateway Failover Protocol March 2008
- network. For example, if routing tables are modified so that traffic
- is rerouted through the new gateway. This capability is implicit in
- the use of the IKE Config mechanism, which allows the client to
- present its existing IP address and receive the same address back, if
- allowed by the gateway.
- The protocol defined here supports both stateful and stateless
- scenarios. In other words, tickets can be stored wholly on the
- client, or the ticket can be stored on the gateway (or in a database
- shared between multiple gateways), with the client only presenting a
- handle that identifies a particular ticket. In fact these scenarios
- are transparent to the protocols, with the only change being the non-
- mandatory ticket format.
- 3.2. Recovering from an Application Server Failover
- (a)
- +-+-+-+-+-+ +-+-+-+-+-+
- ! App. ! IKEv2/IKEv2-EAP ! App. !
- ! Client !<------------------------>! Server !
- ! & ! ! & !
- ! IPsec !<------------------------>! IPsec !
- ! host ! IPsec transport/ ! host !
- +-+-+-+-+-+ tunnel mode SA +-+-+-+-+-+
- (b)
- +-+-+-+-+-+ +-+-+-+-+-+
- ! App. ! IKE_SESSION_RESUME ! New !
- ! Client !<------------------------>! Server !
- ! & ! ! & !
- ! IPsec !<------------------------>! IPsec !
- ! host ! IPsec transport/ ! host !
- +-+-+-+-+-+ tunnel mode SA +-+-+-+-+-+
- Figure 2: Application Server Failover
- The second usage scenario is as follows: two entities with IPsec host
- implementations establish an IPsec transport or tunnel mode SA
- between themselves; this is similar to the model described in Section
- 1.1.2. of [RFC4306]. At the application level, one of the entities
- is always the client and the other is a server. From that view
- point, the IKEv2 exchange is always initiated by the client. This
- allows the Initiator (the client) to authenticate itself using EAP,
- Sheffer, et al. Expires September 20, 2008 [Page 8]
- Internet-Draft IPsec Gateway Failover Protocol March 2008
- as long as the Responder (or the application server) allows it.
- If the application server fails, the client may find other servers
- within the same secure domain for service continuity. It may use a
- full IKEv2 exchange or the IKE_SESSION_RESUME exchange to re-
- establish the IPsec SAs for secure communication required by the
- application layer signaling.
- The client-server relationship at the application layer ensures that
- one of the entities in this usage scenario is unambiguously always
- the Initiator and the other the Responder. This role determination
- also allows the Initiator to request an address in the Responder's
- network using the Configuration Payload mechanism of the IKEv2
- protocol. If the client has thus received an address during the
- initial IKEv2 exchange, when it associates with a new server upon
- failure of the original server, it needs to request an address,
- specifying its assigned address. The server may allow the client to
- use the original address or if it is not permitted to use that
- address, assign a new address.
- 4. Protocol Details
- This section provides protocol details and contains the normative
- parts. This document defines two protocol exchanges, namely
- requesting a ticket and presenting a ticket. Section 4.1 describes
- the procedure to request a ticket and Section 4.2 illustrates how to
- present a ticket.
- 4.1. Requesting a Ticket
- A client MAY request a ticket in the following exchanges:
- o In an IKE_AUTH exchange, as shown in the example message exchange
- in Figure 3 below.
- o In a CREATE_CHILD_SA exchange, when an IKE SA is rekeyed.
- o In an Informational exchange, if the gateway previously replied
- with an N(TICKET_ACK) instead of providing a ticket.
- o In an Informational exchange, when the ticket lifetime is about to
- expire.
- o In an IKE_SESSION_RESUME exchange, see Section 4.2.3.
- Normally, a client requests a ticket in the third message of an IKEv2
- exchange (the first of IKE_AUTH). Figure 3 shows the message
- exchange for this typical case.
- Sheffer, et al. Expires September 20, 2008 [Page 9]
- Internet-Draft IPsec Gateway Failover Protocol March 2008
- Initiator Responder
- ----------- -----------
- HDR, SAi1, KEi, Ni -->
- <-- HDR, SAr1, KEr, Nr, [CERTREQ]
- HDR, SK {IDi, [CERT,] [CERTREQ,] [IDr,]
- AUTH, SAi2, TSi, TSr, N(TICKET_REQUEST)} -->
- Figure 3: Example Message Exchange for Requesting a Ticket
- The notification payloads are described in Section 4.3. The above is
- an example, and IKEv2 allows a number of variants on these messages.
- A complete description of IKEv2 can be found in [RFC4718].
- When an IKEv2 responder receives a request for a ticket using the
- N(TICKET_REQUEST) payload it MUST perform one of the following
- operations if it supports the extension defined in this document:
- o it creates a ticket and returns it with the N(TICKET_OPAQUE)
- payload in a subsequent message towards the IKEv2 initiator. This
- is shown in Figure 4.
- o it returns an N(TICKET_NACK) payload, if it refuses to grant a
- ticket for some reason.
- o it returns an N(TICKET_ACK), if it cannot grant a ticket
- immediately, e.g., due to packet size limitations. In this case
- the client MAY request a ticket later using an Informational
- exchange, at any time during the lifetime of the IKE SA.
- Provided the IKEv2 exchange was successful, the IKEv2 initiator can
- accept the requested ticket. The ticket may be used later with an
- IKEv2 responder which supports this extension. Figure 4 shows how
- the initiator receives the ticket.
- Initiator Responder
- ----------- -----------
- <-- HDR, SK {IDr, [CERT,] AUTH, SAr2, TSi,
- TSr, N(TICKET_OPAQUE) [,N(TICKET_GATEWAY_LIST)]}
- Figure 4: Receiving a Ticket
- 4.2. Presenting a Ticket
- Following a communication failure, a client re-initiates an IKE
- exchange to the same gateway or to a different one, and includes a
- ticket in the first message. A client MAY initiate a regular (non-
- Sheffer, et al. Expires September 20, 2008 [Page 10]
- Internet-Draft IPsec Gateway Failover Protocol March 2008
- ticket-based) IKEv2 exchange even if it is in possession of a valid
- ticket. A client MUST NOT present a ticket after the ticket's
- lifetime has expired.
- It is up to the client's local policy to decide when the
- communication with the IKEv2 responder is seen as interrupted and a
- new exchange needs to be initiated and the session resumption
- procedure to be initiated.
- Tickets are intended for one-time use: a client MUST NOT reuse a
- ticket, either with the same or with a different gateway. A gateway
- SHOULD reject a reused ticket. Note however that a gateway can elect
- not to retain a list of already-used tickets. Potential replay
- attacks on such gateways are mitigated by the cookie mechanism
- described in Section 4.2.2.
- This document specifies a new IKEv2 exchange type called
- IKE_SESSION_RESUME whose value is TBA by IANA. This exchange is
- somewhat similar to the IKE_AUTH exchange, and results in the
- creation of a Child SA. The client SHOULD NOT use this exchange type
- unless it knows that the gateway supports it, either through
- configuration, by out-of-band means or by using the Gateway List
- provision.
- Initiator Responder
- ----------- -----------
- HDR, Ni, N(TICKET_OPAQUE), [N+,]
- SK {IDi, [IDr,] SAi2, TSi, TSr [, CP(CFG_REQUEST)]} -->
- The exchange type in HDR is set to 'IKE_SESSION_RESUME'.
- See Section 4.2.1 for details on computing the protected (SK)
- payload.
- When the IKEv2 responder receives a ticket using the N(TICKET_OPAQUE)
- payload it MUST perform one of the following steps if it supports the
- extension defined in this document:
- o If it is willing to accept the ticket, it responds as shown in
- Figure 5.
- o It responds with an unprotected N(TICKET_NACK) notification, if it
- rejects the ticket for any reason. In that case, the initiator
- should re-initiate a regular IKE exchange. One such case is when
- the responder receives a ticket for an IKE SA that has previously
- been terminated on the responder itself, which may indicate
- inconsistent state between the IKEv2 initiator and the responder.
- However, a responder is not required to maintain the state for
- Sheffer, et al. Expires September 20, 2008 [Page 11]
- Internet-Draft IPsec Gateway Failover Protocol March 2008
- terminated sessions.
- o When the responder receives a ticket for an IKE SA that is still
- active and if the responder accepts it, then the old SAs SHOULD be
- silently deleted without sending a DELETE informational exchange.
- Initiator Responder
- ----------- -----------
- <-- HDR, SK {IDr, Nr, SAr2, [TSi, TSr],
- [CP(CFG_REPLY)]}
- Figure 5: IKEv2 Responder accepts the ticket
- Again, the exchange type in HDR is set to 'IKE_SESSION_RESUME'.
- The SK payload is protected using the cryptographic parameters
- derived from the ticket, see Section 4.2.1 below.
- At this point a new IKE SA is created by both parties, see
- Section 4.6. This is followed by normal derivation of a child SA,
- per Sec. 2.17 of [RFC4306].
- 4.2.1. Protection of the IKE_SESSION_RESUME Exchange
- The two messages of this exchange are protected by a "subset" IKE SA.
- The key material is derived from the ticket, as follows:
- {SK_d2 | SK_ai | SK_ar | SK_ei | SK_er} = prf+(SK_d_old, Ni)
- where SK_d_old is the SK_d value of the original IKE SA, as retrieved
- from the ticket. Ni guarantees freshness of the key material. SK_d2
- is used later to derive the new IKE SA, see Section 4.6.
- See [RFC4306] for the notation. "prf" is determined from the SA value
- in the ticket.
- 4.2.2. Presenting a Ticket: The DoS Case
- When receiving the first message of the IKE_SESSION_RESUME exchange,
- the gateway may decide that it is under a denial-of-service attack.
- In such a case, the gateway SHOULD defer the establishment of session
- state until it has verified the identity of the client. We use a
- variation of the IKEv2 Cookie mechanism, where the cookie is
- protected.
- In the two messages that follow, the gateway responds that it is
- Sheffer, et al. Expires September 20, 2008 [Page 12]
- Internet-Draft IPsec Gateway Failover Protocol March 2008
- unwilling to resume the session until the client is verified, and the
- client resubmits its first message, this time with the cookie:
- Initiator Responder
- ----------- -----------
- <-- HDR, SK{N(COOKIE)}
- HDR, Ni, N(TICKET_OPAQUE), [N+,]
- SK {N(COOKIE), IDi, [IDr,] SAi2, TSi, TSr [, CP(CFG_REQUEST)]} -->
- Assuming the cookie is correct, the gateway now replies normally.
- This now becomes a 4-message exchange. The entire exchange is
- protected as defined in Section 4.2.1.
- See Sec. 2.6 and Sec. 3.10.1 of [RFC4306] for more guidance regarding
- the usage and syntax of the cookie. Note that the cookie is
- completely independent of the IKEv2 ticket.
- 4.2.3. Requesting a ticket during resumption
- When resuming a session, a client will typically request a new ticket
- immediately, so it is able to resume the session again in the case of
- a second failure. Therefore, the N(TICKET_REQUEST), N(TICKET_OPAQUE)
- and N(TICKET_GATEWAY_LIST) notifications may be piggybacked as
- protected payloads to the IKE_SESSION_RESUME exchange.
- The returned ticket (if any) will correspond to the IKE SA created
- per the rules described in Section 4.6.
- 4.3. IKE Notifications
- This document defines a number of notifications. The notification
- numbers are TBA by IANA.
- +---------------------+--------+-----------------+
- | Notification Name | Number | Data |
- +---------------------+--------+-----------------+
- | TICKET_OPAQUE | TBA1 | See Section 4.4 |
- | TICKET_REQUEST | TBA2 | None |
- | TICKET_ACK | TBA3 | None |
- | TICKET_NACK | TBA4 | None |
- | TICKET_GATEWAY_LIST | TBA5 | See Section 4.5 |
- +---------------------+--------+-----------------+
- Sheffer, et al. Expires September 20, 2008 [Page 13]
- Internet-Draft IPsec Gateway Failover Protocol March 2008
- 4.4. TICKET_OPAQUE Notify Payload
- The data for the TICKET_OPAQUE Notify payload consists of the Notify
- message header, a lifetime field and the ticket itself. The four
- octet lifetime field contains the number of seconds until the ticket
- expires as an unsigned integer. Section 5.2 describes a possible
- ticket format, and Section 5.3 offers further guidelines regarding
- the ticket's lifetime.
- 0 1 2 3
- 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
- +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
- ! Next Payload !C! Reserved ! Payload Length !
- +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
- ! Protocol ID ! SPI Size = 0 ! Notify Message Type !
- +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
- ! Lifetime !
- +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
- ! !
- ~ Ticket ~
- ! !
- +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
- Figure 6: TICKET_OPAQUE Notify Payload
- 4.5. TICKET_GATEWAY_LIST Notify Payload
- The TICKET_GATEWAY_LIST Notify payload contains the Notify payload
- header followed by a sequence of one or more gateway identifiers,
- each of the format depicted in Figure 8.
- 0 1 2 3
- 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
- +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
- ! Next Payload !C! Reserved ! Payload Length !
- +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
- ! Protocol ID ! SPI Size = 0 ! Notify Message Type !
- +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
- ! !
- ~ Gateway Identifier List ~
- ! !
- +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
- Figure 7: TICKET_GATEWAY_LIST Notify Payload
- Sheffer, et al. Expires September 20, 2008 [Page 14]
- Internet-Draft IPsec Gateway Failover Protocol March 2008
- 0 1 2 3
- 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
- +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
- ! ID Type ! Reserved ! Length !
- +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
- ! !
- ~ Identification Data ~
- ! !
- +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
- Figure 8: Gateway Identifier for One Gateway
- ID Type:
- The ID Type contains a restricted set of the IKEv2 ID payloads
- (see [RFC4306], Section 3.5). Allowed ID types are: ID_IPV4_ADDR,
- ID_IPV6_ADDR, ID_FQDN and the various reserved values.
- Reserved:
- This field must be sent as 0 and must be ignored when received.
- Length:
- The length field indicates the total size of the Identification
- data.
- Identification Data:
- The Identification Data field is of variable length and depends on
- the ID type. The length is not necessarily a multiple of 4.
- 4.6. Processing Guidelines for IKE SA Establishment
- When a ticket is presented, the gateway parses the ticket to retrieve
- the state of the old IKE SA, and the client retrieves this state from
- its local store. Both peers now create state for the new IKE SA as
- follows:
- o The SA value (transforms etc.) is taken directly from the ticket.
- o The sequence numbers are reset to 0.
- o The IDi value is obtained from the ticket.
- o The IDr value is obtained from the new exchange. The gateway MAY
- make policy decisions based on the IDr value encoded in the
- ticket.
- Sheffer, et al. Expires September 20, 2008 [Page 15]
- Internet-Draft IPsec Gateway Failover Protocol March 2008
- o The SPI values are created anew, similarly to a regular IKE
- exchange. SPI values from the ticket SHOULD NOT be reused. This
- restriction is to avoid problems caused by collisions with other
- SPI values used already by the initiator/responder. The SPI value
- should only be reused if collision avoidance can be ensured
- through other means.
- The cryptographic material is refreshed based on the ticket and the
- nonce values, Ni, and Nr, from the current exchange. A new SKEYSEED
- value is derived as follows:
- SKEYSEED = prf(SK_d2, Ni | Nr)
- where SK_d2 was computed earlier (Section 4.2.1).
- The keys are derived as follows, unchanged from IKEv2:
- {SK_d | SK_ai | SK_ar | SK_ei | SK_er | SK_pi | SK_pr} =
- prf+(SKEYSEED, Ni | Nr | SPIi | SPIr)
- where SPIi, SPIr are the SPI values created in the new IKE exchange.
- See [RFC4306] for the notation. "prf" is determined from the SA value
- in the ticket.
- 5. The IKE Ticket
- This section lists the required contents of the ticket, and
- recommends a non-normative format. This is followed by a discussion
- of the ticket's lifecycle.
- 5.1. Ticket Contents
- The ticket MUST encode at least the following state from an IKE SA.
- These values MUST be encrypted and authenticated.
- o IDi, IDr.
- o SPIi, SPIr.
- o SAr (the accepted proposal).
- o SK_d.
- In addition, the ticket MUST encode a protected ticket expiration
- value.
- Sheffer, et al. Expires September 20, 2008 [Page 16]
- Internet-Draft IPsec Gateway Failover Protocol March 2008
- 5.2. Ticket Format
- This document does not specify a mandatory-to-implement or a
- mandatory-to-use ticket format. The following format is RECOMMENDED,
- if interoperability between gateways is desired.
- struct {
- [authenticated] struct {
- octet format_version; // 1 for this version of the protocol
- octet reserved[3]; // sent as 0, ignored by receiver.
- octet key_id[8]; // arbitrary byte string
- opaque IV[0..255]; // actual length (possibly 0) depends
- // on the encryption algorithm
- [encrypted] struct {
- opaque IDi, IDr; // the full payloads
- octet SPIi[8], SPIr[8];
- opaque SA; // the full SAr payload
- octet SK_d[0..255]; // actual length depends on SA value
- int32 expiration; // an absolute time value, seconds
- // since Jan. 1, 1970
- } ikev2_state;
- } protected_part;
- opaque MAC[0..255]; // the length (possibly 0) depends
- // on the integrity algorithm
- } ticket;
- Note that the key defined by "key_id" determines the encryption and
- authentication algorithms used for this ticket. Those algorithms are
- unrelated to the transforms defined by the SA payload.
- The reader is referred to a recent draft
- [I-D.rescorla-stateless-tokens] that recommends a similar (but not
- identical) ticket format, and discusses related security
- considerations in depth.
- 5.3. Ticket Identity and Lifecycle
- Each ticket is associated with a single IKE SA. In particular, when
- an IKE SA is deleted, the client MUST delete its stored ticket.
- A ticket is therefore associated with the tuple (IDi, IDr). The
- client MAY however use a ticket to approach other gateways that are
- willing to accept it. How a client discovers such gateways is
- outside the scope of this document.
- The lifetime of the ticket carried in the N(TICKET_OPAQUE)
- Sheffer, et al. Expires September 20, 2008 [Page 17]
- Internet-Draft IPsec Gateway Failover Protocol March 2008
- notification should be the minimum of the IKE SA lifetime (per the
- gateway's local policy) and its re-authentication time, according to
- [RFC4478]. Even if neither of these are enforced by the gateway, a
- finite lifetime MUST be specified for the ticket.
- 5.4. Exchange of Ticket-Protecting Keys
- This document does not define an interoperable mechanism for the
- generation and distribution of the keys that protect IKE keys. Such
- a mechanism can be developed, based on the GDOI group key exchange
- protocol [RFC3547]. There is on-going work to enable the generation
- of non-IPsec keys by means of GDOI, e.g. to provide RSVP router
- groups with a single key [I-D.weis-gdoi-for-rsvp]. This work can be
- generalized for our purposes. We note that there are no significant
- performance requirements on such a protocol, as key rollover can be
- at a daily or even more leisurely rate.
- 6. IANA Considerations
- This document requires a number of IKEv2 notification status types in
- Section 4.3, to be registered by IANA. The corresponding registry
- was established by IANA.
- The document defines a new IKEv2 exchange in Section 4.2. The
- corresponding registry was established by IANA.
- 7. Security Considerations
- This section addresses security issues related to the usage of a
- ticket.
- 7.1. Stolen Tickets
- An eavesdropper or man-in-the-middle may try to obtain a ticket and
- use it to establish a session with the IKEv2 responder. This can
- happen in different ways: by eavesdropping on the initial
- communication and copying the ticket when it is granted and before it
- is used, or by listening in on a client's use of the ticket to resume
- a session. However, since the ticket's contents is encrypted and the
- attacker does not know the corresponding secret key (specifically,
- SK_d), a stolen ticket cannot be used by an attacker to resume a
- session. An IKEv2 responder MUST use strong encryption and integrity
- protection of the ticket to prevent an attacker from obtaining the
- ticket's contents, e.g., by using a brute force attack.
- Sheffer, et al. Expires September 20, 2008 [Page 18]
- Internet-Draft IPsec Gateway Failover Protocol March 2008
- 7.2. Forged Tickets
- A malicious user could forge or alter a ticket in order to resume a
- session, to extend its lifetime, to impersonate as another user, or
- to gain additional privileges. This attack is not possible if the
- ticket is protected using a strong integrity protection algorithm.
- 7.3. Denial of Service Attacks
- The key_id field defined in the recommended ticket format helps the
- server efficiently reject tickets that it did not issue. However, an
- adversary could generate and send a large number of tickets to a
- gateway for verification. To minimize the possibility of such denial
- of service, ticket verification should be lightweight (e.g., using
- efficient symmetric key cryptographic algorithms).
- 7.4. Ticket Protection Key Management
- A full description of the management of the keys used to protect the
- ticket is beyond the scope of this document. A list of RECOMMENDED
- practices is given below.
- o The keys should be generated securely following the randomness
- recommendations in [RFC4086].
- o The keys and cryptographic protection algorithms should be at
- least 128 bits in strength.
- o The keys should not be used for any other purpose than generating
- and verifying tickets.
- o The keys should be changed regularly.
- o The keys should be changed if the ticket format or cryptographic
- protection algorithms change.
- 7.5. Ticket Lifetime
- An IKEv2 responder controls the lifetime of a ticket, based on the
- operational and security requirements of the environment in which it
- is deployed. The responder provides information about the ticket
- lifetime to the IKEv2 initiator, allowing it to manage its tickets.
- An IKEv2 client may present a ticket in its possession to a gateway,
- even if the IKE SA associated with this ticket had previously been
- terminated by another gateway (the gateway that originally provided
- the ticket). Where such usage is against the local security policy,
- an Invalid Ticket List (ITL) may be used, see
- [I-D.rescorla-stateless-tokens]. Management of such lists is outside
- the scope of the current document. Note that a policy that requires
- tickets to have shorter lifetimes (e.g., 1 hour) significantly
- mitigates this risk.
- Sheffer, et al. Expires September 20, 2008 [Page 19]
- Internet-Draft IPsec Gateway Failover Protocol March 2008
- 7.6. Alternate Ticket Formats and Distribution Schemes
- If the ticket format or distribution scheme defined in this document
- is not used, then great care must be taken in analyzing the security
- of the solution. In particular, if confidential information, such as
- a secret key, is transferred to the client, it MUST be done using
- secure communication to prevent attackers from obtaining or modifying
- the key. Also, the ticket MUST have its integrity and
- confidentiality protected with strong cryptographic techniques to
- prevent a breach in the security of the system.
- 7.7. Identity Privacy, Anonymity, and Unlinkability
- This document mandates that the content of the ticket MUST be
- encrypted in order to avoid leakage of information, such as the
- identities of an IKEv2 initiator and a responder. Thus, it prevents
- the disclosure of potentially sensitive information carried within
- the ticket.
- When an IKEv2 initiator presents the ticket as part of the
- IKE_SESSION_RESUME exchange, confidentiality is not provided for the
- exchange. Although the ticket itself is encrypted there might still
- be a possibility for an on-path adversary to observe multiple
- exchange handshakes where the same ticket is used and therefore to
- conclude that they belong to the same communication end points.
- Administrators that use the ticket mechanism described in this
- document should be aware that unlinkability may not be provided by
- this mechanism. Note, however, that IKEv2 does not provide active
- user identity confidentiality for the IKEv2 initiator either.
- 7.8. Replay Protection in the IKE_SESSION_RESUME Exchange
- A major design goal of this protocol extension has been the two-
- message exchange for session resumption. There is a tradeoff between
- this abbreviated exchange and replay protection. It is RECOMMENDED
- that the gateway should cache tickets, and reject replayed ones.
- However some gateways may not do that in order to reduce state size.
- In addition, an adversary may replay a ticket last presented to
- gateway A, into gateway B. Our cookie-based mechanism (Section 4.2.2)
- mitigates both scenarios by ensuring that the client presenting the
- ticket is indeed its "owner": the client can be required by the
- gateway to prove that it knows the ticket's secret, before any state
- is committed on the gateway. Note that this is a stronger guarantee
- than the regular IKE cookie mechanism, which only proves IP return
- routability of the client. This is enabled by including the cookie
- in the protected portion of the message.
- For performance reasons, the cookie mechanism is optional, and
- Sheffer, et al. Expires September 20, 2008 [Page 20]
- Internet-Draft IPsec Gateway Failover Protocol March 2008
- invoked by the gateway only when it suspects that it is the subject
- of a denial-of-service attack.
- In any case, a ticket replayed by an adversary only causes partial
- IKE state to be created on the gateway. The IKE exchange cannot be
- completed and an IKE SA cannot be created unless the client knows the
- ticket's secret values.
- 8. Acknowledgements
- We would like to thank Paul Hoffman, Pasi Eronen, Florian Tegeler,
- Yoav Nir and Tero Kivinen for their many helpful comments.
- 9. References
- 9.1. Normative References
- [RFC2119] Bradner, S., "Key words for use in RFCs to Indicate
- Requirement Levels", BCP 14, RFC 2119, March 1997.
- [RFC4306] Kaufman, C., "Internet Key Exchange (IKEv2) Protocol",
- RFC 4306, December 2005.
- 9.2. Informative References
- [I-D.friedman-ike-short-term-certs]
- Friedman, A., "Short-Term Certificates",
- draft-friedman-ike-short-term-certs-02 (work in progress),
- June 2007.
- [I-D.rescorla-stateless-tokens]
- Rescorla, E., "How to Implement Secure (Mostly) Stateless
- Tokens", draft-rescorla-stateless-tokens-01 (work in
- progress), March 2007.
- [I-D.vidya-ipsec-failover-ps]
- Narayanan, V., "IPsec Gateway Failover and Redundancy -
- Problem Statement and Goals",
- draft-vidya-ipsec-failover-ps-02 (work in progress),
- December 2007.
- [I-D.weis-gdoi-for-rsvp]
- Weis, B., "Group Domain of Interpretation (GDOI) support
- for RSVP", draft-weis-gdoi-for-rsvp-01 (work in progress),
- February 2008.
- Sheffer, et al. Expires September 20, 2008 [Page 21]
- Internet-Draft IPsec Gateway Failover Protocol March 2008
- [RFC3547] Baugher, M., Weis, B., Hardjono, T., and H. Harney, "The
- Group Domain of Interpretation", RFC 3547, July 2003.
- [RFC4086] Eastlake, D., Schiller, J., and S. Crocker, "Randomness
- Requirements for Security", BCP 106, RFC 4086, June 2005.
- [RFC4301] Kent, S. and K. Seo, "Security Architecture for the
- Internet Protocol", RFC 4301, December 2005.
- [RFC4478] Nir, Y., "Repeated Authentication in Internet Key Exchange
- (IKEv2) Protocol", RFC 4478, April 2006.
- [RFC4507] Salowey, J., Zhou, H., Eronen, P., and H. Tschofenig,
- "Transport Layer Security (TLS) Session Resumption without
- Server-Side State", RFC 4507, May 2006.
- [RFC4555] Eronen, P., "IKEv2 Mobility and Multihoming Protocol
- (MOBIKE)", RFC 4555, June 2006.
- [RFC4718] Eronen, P. and P. Hoffman, "IKEv2 Clarifications and
- Implementation Guidelines", RFC 4718, October 2006.
- Appendix A. Related Work
- [I-D.friedman-ike-short-term-certs] is on-going work that discusses
- the use of short-term certificates for client re-authentication. It
- is similar to the ticket approach described in this document in that
- they both require enhancements to IKEv2 to allow information request,
- e.g., for a certificate or a ticket. However, the changes required
- by the former are fewer since an obtained certificate is valid for
- any IKE responder that is able to verify them. On the other hand,
- short-term certificates, while eliminating the usability issues of
- user re-authentication, do not reduce the amount of effort performed
- by the gateway in failover situations.
- Appendix B. Change Log
- B.1. -03
- Removed counter mechanism. Added an optional anti-DoS mechanism,
- based on IKEv2 cookies (removed previous discussion of cookies).
- Clarified that gateways may support reallocation of same IP address,
- if provided by network. Proposed a solution outline to the problem
- of key exchange for the keys that protect tickets. Added fields to
- the ticket to enable interoperability. Removed incorrect MOBIKE
- notification.
- Sheffer, et al. Expires September 20, 2008 [Page 22]
- Internet-Draft IPsec Gateway Failover Protocol March 2008
- B.2. -02
- Clarifications on generation of SPI values, on the ticket's lifetime
- and on the integrity protection of the anti-replay counter.
- Eliminated redundant SPIs from the notification payloads.
- B.3. -01
- Editorial review. Removed 24-hour limitation on ticket lifetime,
- lifetime is up to local policy.
- B.4. -00
- Initial version. This draft is a selective merge of
- draft-sheffer-ike-session-resumption-00 and
- draft-dondeti-ipsec-failover-sol-00.
- Authors' Addresses
- Yaron Sheffer
- Check Point Software Technologies Ltd.
- 5 Hasolelim St.
- Tel Aviv 67897
- Israel
- Email: yaronf@checkpoint.com
- Hannes Tschofenig
- Nokia Siemens Networks
- Otto-Hahn-Ring 6
- Munich, Bavaria 81739
- Germany
- Email: Hannes.Tschofenig@nsn.com
- URI: http://www.tschofenig.priv.at
- Lakshminath Dondeti
- QUALCOMM, Inc.
- 5775 Morehouse Dr
- San Diego, CA
- USA
- Phone: +1 858-845-1267
- Email: ldondeti@qualcomm.com
- Sheffer, et al. Expires September 20, 2008 [Page 23]
- Internet-Draft IPsec Gateway Failover Protocol March 2008
- Vidya Narayanan
- QUALCOMM, Inc.
- 5775 Morehouse Dr
- San Diego, CA
- USA
- Phone: +1 858-845-2483
- Email: vidyan@qualcomm.com
- Sheffer, et al. Expires September 20, 2008 [Page 24]
- Internet-Draft IPsec Gateway Failover Protocol March 2008
- Full Copyright Statement
- Copyright (C) The IETF Trust (2008).
- This document is subject to the rights, licenses and restrictions
- contained in BCP 78, and except as set forth therein, the authors
- retain all their rights.
- This document and the information contained herein are provided on an
- "AS IS" basis and THE CONTRIBUTOR, THE ORGANIZATION HE/SHE REPRESENTS
- OR IS SPONSORED BY (IF ANY), THE INTERNET SOCIETY, THE IETF TRUST AND
- THE INTERNET ENGINEERING TASK FORCE DISCLAIM ALL WARRANTIES, EXPRESS
- OR IMPLIED, INCLUDING BUT NOT LIMITED TO ANY WARRANTY THAT THE USE OF
- THE INFORMATION HEREIN WILL NOT INFRINGE ANY RIGHTS OR ANY IMPLIED
- WARRANTIES OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE.
- Intellectual Property
- The IETF takes no position regarding the validity or scope of any
- Intellectual Property Rights or other rights that might be claimed to
- pertain to the implementation or use of the technology described in
- this document or the extent to which any license under such rights
- might or might not be available; nor does it represent that it has
- made any independent effort to identify any such rights. Information
- on the procedures with respect to rights in RFC documents can be
- found in BCP 78 and BCP 79.
- Copies of IPR disclosures made to the IETF Secretariat and any
- assurances of licenses to be made available, or the result of an
- attempt made to obtain a general license or permission for the use of
- such proprietary rights by implementers or users of this
- specification can be obtained from the IETF on-line IPR repository at
- http://www.ietf.org/ipr.
- The IETF invites any interested party to bring to its attention any
- copyrights, patents or patent applications, or other proprietary
- rights that may cover technology that may be required to implement
- this standard. Please address the information to the IETF at
- ietf-ipr@ietf.org.
- Sheffer, et al. Expires September 20, 2008 [Page 25]
|