1. Field of the Invention
The invention relates to a method for bootstrapping a local authorizer of a non-public access network, an authentication and authorization system, a client device for use in the authentication and authorization system and a network element for use in the authentication and authorization system.
2. Description of the Related Art
Access control of remote users has always posed a challenge to network managers as internet service providers (ISP) if they are not a client's home-ISP, for example, in the case of mobile users.
One issue related to access control is authentication being any process by which a network verifies the identity of a user or client, e.g. the user's equipment, who wishes to access the network. Authorization follows the authentication. The authorization includes determining whether the user or client, once identified, is permitted to have access to a certain service or resource owned by the network. This is usually determined by finding out whether a particular user or client is a part of a specified group, or whether that user has a particular level of security clearance. Finally, access control is a much more general way of talking about controlling access to a network service or resource; access can be granted or denied based on a wide variety of criteria, e.g. such as the network address of the user's client, or the time of day.
Because these three aspects are closely related in most applications, it is difficult to separate them from one another. In particular, authentication and authorization are, in most implementations, inextricable.
Authentication may be implemented with so-called credentials. Such a credential may be a pair which includes an attribute together with its respective value, i.e. an attribute value pair (AVP), e.g. a “user ID” and “John DOE,” or “password” and “SESAME”. Alternately, authentication may be implemented with a smart card or an authentication server. Users are often, with or without their knowledge assigned tickets, e.g. a cryptographic string, issued by an authentication server, which certifies the identity of its owner. Tickets are usually time-expired, which are used to track their authentication state. This helps various systems manage access control without frequently asking for new authentication information.
Furthermore, the authentication mechanism, on the one hand, should be as strong as possible and, on the other hand, as simple as possible to minimize network overhead and impact on overall network response times. In networks based on the Internet Protocol (IP), in authorization of services, a protocol such as the early Remote Authentication Dial-In User Service (RADIUS) provides for a method for a user to be authorized to use a network service or network resource.
RADIUS is a protocol, which was defined by the Internet Engineering Task Force (IETF), for administering and securing remote access to a network. In networks using RADIUS, the authentication system includes an authentication server, client protocols, and an accounting server. It works by having a user dial-in to a remote access server (RAS) and passing credentials as authentication information to it. The credentials are forwarded to the authentication server, which validates the user and returns the information necessary for the RAS to initiate a session with the user. A dictionary file kept in a database, e.g. in the authentication server, determines the types of credentials that can be included in the user profile. The user has to repeat this process whenever initiating a new session.
The more recent authorization protocol Diameter is an IETF-defined peer-to-peer protocol for authenticating remote users across a network. Diameter was intended as a supplement or replacement for RADIUS. Both RADIUS and Diameter are “AAA” protocols, i.e. they authenticate (A) and authorize (A) users and perform basic back-end accounting (A) services for bookkeeping purposes. Also like RADIUS, the basic Diameter transaction involves sets of credentials.
Upon receiving an authentication request, a Diameter server typically issues the attribute of a certain credential, for instance, the user or client. ID as a challenge, to which the requesting user or client responds with the respective value, i.e. the ID. Then the server issues the password attribute, to which the requesting user or client responds with the respective value, i.e. the password. If the credentials replied by the user or client are correct, the user is considered authentic.
However, the credential exchange goes beyond simple authentication, and this is where authorization comes in. Through further credentials, the authorization server can further determine specific resources to which the user will be granted access. For instance, access to a high-security application might require the user to supply a private-key code.
The authentication, authorization and accounting process discussed above is also possible with RADIUS but easier to implement with Diameter because Diameter lets a remote server send unsolicited messages to a client. This way, if the user sends only the password, the Diameter-equipped server sends another message, requesting the private-key code. For instance, one Diameter AVP involves “home-agent-address” as the attribute and uses an IP address as the value. This way, a mobile user calling from a mobile phone can use this to pass through to the Diameter server of his home-ISP in order to be authenticated by the user ID and password.
In order to allow for authentication through one or more third parties as an authentication broker, Diameter also enhances the limited proxy capabilities of RADIUS. For that purpose, the remote-ISP is allowed to create a proxy back to the user's home-ISP, and on to the home-ISP Diameter server. From there, the home-ISP and the user can carry on their authentication transaction. Once that is complete, the home-ISP tells the remote-ISP to give the user service. As can be seen, these authentication and authorization processes generate a lot of network traffic.
The Diameter and RADIUS protocols allow a user or client to connect to an authorizing server, or authorizer, which, after the examination of the credentials of the user or client, grants permissions to use a service or resource, such as network access. By providing some additional credentials, such as temporary keys, the service can be used with a temporary security association between the client and the service.
As outlined, RADIUS provides for a straightforward connection to the authorizer. However, when network access authorization is done by the administrator of the access network from a RADIUS server, scaling to multiple administratively disjoint access networks is not easy and causes increase of traffic. Since Diameter allows for scalable separation of the authorizing entity from the network access provider, the user or client can request authorization through a chain of brokers, which propagate authorization requests between different domains providing for a better scalability to a large network administered by many independent organizations, especially when clients are mobile. This general principle is shown in
However, the authorization always uses the same authorizer directly or indirectly when requesting permission to use a service or resource of the network. In IP-based networks, localizing authorization would need to run two separate protocols, or to have a separate version of a smart card-based protocol, possibly requiring two separate smart cards, one for public and one for local (or home), respectively, network authorizations.
In a large network, authorization from a user or client can also use a mode where a client contains a device. Such device can be a smart card, which is a hardware device used in a cryptographic authentication system. Some smart cards operate on the basis of a frequently changing password, i.e. a user who wishes to login must enter his own user ID and the actual password is displayed by the card. An alternate system uses a cryptographic calculator, where the user logs into a system, which displays a challenge string. The user keys this string into his smart card, which displays a respective response. The response is used as the user's password for the login session. However, for this purpose it is necessary that the smart card and the authorizing network element share a secret knowledge, which is not exchanged during communication. This knowledge can be the algorithm which generates the appropriate value to be repeated to a certain challenge of the other party.
Such device contained in the client may also be a Subscriber Identity Module (SIM) card, which, together with the authorizer, is able to produce a temporary key as a token of authorization to use a network service or network resource. However, again the authorizing protocol has to be able to communicate with an authorizer belonging to the domain who issued the SIM card for the authorizer to grant access to, e.g., an access network which does not belong to the home-ISP of the user.
The invention provides a method for setting up a local authorizer, which is able to authorize and authenticate a user or client in a private network without having a public authorizer involved in granting access to resources and services of the private network. Further, the invention provides a system for authorization and authentication, in which the local authorizer is set up. The invention may also be configured so that the set up should not need separate protocols or separate devices.
The invention also provides set up of a local authorizer and an authorization and authentication system without the need to communicate to a central authorization authority, e.g. a public authorization server, during the set up of the local authorizer.
The invention provides a method for setting up an authorization and authentication system in a local private access network, wherein a user not already registered to a database of the local access network for authentication purposes should have access to some or all of the private network services and resources.
Accordingly, the invention provides a method for bootstrapping a local authorizer, e.g. an authorizing server device, of a non-public access network. The local authorizer is arranged for granting permission to a client device to have access to the non-public access network. For that, the method allows for set up of the local authorizer of the non-public access network during at least the first access of the client device to the non-public access network. The local authorizer includes a credentials database used for authentication and authorization of the client device, which is accessing services or resources of the non-public network. A secret knowledge of the client device is used for generating at least one set of credentials. The at least one set of credentials is uploaded to the credentials database of the local authorizer by the client device at least at the first access of the client device to the non-public network. Then the local authorizer uses the credentials in the credentials database for authentication and authorization of the client device during access to the non-public access network.
The public network provides public resources whose owners delegated authorization to the public authorizer. Further, there are local resources owned by the client. With the method of the invention, the client is able to have the same method for authorizing its own resources as the one used by the client when it uses the public network services or resources.
Advantageously, when accessing the non-public network in authentication and authorization of the client device, the same protocol can be used as in authentication and authorization of the client device during access to a public access network.
In one embodiment of the invention, the secret knowledge is a certain algorithm, in particular a cryptographic algorithm. The certain algorithm is adapted for generating credentials from attribute values, which are stored in the client device. Since known protocols do not support reusing these protocols for changing the authorizer to one with no knowledge of the secret algorithm, with the invention this problem is advantageously solved.
The secret knowledge of the client device can be mutual knowledge of the client device and a public authorizer of a public access network about authentication and authorization for providing access to services and resources of the public network. In case the secret knowledge is a certain algorithm, in such an environment, the authorizer of the public network and the client device share the secret algorithm that can produce for instance a session key from a randomly generated challenge. Such challenges can be generated by a random generator contained within the client device or in a smart card contained in the client device. Due to sharing the secret knowledge between the client device and the public authorizer, the public authorizer is able to check a client device's response to a given challenge onto authenticity. The local authorizer of the non-public network does not have knowledge of the secret algorithm. However, with the invention it is possible to use the same authorization protocol when accessing non-public networks as when accessing a public network by a client device.
The sets of credentials in the credentials database may be temporary. For this purpose, in one embodiment of the invention each of the sets of credentials expires after a predetermined period. In another embodiment, each one of the sets of credentials expires after use in the authentication and authorization. Therefore, the invention prevents a third party which might intercept a set of credentials during an authentication and authorization communication between the client device and the local authorizer from using this certain set of credentials.
Actually, the set up of the local authorizer, in particular the step of uploading the set of credentials to the credentials database of the local authorizer, has to take place at least when the client device is started for the first time. However, since in one embodiment of the invention the sets of credentials in the credentials database of the local authorizer are temporary, the step of uploading the at least one set of credentials to the credentials database of the local authorizer may take place when the credentials of the client stored in the credentials database have been exhausted or expired. It should be noted that it is also possible to perform the set up of the credentials database in the local authorizer after manual configuration. Such command can for instance be sent by the user of the client device or the operator of the local network.
In another embodiment of the invention, the step of uploading the at least one set of credentials to the credentials database includes extracting session keys from a smart card, which is contained in the client device. Such smart card can be a subscriber identification module (SIM). Then the set up of the credentials database includes extracting session keys from the SIM and the upload of the session keys as credentials to the credentials database of the local authorizer. It is clear that the secret knowledge according to the invention may also be contained in the smart card itself, i.e. for instance the secret algorithm.
The method of the invention can easily be applied to public networks and non-public networks based on the Internet Protocol (IP) or the Internet Protocol version 6 (IPv6). The invention is most advantageous for scenarios where the non-public network is a local private network owned by the client, for instance, a wireless local area network.
Further, the invention can advantageously be applied to an authentication and authorization system, which is arranged to authorize, or to grant permission to, a user or a client device to have access to a non-public access network having a local authorizer. The local authorizer includes at least the credentials database for use in the authentication and authorization of a client accessing services or resources of the non-public network. According to the invention, a mutual knowledge of the client device and a public authorizer of a public access network about authentication and authorization for providing access to services and/or resources of the public network is used for set up of the local authorizer. Further, in the authentication and authorization of the client device during access to the non-public network the same protocol can be used as in the authentication and authorization of the client device during access to the public access network.
In the authentication and authorization system according to one embodiment of the invention a client device is arranged to perform the set up of the local authorizer in the non-public access network. The client device uses the mutual knowledge of itself and the public authorizer of the public access network used in the authentication and authorization for providing access to the public network. It is understood that it is also possible to have this also implemented on a smart card, e.g. a Subscriber Identification Module (SIM), which is used in the client device. Thus, the client device or the smart card, respectively, performs the upload of the credentials to the credentials database of the local authorizer. The credentials are then used for the authentication and authorization during the access of the client to the non-public network.
In the authentication and authorization system according to one embodiment of the invention on the side of the non-public network administration, a network element is arranged to operate as the local authorizer of the non-public access network. The network element includes the credentials database for storing the sets of credentials provided by the client device at least at a first network access for authentication and authorization in following network access.
Accordingly, the above-described invention can be implemented in present IP-based networks with some modification of authorization, for example, according to the following scenario. A client has some resources in its own private network, which can be a radio access network like a wireless local area network (wireless LAN). Another assumption may be that the mobile client device uses e.g. SIM-based authorization for gaining access to the public IP-based networks and the access node of the client's private network has a similar network in its home domain, and there the owner of the client's private network is the client itself.
The client may be interested in having some other entity, other than the entity in the original protocol used in the public access network, to guard the granting of access. Further, the client may not want to involve the public authorizer in granting access to its own resources, e.g. because a public authorizer may be an additional cost. Furthermore, the client may not want the public authorizer to know all the details of the resources used by the client. Finally, yet importantly, a local domain administrator may want the authorization of local services and resources to belong to the local authorizer set up by the client rather than a public authorizer external to client's home domain. For all these reasons, the client may wish to reuse the same protocol also for local authorization. However, as already mentioned, known protocols do not support the reuse of the authorizer in situations where the authorizer is changed to one with no knowledge of the secret algorithm. The invention solves this situation.
In the method according to the invention described above, a public authorizer is the party, other than the client, knowing the secret algorithm. In other words, a public authorizer is the party that knows the secret algorithm. However, since the client knows the secret algorithm, i.e. the client device has the algorithm implemented as software or as hardware device. Thus, the invention provides a possible method of reusing the authorization mechanism in such a way not suggested in currently used authorization protocols. For this purpose, the method of the invention introduces reuse of authorization mechanisms for setting up the local authorizer. Authorization of the public access network uses the secret algorithm mutually known by the client device (or the smart card in the client device) and a public authorizer. The method according to the invention advantageously has only to be incorporated into the actual used protocols, which are used for authentication and authorization in public networks. Moreover, since this modification comes as an add-on feature, it is fully compatible with the present IP-based networks.
Accordingly, the invention introduces a localized authorization bootstrap where the client uses its knowledge of the secret algorithm to extract from its smart card, e.g. SIM, a limited set of credentials and their respective check values. These sets of credentials are uploaded to the local authorizer of the private network of the client. Now, the client is able to reuse the public protocol for localized access, i.e. it uses the same authentication and authorization procedures with a network, which is configured to propagate requests to the local authorizer. Advantageously, the authentication and authorization protocol adapted according to the invention allows a client to reuse the authorization protocol of a public access network for controlling its own resources. Since the method of the invention can be used with IP or IPv6 protocols, the invention provides a method for immediate cost-efficient control of authorized use for many simple devices and many clients for a domain.
As to the implementation in actual protocols, there is only a need for an add-on to the protocol for bootstrapping or setting up of the local authorizer. This bootstrapping can be run e.g. when a client device is started for the first time, or on manual configuration command, or when the set of temporary keys in the local authorizer have been exhausted. The invention can easily be implemented to a protocol as the proposed SIM6, which is in working progress.
Moreover, the reuse of session key generation and distribution in a client's own network allows for controlling many devices in a practical manner, instead of directly setting associations between the client and all these devices. This amounts to less manual setup work and use of multiple clients in a network so that multiple authorizable resources becomes more cost efficient and scalable. Finally, the user of the method according to the invention does not have to let an external authorizer know or charge for local authorizations.
The above and other objectives, features, and advantages of the invention will become more clear from the following description of the preferred embodiments thereof, taken in conjunction with the accompanying drawings. It is noted that through the drawings, the same or equivalent parts retain the same reference number. All drawings are intended to illustrate some aspects and embodiments of the invention. Moreover, it should be noted that in case of different embodiments only the differences are described in detail. It is understood that not all alternatives and options are shown and therefore, the invention is not limited to the content of the accompanying drawings.
In the following, the invention will be described in detail by way of example with reference to the accompanying drawings, in which
Now referring to the example as depicted in
The client may want some other entity other than the one in the original protocol used in the public access network for guarding the granting of the access. Further, the client may not want to involve a public authorizer to grant access to its own resources because public authorizer may be costly. Furthermore, the client may not want a public authorizer to know all of the details of the services and resources that the client is using. Finally, yet importantly, a local administrator in the client's non-public network may want that authorization of the local resources to belong to the local authorizer set up by the client rather than a public authorizer external to client's home domain. For all these reasons, a reuse of the same protocol for public and non-public authorization is desired. However, known protocols do not support reusing them for changing the authorizer to one with no knowledge of the secret algorithm. The invention provides a solution for this situation.
Since both networks, i.e. the public network 10 and the non-public network 12, are IP-based networks, the invention can be implemented with some modification of authorization as is described in the following together with
The invention allows reuse of the smart card based authorization mechanisms for set up of the local authorizer 42. Therefore,
In known authorization, a secret algorithm mutually known by the client device 20 or the smart card 22, e.g. SIM, in the client device 20 and the public authorizer 40 is used. With the invention the client is able to have the same method for authorizing its own services and resources 52 as the method used by the client when it uses the public services and resources 50. This helps to simplify the client device 20 in terms of the number of protocols used. Further, the smart card 22 is reused for authorization. Thus, little configuration needs to be done.
Accordingly, the invention introduces a localized authorization bootstrap where the client device 20 uses its knowledge of the secret algorithm to extract from its smart card 22 a limited set of credentials and their check values and to upload this set to a database 44 of the local authorizer 42. Then the client is able to reuse the protocol for accessing the local non-public network 12, i.e. it uses the same protocol and algorithm with a network configured to propagate such requests to the local authorizer 42.
Now, the use of local authorizer 42 of
This general principle can be applied to IP and IPv6 networks. The invention can use a protocol, such as the SIM6, with an additional protocol for bootstrapping the local authorizer 42 according to the invention. This bootstrapping can be run, for instance, when the client device 20 is started for the first time, or on manual configuration command, or when the set of temporary keys in the credentials database 44 of the local authorizer 42 have been exhausted.
The invention has introduced a method for bootstrapping a local authorizer 42 of a non-public access network 12. The local authorizer 42 is arranged for granting access for a client device 20 to the non-public access network 12. For this purpose, the local authorizer 42 includes a credentials database 44, which is used in authentication and authorization of the client device 20 during access to services or resources 52 of the non-public network 12. A secret knowledge of the client device 20 is used for generating at least one set of credentials. The bootstrapping method includes the step of uploading the at least one set of credentials to the credentials database 44 of the local authorizer 42. This upload is done by the client device 20 at least at the first access of the client device 20 to the non-public network 12. Then the credentials in the credentials database 44 are used for authentication and authorization of the client device 20 during access to the non-public access network 12. Thus, the client device 20 can advantageously reuse the public protocol for localized access, i.e. it can use the same protocol and algorithm with a network, which is configured to propagate requests to the local authorizer 42. Since the method of the invention can be used with IP or IPv6 protocols, it provides a method for immediate cost-efficient control of authorized use for many simple devices and many clients for a domain.
Number | Date | Country | Kind |
---|---|---|---|
030 13267.4 | Jun 2003 | EP | regional |