System and method for network user authentication

A system for user authentication includes a gateway operable to receive a user authentication request in an Internet Protocol format from a server. The gateway communicates the user authentication request in a Signaling System 7 protocol to a user registry. The gateway is also operable to receive a user authentication response in the Signaling System 7 protocol from the user registry. The gateway communicates the user authentication response in the Internet Protocol format to the server.

TECHNICAL FIELD OF THE INVENTION

This invention relates in general to data networks, and more particularly to a system and method for network user authentication.

BACKGROUND OF THE INVENTION

Mobile device networks such as wireless telephone networks are presently limited in the amount of data that is accessible by a mobile device user in a timely fashion. Wireless local area networks (WLANs) are increasingly being deployed in such public places as coffee shops, airports, hotels, and conference centers as a way to provide larger amounts of data to a mobile device user. WLAN access offers an opportunity for service providers to gain revenues from data services and for users to enjoy wireless high-speed data access in public spaces. Mobile network operators are interested in this opportunity because they already possess an established subscriber base with whom they presently have a billing relationship.

Because a public WLAN is not always operated by a mobile device user's own network, a protocol is required to authenticate a user across data networks. Authentication of a mobile device user is typically performed using Signaling System 7 (SS7) formatted communications between the mobile device network and the mobile device. However, communications between various networks takes place using the Internet Protocol (IP). SS7-format communications are not interchangeable with IP-format communications, making it difficult to implement a SS7-based authentication process using IP-format communications.

SUMMARY OF THE INVENTION

From the foregoing, it may be appreciated by those skilled in the art that a need has arisen for an interface that can connect an Internet Protocol network with a Signaling System 7 (SS-7) network. In accordance with the present invention, a system and method for network user authentication is provided that substantially eliminates or greatly reduces disadvantages and problems associated with conventional SS7-format authentication implementations.

In accordance with one embodiment of the present invention, a system for user authentication includes a gateway operable to receive a user authentication request in an Internet Protocol format from a server. The gateway communicates the user authentication request in a Signaling System 7 protocol to a user registry. The gateway is also operable to receive a user authentication response in the Signaling System 7 protocol from the user registry. The gateway communicates the user authentication response in the Internet Protocol format to the server.

The present invention provides various technical advantages over conventional SS-7 format authentication implementations. For example, on technical advantage is a system for authenticating a network user implementing both Internet Protocol and SS-7 network connections. Another technical advantage is the use of Remote Authentication Dial-In User Service and Mobile Application Part formats. Yet another technical advantage is the retrieval and storage of authentication triplets for use in authenticating a network user. Other examples may be readily ascertainable by those skilled in the art from the following figures, description, and claims.

DETAILED DESCRIPTION OF THE INVENTION

FIG. 1, illustrates a data network environment in which network users send and receive information.FIG. 1shows a data network100that includes a centralized authentication center120in communication with a number of remote user locations, such as locations140and160. It is envisioned that centralized authentication center120could be co-located with a remote user location in other within the scope of the present invention. Data network100may include both wired and wireless network connections.

Centralized authentication center120includes a server122, an Authentication, Authorization, and Accounting (AAA) server124, a gateway126, and a Home Location Registry (HLR)130. HLR130may also be referred to as an Authentication Center (AuC)130.

Remote User location140includes a number of network users142, an access point144, and an AAA server146. AAA server146may also be referred to as a Visitor Location Registry (VLR)146. Location140is an area where network users are present. For example location140may be a coffee shop, a hotel, an airport, or a conference center. In one embodiment of the present invention, location140provides a public Wireless Local Area Network (WLAN), which provides network users142with wireless, high-speed data access to data network100. Location160is similar to location140and includes a number of network users162, a server164, and an AAA server166.

In operation network user142, located at location140, wants to access information across data network100. As one example, network user142wants to send and receive information across the internet180. Before network user142is permitted to access data network100, however, network user142must be authenticated as a valid network user. The authentication information is stored in HLR130of a service provider with which network user142has established a service relationship. There are numerous service providers available to network users142, each with independent HLRs130. Only HLR130of the service provider with which network user142has a relationship contains authentication information for each network user142that is authorized to access data network100. Network user142must be authorized by its service provider before network user142will be permitted to access any information on data network100.

When network user142seeks access to data network100, it communicates an access request to access point144. Access point144may also be referred to as a service selection gateway144. Access point144forwards the access request to AAA server146. In the illustrated embodiment, user authentication information for network user142is located in HLR130, which is not directly accessible by AAA server146. With respect to network user142, AAA server146functions as VLR146. To authenticate network user142, VLR146must communicate with AAA server124, which retrieves authentication information for network user142from HLR130. AAA server124communicates the access request from network user142to gateway126. Gateway126communicates the access request across Signaling System 7 network128to HLR130. When HLR130receives the access request from network device142, it determines whether or not network user142should be permitted to access data network100. Granting network user access to data network100may be based a multitude of factors, including determining whether network user142is registered and authorized to use data network100or whether network user142has a fully paid account balance.

If HLR130determines that network user142should be permitted to access data network100, HLR130will send an authenticating response to gateway126across SS7 network128. Gateway126will communicate the message to AAA server124, which will communicate the authenticating response to VLR146. VLR146will communicate the authenticating response to access point144. User142will now be permitted to send and receive information across data network100.

FIG. 2illustrates a block diagram of the communications that occur during the authentication of data network access for network user142.

In one embodiment of the present invention, network user142communicates with access point144using the 802.1x communications format. Access point144communicates with AAA server124across an Internet Protocol (IP) network. In the illustrated embodiment, the IP network also applies the User Datagram Protocol (UDP) to run on top of the IP network. Access Point144interfaces with AAA server124using the Remote Authentication Dial-In User Service (RADIUS) format. In one embodiment RADIUS is implemented with Extensible Authentication Protocol (EAP) extensions.

AAA server124communicates with gateway126across IP network210. This communication is accomplished using UDP over IP and RADIUS along with proprietary Vendor Specific Attributes (VSAs). Gateway126is operable to receive the RADIUS information in IP format from AAA server124.

Gateway126converts the information received in RADIUS format into the Mobile Application Part (MAP) format. MAP format is a part of the Signalling System 7 (SS7) protocol used in wireless mobile telephony. Gateway126communicates with HLR130using the MAP format across Signaling System 7 (SS7) network220. When gateway126receives MAP-format information back from HLR130, it converts the information into RADIUS format and communicates it with AAA server124across IP network210.

The general topic of Global System for Mobile Communications (GSM) authentication and encryption will now be explored in greater detail. When a network user is registered with the GSM network, the user is assigned an International Mobile Subscriber Identity (IMSI) and key Ki. The IMSI and Kiare stored in a Subscriber Identity Module (SIM). The Kifor network user142is also stored in a Home Location Registry (HLR) indexed by IMSI.

GSM authentication is based on a challenge-response mechanism. The authentication algorithm that runs on the SIM can be given a 128-bit random number (RAND) as a challenge. The SIM runs an operator-specific confidential algorithm, which takes the RAND and a secret key Kistored on the SIM as inputs and produces a 32-bit response (SRES) and a 64-bit key Kcas output.

The network user communicates the IMSI to a Visitor Location Registrar (VLR)146when the network user desires to gain data network access. VLR146queries HLR130for authentication credentials for the network user using MAP over SS7 network128. The query is routed by the SS7 network based on IMSI and SubSystem Number (SSN) to the HLR.

HLR130responds to the authentication query by sending a pre-configured number of authentication triplets to the VLR146. The triplets are based on which is retrieved using the IMSI. The triplets consist of a random challenge (RAND), an authenticator (SRES) calculated using Ki, RAND, and the A3 verification algorithm, and a session key Kcthat is calculated using Ki, RAND and the A8 verification algorithm.

VLR146receives the RAND triplet from HLR130and sends it to network user142. Network user142computes the SRES using its SIM and sends it back to VLR146. VLR146compares the SRESs obtained from HLR130and network user142. A match between the two SRESs means that network user142has been authenticated. Finally, an algorithm is negotiated and used for encryption of the air link using the key Kc.

FIG. 3illustrates a flow diagram for communications between network user142and HLR130in one embodiment of the present invention. A communication is initiated when network user142communicates a request to access data network100to access point144, resulting in a Port Connect302.

Access point144responds to Port Connect302by sending an Extensible Authentication Protocol (EAP)-format Request Identity command304to network user142. The function of command304is to request the identity of network user142. The identity of network user142is recorded as an International Mobile Subscriber Identity (IMSI) in a Subscriber Identity Module (SIM)310. In one embodiment of the present invention, SIM310is located in a device external to network user142that is in communication with network user142. In another embodiment SIM310is located within network user142. SIM310may also be referred to as a smart card310. SIM310makes it possible to identify network user142to HLR130as a legitimate user. Network user142issues a Request IMSI command312to SIM310to obtain the IMSI of network user142. SIM310responds to Request IMSI command312by returning the IMSI of network user142in Response IMSI314.

Upon receiving the IMSI from SIM310, network user142sends an EAP-format Response Identity communication320to access point144. Response Identity communication320sends the IMSI of network user142and realm information to AAA server124via access point144. The identity of network user142is formatted as IMSI@realm. The realm component is configured by network user142to indicate to AAA server124that EAP-SIM is in use.

When access point144receives Response Identity communication320from network user142, it generates an Access Request message322to be sent to AAA server124. For the flow diagram ofFIG. 3, only AAA server124is shown. For the embodiment illustrated inFIG. 1, however, a message from network user142is actually sent by access point144to AAA server146. AAA server146receives the message and forwards it to AAA server124. For purposes of simplicity, this two-step process is illustrated as one communication from network user142to AAA server146. The function of Access Request message322is to forward the Response Identity message320in RADIUS format to AAA server124. Access point144copies the identity in Response Identity message320into a username attribute and forwards the information contained in Response Identity message320to AAA server124. In addition to the username information from Response Identity message320, Access Request322may also include other RADIUS attributes, such as a message authenticator, NetWare Access Server-Identification (NAS-ID), service request, or calling station ID. The RADIUS attribute calling station ID may also be referred to as a MAC Address, which is the address for a device as it is identified at the Media Access Control (MAC) protocol layer.

Upon receiving Access Request message322, AAA server124determines if it can process the message and which EAP authentication messages to use. AAA server124may make that decision based on one or more attributes such as username, NAS-ID, service type, and EAP Message. AAA server124generates a RADIUS-format authentication request324. The function of authentication request324is to obtain authentication triplets from gateway126. In addition to the IMSI information, authentication request324requests a number of triplets. The possible triplets include RAND, SRES, and Kc.

Upon receiving the RADIUS-format authentication request324, gateway126generates a MAP-format authentication request326. The function of this message is to retrieve authentication triplets from HLR130using the MAP protocol. HLR130returns the authentication triplets in a MAP-format authentication response328. Upon receiving authentication response328, gateway126is operable to generate a RADIUS-format authentication response330. The function of this message is to return the authentication triplets to AAA server124. Authentication response330may include different types of authentication triplets, including RAND, SRES, and Kc. If gateway126receives more than the requested number of authentication triplets, gateway126should return them all to AAA server124. If gateway126receives less than the requested number of authentication triplets, it returns the received authentication triplets to AAA server124. AAA server124will then need to make another request for authentication triplets.

AAA server124obtains authentication triplets from HLR130by using gateway126. HLR130may take multiple message cycles to respond to a query from gateway126. AAA server124must be able to function properly despite this latency. HLR130may return more authentication triplets than AAA server124will use for one authentication process. In one embodiment of the present invention, AAA server124stores authentication triplets in a memory cache to reduce the load on HLR130. AAA server124is configurable to cache unused triplets. In another configuration, unused authentication triplets are cached by gateway126.

In one embodiment of the present invention, gateway126includes a memory cache for storing authentication triplets. In this embodiment, the ability to cache authentication triplets on gateway126reduces the load on HLR130and may speed authentication of network user142. EAP-SIM authentication requires authentication triplets to be used in pairs. As soon as a pair is used it should be removed from the cache, because a pair of authentication triplets should not be reused.

In another embodiment of the present invention, it is possible to cache authentication triplets at either AAA server124or gateway126. Gateway126will return more than the requested number of authentication triplets to AAA server124if caching is not enabled on gateway126. Gateway126may return less than the requested number of triplets to AAA server124if gateway126has less than the requested number cached, or if gateway126receives less than the requested number of authentication triplets from HLR130. Gateway124may return zero authentication triplets to indicate that the IMSI of a network user142is valid, but for some reason authentication triplets could not be obtained.

AAA server124must be prepared to receive many authentication triplets or as few as zero authentication triplets from a request. AAA server124may be required to make additional requests for more authentication triplets. If AAA server124does not cache authentication triplets, it should request only the number of authentication triplets it needs. If AAA server124does not cache and it receives more triplets than it can use, it drops the unused triplets.

In one embodiment of the present invention, authentication triplets may be reused. AAA server124controls if authentication triplet reuse is permitted. If an authentication triplet is reused, it should only be reused a limited number of times. AAA server124requests fresh authentication triplets from gateway126if AAA server124has a reuse limit of zero, meaning no authentication triplet reuse is permitted. If AAA server124has an reuse limit that is non-zero, however, cached authentication triplets may be requested. When configured to permit authentication triplet reuse, AAA server124and gateway126allow reuse when gateway126indicates a problem with HLR130but no problem with network user142. Authentication triplet reuse may also be advantageous when no gateway126is reachable for a specified period of time.

Upon receiving authentication response330AAA server124issues an access challenge332to access point144. The main function of access challenge332is to start the EAP-SIM authentication process by sending an EAP request to network user142via access point144. Upon receiving access challenge332, access point144issues EAP request334to network user142.

Upon receiving EAP request334from access point144, network user142will respond with EAP response336. The main function of EAP response336is to transmit a random nonce from network user142to AAA server124by access point144. In one embodiment of the present invention, the nonce is a random 16 bit nonce.

Upon receiving EAP response336from network user142, access point144issues access request338to AAA server124. The function of this message is to forward the EAP-SIM response to AAA server124. Access request338includes EAP response336from network user142and may include other RADIUS attributes such as a message authenticator, NAS-ID, service request, and calling station ID.

AAA server124responds to access request338by issuing access challenge340. The function of access challenge340is to send an authentication challenge to network user142via access point144. Access challenge340is formatted as an EAP message that contains EAP request334, two RANDs from the authentication triplets obtained from HLR130, a MAC-RAND created by using the two RANDs and two Kcs from the authentication triplets, the IMSI, client identity, and message type.

Upon receiving access challenge340, access point144issues request SIM challenge342to network user142. The function of request SIM challenge342is to forward the EAP request from AAA server124to network user142. Access point144does not interpret the EAP request portion of access challenge340.

Network user142receives request SIM challenge342and issues request SIM response346. The function of this message is to request Kcand SRES from SIM310. SIM310returns Kcand SRES for the RANDs calculated from information on SIM310. Network user142uses Kcin calculations to verify MAC-RAND.

Network user142receives response SIM348and issues a response SIM challenge350to access point144. The function of this message is to return MAC-SRES, which is used to authenticate network user142. MAC-SRES is calculated from SRESs and Kcs from SIM310, network user identify, IMSI, and message ID.

Access point144receives response SIM challenge350and issues an access request352to AAA server124. The function of this message is to forward the EAP SIM response to AAA server124. Access request352is formatted as an EAP message containing an EAP response from network user142. Access request352may include other RADIUS attributes such as message authenticator, NAS-ID, service request, and calling station ID. AAA server124responds to access request352with an access accept message354. The function of this message is to send a success message to access point144and network user142if the MAC-SRES sent in the SIM challenge matches the one calculated by AAA server124. Access accept354also sends key information to access point144and information to any intermediate AAA proxies. Access accept354is formatted as an EAP success message and contains an encrypted VSA containing a session key, a session timeout attribute, and attributes used by any intermediate AAA servers. Access accept message354instructs access point144to allow network user142to access data network100. Access point144installs keys for use in encryption. Success message356is issued by access point144to network user142to notify the network user142that authentication succeeded. Network user142will now be permitted to access data network100.

Thus, it is apparent that there has been provided, in accordance with the present invention, a system and method for network user authentication that satisfies the advantages set forth above. Although the present invention has been described in detail, it should be understood that various changes, substitutions, and alterations may be readily ascertainable by those skilled in the art and may be made herein without departing from the spirit and scope of the present invention as defined by the following claims.