Network Working Group | G. Zorn, Ed. |
Internet-Draft | Network Zen |
Intended status: Informational | Q. Wu |
Expires: October 31, 2011 | T. Taylor |
Huawei | |
K. Hoeper | |
Motorola | |
S. Decugis | |
Free Diameter | |
April 29, 2011 |
Handover Keying (HOKEY) Architecture Design
draft-ietf-hokey-arch-design-03
The Handover Keying (HOKEY) Working Group seeks to minimize handover delay due to authentication when a peer moves from one point of attachment to another. Work has progressed on two different approaches to reduce handover delay: early authentication (so that authentication does not need to be performed during handover), and reuse of cryptographic material generated during an initial authentication to save time during re-authentication. A starting assumption is that the mobile host or "peer" is initially authenticated using the Extensible Authentication Protocol (EAP), executed between the peer and an EAP server as defined in RFC 3748.
This document documents the HOKEY architecture. Specifically, it describes design objectives, the functional environment within which handover keying operates, the functions to be performed by the HOKEY architecture itself, and the assignment of those functions to architectural components. It goes on to illustrate the operation of the architecture within various deployment scenarios that are described more fully in other documents produced by the HOKEY Working Group.
This Internet-Draft is submitted in full conformance with the provisions of BCP 78 and BCP 79.
Internet-Drafts are working documents of the Internet Engineering Task Force (IETF). Note that other groups may also distribute working documents as Internet-Drafts. The list of current Internet- Drafts is at http://datatracker.ietf.org/drafts/current/.
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."
This Internet-Draft will expire on October 31, 2011.
Copyright (c) 2011 IETF Trust and the persons identified as the document authors. All rights reserved.
This document is subject to BCP 78 and the IETF Trust's Legal Provisions Relating to IETF Documents (http://trustee.ietf.org/license-info) in effect on the date of publication of this document. Please review these documents carefully, as they describe your rights and restrictions with respect to this document. Code Components extracted from this document must include Simplified BSD License text as described in Section 4.e of the Trust Legal Provisions and are provided without warranty as described in the Simplified BSD License.
The Extensible Authentication Protocol (EAP) [RFC3748] is an authentication framework that supports different types of authentication methods. Originally designed for dial-up connections, EAP is now commonly used for authentication in wireless access networks.
When a host (or "peer", the term used from this point onward) changes its point of attachment to the network, it must be re-authenticated. If a full EAP authentication must be repeated, several message round-trips between the peer and the home EAP server may be involved. The resulting delay will result in degradation or in the worst case loss of any service session in progress if communication is suspended while re-authentication is carried out. The delay is worse if the new point of attachment is in a visited network rather than the peer's home network, because of the extra procedural steps involved as well as because of the probable increase in round-trip time.
[RFC5169] describes this problem more fully and establishes design goals for solutions to reduce re-authentication delay for transfers within a single administrative domain. [RFC5169] also suggests a number of ways to achieve a solution:
[RFC5295] tackles the problem of reuse of keying material by specifying how to derive a hierarchy of cryptographically independent purpose-specific keys from the results of the original EAP authentication. [RFC5296] specifies a method-independent re-authentication protocol (ERP) applicable to two specific deployment scenarios:
Other work provides further pieces of the solution or insight into the problem. For the purpose of this draft, [RFC5749] provides an abstract mechanism for distribution of keying material from the EAP server to re-authentication servers. [RFC5836] contrasts the EAP re-authentication (ER) strategy provided by [RFC5296] with an alternative strategy called "early authentication". [RFC5836] defines EAP early authentication as the use of EAP by a mobile peer to establish authenticated keying material on a target attachment point prior to its arrival. Here, a full EAP execution occurs before the handover of the peer takes place. Hence, the goal of EAP early authentication is to complete all EAP-related communications, including AAA signaling, in preparation for the handover, before the mobile device actually moves. Early authentication includes direct and indirect pre-authentication as well as Authenticated Anticipatory Keying (AKK). All three mechanims provide means to execute a full EAP authentication with a Candidate Access Point (CAP) while still being connected to the Serving Access Point (SAP) but vary in their respective system assumptions and communication paths. In particular, direct pre-authentication assumes that clients are capable of discovering candidate access points and all communications are routed through the serving access point. On the other hand, indirect pre-authentication assumes an existing relationship betweem SAP and CAP, whereas in AAK the client interacts with the AAA to discover and connect to CAPs.
Both EAP re-authentication and early authentication enable faster inter-authenticator handovers. However, it is currently unclear how the necessary handover infrastructure is deployed and can be integrated into existing EAP infrastructures. In particular, previous work has not described how ER servers that act as endpoints in the re-authentication process should be integrated into local and home domain networks. Furthermore, it is currently unspecified how EAP infrastructure can support the timely triggering of early authentications and aid with the selection of candidate access points.
This document proposes a general HOKEY architecture and demonstrates how it can be adapted to different deployment scenarios. To begin with, Section 3 recalls the design objectives for the HOKEY architecture. Section 4 reviews the functions that must be supported within the architecture. Section 5 describes the components of the HOKEY architecture. Finally, Section 6 describes the different deployment scenarios that the HOKEY Working Group has addressed and the information flows that must occur within those scenarios, by reference to the documents summarized above where possible and otherwise within this document itself.
This document contains no normative language, hence [RFC2119] language does not apply.
This document reuses most of the terms defined in Section 2.2 of [RFC5836]. In addition, it defines the following:
This section investigates the design goals for the HOKEY architecture. These include reducing the signaling overhead for re- authentication and early authentication, integrating local domain name discovery, and improving deployment scalability. These goals supplement the discussion in [RFC5169].
ERP requires only one round trip, however, this roundtrip may require communications between a peer and its home ER and/or home AAA server even if the peer is currently attached to a visited (local) network. As a result, even this one round trip may introduce long delays because home ER and home AAA servers may be distant from the peer. To lower the signaling overhead, communication with the home ER server and home AAA server should be minimized. Ideally, a peer should only need to communicate with local servers and other local entities.
ERP bootstrapping must occur before (implicit) or during (explicit) a handover to transport the necessary re-authentication root keys to the local ER server involved. Implicit bootstrapping is preferable because it does not require communication with the home ER server during handover (see previous section), but it requires the peer to know the domain name of the ER server in order to derive the necessary re-authentication keying material. [RFC5296] does not specify such a domain name discovery mechanism and suggests that the peer may learn the domain name through the EAP- Initiate/Re-auth-Start message or via lower layer announcements. To allow more efficient handovers, a HOKEY architecture should support an efficient domain name discovery mechanism and allow its integration with ERP implicit bootstrapping. Even in the case of explicit bootstrapping, local domain name discovery should be optimized such that it does not require contacting the home AAA server, as is currently the case.
To provide better deployment scalability, it should not be required that the HOKEY server and AAA servers or proxies are collocated. Separation of these entities may cause problems with routing, but allows flexibility in deployment and implementation.
This section views the HOKEY architecture as the implementation of a subsystem providing authentication services to AAA. Not only does AAA depend on the authentication subsystem, but the latter also depends on AAA as a means for the routing and secure transport of messages internal to the operation of network access authentication.
The operation of the authentication subsystem also depends on the availability of a number of discovery functions:
It is assumed that these functions are provided by the environment within which the authentication subsystem operates, and are outside the scope of the authentication subsystem itself. Local domain name discovery is a possible exception.
Figure 1 shows the major functions comprising the authentication subsystem and their interdependencies. These functions are described below. [EDITOR'S NOTE: These probably need refinement. The relationship of pre-authentication to EAP authentication, for instance, is currently not totally correct, when one takes account of the roles described in Section 5. AAK also needs an extension of ER key management.]
+------------------------------------------------------------+ | AAA Network Access Authentication and Authorization | +---+-------------.----------------------------+-------------+ | /|\ | | | Authentication subsystem | +===|=============|============================|=============+ | | +---------+----------+ +-------------V---------+ | | | | Direct and | | EAP Re-authentication | | | | | Indirect | +--+------+-------------+ | | | | Pre-Authentication | / / | | | +--------------------+ / / | | | / / +---------------+ | | | / | | Authenticated | | | | / | | Anticipatory | | | | / | | Keying (AAK) | | | | / | +-------+-------+ | | | / | | | | +-V------------------+ / +---------V----------V--------+ | | | EAP Authentication | | | ER Key Management | | | +---------+----------+ | |+------------+ +------------+| | | | | ||Handover Key| |Handover Key|| | | | | || Derivation | |Distribution|| | | | | |+------------+ +------+-----+| | | | | +----------------------|------+ | +===========|=============|=========================|========+ | | | +-----------V-------------V-------------------------V--------+ | AAA routing and secure transport | +------------------------------------------------------------+
Arrows show the direction of functional dependency.
Figure 1 shows the following dependencies:
EAP authentication, EAP re-authentication, and handover key distribution depend on the routing and secure transport service provided by AAA. Discovery functions and the function of authentication and authorization of network entities (access points, ER servers) are not shown. As stated above, these are external to the authentication subsystem.
The pre-authentication function is responsible for discovery of candidate access points and completion of network access authentication and authorization at each candidate access point in advance of handover. The operation of this function is described in general terms in [RFC5836]. No document is yet available to describe the implementation of pre-authentication in terms of specific protocols. [RFC5873] could be part of the solution, but is Experimental rather than Standards Track.
The EAP re-authentication function is responsible for authenticating the peer at a specific access point using keying material derived from a prior full EAP authentication. [RFC5169] provides the design objectives for an implementation of this function. [RFC5296] describes a protocol to implement EAP re-authentication subject to the architectural restrictions noted above. Work is in progress to relax those restrictions.
The EAP authentication function is responsible for authenticating the peer at a specific access point using a full EAP exchange. [RFC3748] defines the associated protocol. [RFC5836] shows the use of EAP as part of pre-authentication. Note that the HOKEY Working Group has not specified the non-AAA protocol required to transport EAP frames over IP that is shown in Figures 3 and 5 of [RFC5836], although [RFC5873] is a candidate.
The authenticated anticipatory keying function is responsible for pre-placing keying material derived from an initial full EAP authentication on candidate access points. The operation is carried out in two steps: ER key management (with trigger not currently specified) places root keys derived from initial EAP authentication onto an ER/AAK server associated with the peer. When requested by the peer, the ER/AAK server derives and pushes predefined master session keys to a list of candidate access points. The operation of the authenticated anticipatory keying function is described in very general terms in [RFC5836]. A protocol implementation is being specified in [I-D.ietf-hokey-erp-aak].
EAP-based handover key management consists of EAP method independent key derivation and distribution and comprises the following specific functions: [RFC5295], and key distribution is specified in [RFC5749].
The derivation of handover keys is specified in
This section describes the components of the HOKEY architecture, in terms of the functions they perform. The components cooperate as described in this section to carry out the functions described in the previous section. Section 6 describes the different deployment scenarios that are possible using these functions.
The components of the HOKEY architecture are as follows: [I-D.ietf-hokey-erp-aak] to this list.]
[EDITOR'S NOTE: probably have to add the ER/AAK server named in
The peer participates in the functions described in Section 4 as shown in Table 1.
Function | Peer Role |
---|---|
EAP authentication | Determines that full EAP authentication is needed based on context (e.g., initial authentication), prompting from the authenticator, or discovery that only EAP authentication is supported. Participates in the EAP exchange with the EAP server. |
- | - |
Direct pre-authentication | Discovers candidate access points. Initiates pre-authentication with each, followed by EAP authentication as above, but using IP rather than L2 transport for the EAP frames. |
- | - |
Indirect pre-authentication | Enters into a full EAP exchange when triggered, using either L2 or L3 transport for the frames. |
- | - |
EAP re-authentication | Determines that EAP re-authentication is possible based on discovery or authenticator prompting. Discovers ER server. Participates in ERP exchange with ER server. |
- | - |
Authenticated anticipatory keying | Determines that AAK is possible based on discovery or serving authenticator prompting. Discovers candidate access points. Sends request to serving authenticator to distribute keying material to the candidate access points. |
- | - |
ER key management | No role. |
The serving authenticator participates in the functions described in Section 4 as shown in Table 2.
Function | Serving Authenticator Role |
---|---|
EAP authentication | No role. |
- | - |
Direct pre-authentication | No role. |
- | - |
Indirect pre-authentication | Discovers candidate access points. Initiates an EAP exchange between the peer and the EAP server through each candidate authenticator. Mediates between L2 transport of EAP frames on the peer side and a non-AAA protocol over IP toward the candidate access point. |
- | - |
EAP re-authentication | No role. |
- | - |
Authenticated anticipatory keying | Mediates between L2 transport of AAK frames on the peer side and AAA transport toward the ER/AAK server. |
- | - |
ER key management | No role. |
The candidate authenticator participates in the functions described in Section 4 as shown in Table 3.
Function | Candidate Authenticator Role |
---|---|
EAP authentication | Invokes AAA network access authentication and authorization upon handover/initial attachment. Mediates between L2 transport of EAP frames on the peer link and AAA transport toward the EAP server. |
- | - |
Direct pre-authentication | Invokes AAA network access authentication and authorization when the peer initiates authentication. Mediates between non-AAA L3 transport of EAP frames on the peer side and AAA transport toward the EAP server. |
- | - |
Indirect pre-authentication | Same as direct pre-authentication, except that it communicates with the serving authenticator rather than the peer. |
- | - |
EAP re-authentication | Invokes AAA network access authentication and authorization upon handover. Discovers or is configured with the address of the ER server. Mediates between L2 transport of a ERP frames on the peer side and AAA transport toward the ER server. |
- | - |
Authenticated anticipatory keying | Receives and saves pMSK. |
- | - |
ER key management | No role. |
The EAP server participates in the functions described in Section 4 as shown in Table 4.
Function | EAP Server Role |
---|---|
EAP authentication | Authenticates and authorizes the candidate access point to act as authenticator. Terminates EAP signalling between it and the peer via the candidate authenticator. Determines whether network access authentication succeeds or fails. Provides MSK to authenticator. |
- | - |
Direct pre-authentication | As for EAP authentication. |
- | - |
Indirect pre-authentication | As for EAP authentication. |
- | - |
EAP re-authentication | Mutually authenticates with the ER server and authorizes it for receiving keying amterial. Provides rRK or DSrRK to the ER server. |
- | - |
Authenticated anticipatory keying | As for EAP re-authentication. |
- | - |
ER key management | Creates rRK or DSrRK and distributes it to ER server requesting the information. |
The ER server participates in the functions described in Section 4 as shown in Table 5. [EDITOR'S NOTE: Need discussion of respective roles of local and home ER server, or whether there should even be such a distinction.]
Function | ER Server Role |
---|---|
EAP authentication | No role. |
- | - |
Direct pre-authentication | No role. |
- | - |
Indirect pre-authentication | No role. |
- | - |
EAP re-authentication | Authenticates and authorizes the candidate access point to act as authenticator. Authenticates itself to the EAP server and acquires rRK or DSrRK as applicable when necessary. Terminates ERP signalling between it and the peer via the candidate authenticator. Determines whether network access authentication succeeds or fails. Provides MSK to authenticator. |
- | - |
Authenticated anticipatory keying | Authenticates itself to the EAP server and acquires rRK or DSrRK as applicable when necessary. Authenticates and authorizes the candidate access points to act as authenticator. Derives pMSKs and passes them to the candidate access points. |
- | - |
ER key management | Receives and saves rRK or DSrRK as applicable. |
The necessity for this section and its contents are TBD.
TBD.
TBD
This document has no actions for IANA.
The authors would like to thank Mark Jones and Zhen Cao for their reviews of previous versions of this draft.