EAP                                                                  
   Internet Draft                                         H. Tschofenig 
                                                          D. Kroeselberg 
                                                                 Siemens 
                                                    Corporate Technology 
   Document: draft-tschofenig-eap-ikev2-00.txt                          
   Expires: October 2003                                     April 2003 
    
    
                             EAP IKEv2 Method 
                                (EAP-IKEv2) 
    
    
Status of this Memo 
 
    
   This document is an Internet-Draft and is subject to all provisions  
   of Section 10 of RFC2026.  
    
   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/1id-abstracts.html  
    
   The list of Internet-Draft Shadow Directories can be accessed at  
   http://www.ietf.org/shadow.html  
    
Abstract 
    
   EAP-IKEv2 is an EAP method which reuses the cryptography and the 
   payloads of IKEv2, creating a flexible EAP method that supports both 
   symmetric and asymmetric authentication. Furthermore protection of 
   legacy authentication mechanisms is supported. This EAP method 
   offers the security benefits of IKEv2 without the goal of 
   establishing IPsec security associations.  
    
Table of Contents 
    
   1. Introduction..................................................2 
   2. Terminology...................................................2 
   3. Protocol overview.............................................3 
   4. Packet Format.................................................6 
 
 
Tschofenig, Kroselberg   Expires - October 2003               [Page 1] 
                              EAP IKEv2                    April 2003 
 
 
   5. Key derivation................................................7 
   6. Security Considerations.......................................7 
   7. Open Issues...................................................8 
   8. References....................................................8 
   Acknowledgments..................................................9 
   Author's Addresses...............................................9 
    
1. Introduction 
    
   IKEv2 [2] is a protocol which consists of two phases:  
    
   (1) an authentication and key exchange protocol which establishes an 
   IKE-SA.  
    
   (2) messages and payloads which focus on the negotiation of 
   parameters in order to establish IPsec security associations (i.e. 
   Child-SAs). These payloads contain algorithm parameters and traffic 
   selector fields.  
    
   In addition to the above-mentioned parts IKEv2 also includes some 
   payloads and messages which allow configuration parameters to be 
   exchanged primarily for remote access scenarios.  
    
   The EAP-IKEv2 method defined by this document primarily uses the 
   IKEv2 payloads and messages used for phase (1).  
    
   IKEv2 provides an improvement over IKEv1 [5] as described in 
   Appendix A of [2]. Important for this document are the reduced 
   number of initial exchanges, support of legacy authentication, 
   decreased latency of the initial exchange, optional DoS protection 
   capability and some other fixes (e.g. hash problem). IKEv2 is a 
   cryptographically sound protocol that has received a considerable 
   amount of expert review and that benefits from a long practical 
   experience with IKE.  
   The goal of EAP-IKEv2 is to inherit these properties within an 
   efficient, secure EAP method. 
    
   In addition, IKEv2 provides authentication and key exchange 
   capabilities which allow an entity to use symmetric as well as 
   asymmetric authentication in addition to legacy authentication 
   support within a single protocol. Such flexibility is considered 
   important for an EAP method and is provided by EAP-IKEv2. 
    
   [6] provides a good tutorial for IKEv2 design decisions.  
    
2. Terminology 
    
   This document does not introduce new terms other than those defined 
   in [1] or in [2].  
 
 
Tschofenig, Kroselberg   Expires - October 2003               [Page 2] 
                              EAP IKEv2                    April 2003 
 
 
    
3. Protocol overview 
    
   The protocol for symmetric and asymmetric authentication within EAP-
   IKEv2 differs from IKEv2 only in the computation of the AUTH 
   payload. For symmetric authentication no CERT and CERTREQ payloads 
   are required. Figure 2 depicts such a protocol exchange. The 
   following types of identities are used in this exchange:  
    
   a) The first part of the (outer) EAP message exchange provides 
   information where the protocol messages described below terminate. 
   This message exchange primarily is an identity request/response.  
    
   b) The identities used within EAP-IKEv2 for both the initiator and 
   the responder. The initiator identity is often associated with a 
   user identity such as a fully-qualified RFC 822 email address. The 
   identity of the responder might be a FQDN. The identity is of 
   importance for authorization.  
    
   For secure legacy authentication an EAP message exchange is 
   protected with the established IKE-SA as shown in Figure 3. This 
   exchange again adds EAP identities.  
    
   c) This inner EAP message exchange primarily serves the purpose of 
   client authentication. The two identities used thereby are the EAP 
   identity (i.e. a NAI) and possibly a separate identity for the 
   selected EAP method.  
    
   The large number of identities is required due to nesting of 
   authentication methods and due to overloaded function of the 
   identity for routing (i.e. authentication end point indication). 
    
   Hence with this additional (nested) EAP exchange the end point of 
   the EAP-IKEv2 exchange might not be the same as the end point of the 
   inner EAP exchange which is protected by the IKE-SA (which in this 
   case is not protected by the IKE-SA any more between the EAP-IKEv2 
   endpoint and the endpoint of the inner EAP exchange, but might be 
   protected by other means that are not considered in this document).  
 
   This section illustrates some message exchanges for use in EAP-
   IKEv2. They are taken from [2], and are adapted. Since this document 
   does not describe frameworks or particular architectures the message 
   exchange takes place between two parties - between the Initiator (I) 
   and the Responder (R). In context of EAP the Initiator is often 
   called Authenticating Peer whereas the Responder is referred as 
   Authenticator.  
    


 
 
Tschofenig, Kroselberg   Expires - October 2003               [Page 3] 
                              EAP IKEv2                    April 2003 
 
 
   The first message flow shows EAP-IKEv2 without the optional DoS 
   protection exchanges. The core EAP-IKEv2 exchange consists of four 
   messages (two roundtrips)_only: 
    
   I <-- R: EAP-Request/Identity 
    
   I --> R: EAP-Response/Identity(Id) 
    
   I <-- R: EAP-Request/EAP-Type=EAP-IKEv2(Start) 
    
   I --> R: EAP-Response/EAP-Type=EAP-IKEv2(HDR(A,0), SAi1, KEi, Ni) 
 
   I <-- R: EAP-Request/EAP-Type=EAP-IKEv2( 
            HDR(A,B), SAr1, KEr, Nr, [CERTREQ]) 
    
   I --> R: EAP-Response/EAP-Type=EAP-IKEv2( 
            HDR(A,B), SK {IDi, [CERT,] [CERTREQ,] [IDr,], AUTH}) 
    
   I <-- R: EAP-Request/EAP-Type=EAP-IKEv2( 
            HDR(A,B), SK {IDr, [CERT,] AUTH}) 
    
   I --> R: EAP-Response/EAP-Type=EAP-IKEv2(Finish) 
    
   I <-- R: EAP-Success 
    
                     Figure 1: EAP-IKEv2 message flow 
    
   The subsequent message flow shows EAP-IKEv2 with the optional DoS 
   protection.  The IKEv2 DoS protection mechanism uses cookies and 
   keeps the responder stateless when it receives the first IKEv2 
   message. As a consequence of DoS protection an additional roundtrip 
   is required. 
    
   I <-- R: EAP-Request/Identity 
    
   I --> R: EAP-Response/Identity(Id) 
    
   I <-- R: EAP-Request/EAP-Type=EAP-IKEv2(Start) 
    
   I --> R: EAP-Response/EAP-Type=EAP-IKEv2(HDR(A,0), SAi1, KEi, Ni) 
    
   I <-- R: EAP-Request/EAP-Type=EAP-IKEv2( 
            HDR(A,0), N(COOKIE-REQUIRED), N(COOKIE)) 
    
   I --> R: EAP-Response/EAP-Type=EAP-IKEv2( 
            HDR(A,0), N(COOKIE), SAi1, KEi, Ni) 
    
   I <-- R: EAP-Request/EAP-Type=EAP-IKEv2( 
            HDR(A,B), SAr1, KEr, Nr, [CERTREQ]) 
 
 
Tschofenig, Kroselberg   Expires - October 2003               [Page 4] 
                              EAP IKEv2                    April 2003 
 
 
    
   I --> R: EAP-Response/EAP-Type=EAP-IKEv2( 
            HDR(A,B), SK {IDi, [CERT,] [CERTREQ,] [IDr,], AUTH}) 
    
   I <-- R: EAP-Request/EAP-Type=EAP-IKEv2( 
            HDR(A,B), SK {IDr, [CERT,] AUTH}) 
    
   I --> R: EAP-Response/EAP-Type=EAP-IKEv2(Finish) 
    
   I <-- R: EAP-Success 
 
                     Figure 2: EAP-IKEv2 with Cookies 
    
   The following EAP message exchange is taken from Section 2.16 of [2] 
   and adapted (TSi, TSr, SAi2 and SAr2 payloads are omitted). It 
   provides an example of a successful inner EAP exchange using the 
   EAP-SIM Authentication method [9], which is secured by the IKE-SA. 
    
   I <-- R: EAP-Request/Identity 
    
   I --> R: EAP-Response/Identity(Id) 
    
   I <-- R: EAP-Request/EAP-Type=EAP-IKEv2(Start) 
    
   I --> R: EAP-Response/EAP-Type=EAP-IKEv2( 
            HDR, SAi1, KEi, Ni) 
    
   I <-- R: EAP-Request/EAP-Type=EAP-IKEv2( 
            HDR, SAr1, KEr, Nr, [CERTREQ]) 
    
   I --> R: EAP-Response/EAP-Type=EAP-IKEv2( 
            HDR, SK {IDi, [CERTREQ,] [IDr,]}) 
    
   I <-- R: EAP-Request/EAP-Type=EAP-IKEv2( 
            HDR, SK {IDr, [CERT,] AUTH, EAP(EAP-Request/Identity}) 
    
   I --> R: EAP-Response/EAP-Type=EAP-IKEv2( 
            HDR, SK {EAP(EAP-Response/Identity), [AUTH]} 
    
   I <-- R: EAP-Request/EAP-Type=EAP-IKEv2(HDR,  
            SK {EAP(EAP- Request/SIM/Start(AT_VERSION_LIST)),[AUTH]}) 
     
   I --> R: EAP-Response/EAP-Type=EAP-IKEv2(HDR, SK {EAP(EAP-
   Response/SIM/Start(AT_NONCE_MT, AT_SELECTED_VERSION)), [AUTH]}) 
    
   I <-- R: EAP-Request/EAP-Type=EAP-IKEv2(HDR, SK {EAP(EAP-
   Request/SIM/Challenge(AT_RAND, AT_MAC)), [AUTH]}) 
    
   I --> R: EAP-Response/EAP-Type=EAP-IKEv2( 
 
 
Tschofenig, Kroselberg   Expires - October 2003               [Page 5] 
                              EAP IKEv2                    April 2003 
 
 
            HDR, SK {EAP(EAP-Response/SIM/Challenge(AT_MAC) ), [AUTH]}) 
    
   I <-- R: EAP-Success 
                                                      
            Figure 3: EAP-IKEv2 SLA with EAP-SIM Authentication 
    
   Since the goal of this EAP method is not to establish an IPsec SA 
   some payloads used in IKEv2 are omitted. In particularly the 
   following messages and payloads are not required:  
    
   - Traffic Selectors 
   - IPsec SA negotiation payloads  
     (e.g. CREATE_CHILD_SA exchange or SAx2 payloads) 
   - ECN Notification 
   - Requesting an internal address on a remote network  
     (aka ModeCfg or DHCP-based approaches) 
   - Port handling 
   - NAT traversal 
   - Rekeying of IKE-SAs  
    
   Some of these messages and payloads are optional in IKEv2.  
   In general it does not make sense to directly negotiate IPsec SAs 
   with EAP-IKEv2, as such SAs were unlikely to be used between the EAP 
   endpoints. 
    
4. Packet Format 
    
   The IKEv2 payloads, which are defined in [2], are embedded into the 
   Data field of the standard EAP Request/Response packets. The Code, 
   Identifier, Length and Type field is described in [1]. The Type-Data 
   field carries a one byte Flags field following the IKEv2 payloads. 
   Each IKEv2 payload starts with a header field HDR (see [2]).   
    
   The packet format is shown in Figure 4:  
    
   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 
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 
   |     Code      |   Identifier  |            Length             | 
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 
   |     Type      |   Flags       |  Data... 
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 
    
                          Figure 4: Packet Format 
    
   No additional packet formats other than those defined in [2] are 
   required for this EAP method.  
    

 
 
Tschofenig, Kroselberg   Expires - October 2003               [Page 6] 
                              EAP IKEv2                    April 2003 
 
 
   The Flags field is required to indicate Start and Finish messages 
   which are required due to the asymmetric nature of IKEv2 and the 
   Request/Response message handling of EAP.  
    
   Currently only two bits in the eight bit Flags field are required. 
   The remaining bits are set to set to zero.  
    
    0 1 2 3 4 5 6 7 
   +-+-+-+-+-+-+-+-+ 
   |S F 0 0 0 0 0 0| 
   +-+-+-+-+-+-+-+-+ 
    
   S = EAP-IKEv2 start message 
   F = EAP-IKEv2 finish message 
    
   EAP-IKEv2 messages which have neither an S or an F flag set contain 
   regular IKEv2 message payloads inside the Data field.   
    
   The EAP Type for this EAP method is <TBD>.  
    
5. Key derivation 
    
   The EAP-IKEv2 method described in this document generates sessions 
   keys. These session keys are used to establish an IKE-SA which 
   provides protection of other payloads. To export a session key as 
   part of the EAP keying framework [7] it is required to derive 
   another session key for usage with EAP (sometimes referred as Pre-
   Master-Secret). It is good cryptographic security practice to use 
   different keys for different "applications". Hence we suggest to 
   reuse the key derivation function suggested in Section 2.17 of [2] 
   to export the KEYMAT (as a Pre-Master-Secret) for further key 
   derivation.  
    
   The key derivation function defined is KEYMAT = prf+(SK_d, Ni | Nr), 
   where Ni and Nr are the Nonces from the IKE_SA_INIT exchange. 
    
6. Security Considerations 
    
   The security of the proposed EAP method is intentionally based on 
   IKEv2 [2]. Man-in-the-middle attacks discovered in the context of 
   tunneled authentication protocols (see [3] and [4]) are applicable 
   to IKEv2 if legacy authentication with EAP [1] is used. To counter 
   this threat IKEv2 provides a compound authentication by including 
   the EAP provided session key inside the AUTH payload.  
    
   Further security considerations will be provided with future 
   versions of this document.  
    

 
 
Tschofenig, Kroselberg   Expires - October 2003               [Page 7] 
                              EAP IKEv2                    April 2003 
 
 
7. Open Issues 
    
   The following open issues have been identified:  
    
   - Fragmentation 
    
   Currently it is not clear whether fragmentation support has to be 
   provided although IKEv2 itself does not worry about fragmentation 
   itself.  
    
   - Certificate revocation 
    
   IKEv2 allows CRLs to be exchanged. However, it does not provide the 
   capability to exchange OCSP [8] payloads.  
    
   - Session resumption 
    
   TLS provides the capability of resuming a session. This offers 
   primarily performance improvement for a new authentication and key 
   exchange protocol run. It is for further study whether the concept 
   of session resumption (i.e. a fast re-authentication procedure) is a 
   useful context for EAP methods and for the AAA environment in 
   particular.  If it turns out to be useful then one possible approach 
   is to reuse the dead peer detection informational exchange with is 
   able to provide fast re-authentication based on the established IKE-
   SA. This exchange is cheap in terms of processing complexity and 
   provides both end points the capability to perform authentication 
   based on an available IKE-SA.    
    
   - Reducing the number of messages 
    
   The message flows given in this document finish with an EAP-Success 
   message. Depending on the outcome of the current mailing list 
   discussions it is possible that the EAP-Success message can be 
   omitted if other success indications are available; e.g. mutual 
   authentication is provided by the IKEv2 method. Furthermore it is 
   possible to omit the first exchange if the identity can be learned 
   by other means. 
 
8. References 
    
   [1] L. Blunk and J. Vollbrecht: "PPP Extensible Authentication 
   Protocol (EAP)", RFC 2284, March 1998. 
    
   [2] C. Kaufman: "Internet Key Exchange (IKEv2) Protocol", internet 
   draft, Internet Engineering Task Force, 2003.  Work in progress. 
    


 
 
Tschofenig, Kroselberg   Expires - October 2003               [Page 8] 
                              EAP IKEv2                    April 2003 
 
 
   [3] N. Asokan, V. Niemi, and K. Nyberg, "Man-in-the-middle in 
   tunnelled authentication," in http://eprint.iacr.org/2002/163/ , 
   2002. 
    
   [4] J. Puthenkulam, V. Lortz, A. Palekar, D. Simon, and B. Aboba, 
   "The compound authentication binding problem," internet draft, 
   Internet Engineering Task Force, 2003.  Work in progress. 
    
   [5] Harkins, D., Carrel, D., "The Internet Key Exchange (IKE)", RFC 
   2409, November 1998. 
    
   [6] R. Perlman: "Understanding IKEv2: Tutorial, and rationale for 
   decisions", internet draft, Internet Engineering Task Force, 2003.  
   Work in progress. 
    
   [7] B. Aboba and D. Simon: "EAP Keying Framework", internet draft, 
   Internet Engineering Task Force, 2003.  Work in progress. 
    
   [8] Myers, et al.: "X.509 Internet Public Key Infrastructure Online 
   Certificate Status Protocol - OCSP", RFC 2560, Internet Engineering 
   Task Force, 1999. 
    
   [9] H. Haverinen, J. Salowey: "EAP SIM Authentication", internet 
   draft, Internet Engineering Task Force, 2003.  Work in progress. 
    
Acknowledgments 
    
   Add your name here.    
    
Author's Addresses 
    
   Hannes Tschofenig 
   Siemens AG 
   Otto-Hahn-Ring 6 
   81739 Munich 
   Germany 
   EMail: Hannes.Tschofenig@siemens.com 
    
   Dirk Kroeselberg 
   Siemens AG 
   Otto-Hahn-Ring 6 
   81739 Munich 
   Germany 
   EMail: Dirk.Kroeselberg@siemens.com 
    




 
 
Tschofenig, Kroselberg   Expires - October 2003               [Page 9]