TECHNICAL FIELD OF THE INVENTIONThis invention relates to the field of computer security, and in particular to the authentication of a user over a computer network.[0001]
BACKGROUND OF THE INVENTIONIt is desirable to be able to transmit confidential and personal information over unsecured public computer networks, such as the internet. To allow this, it is necessary to provide a secure registration system, which allows an individual user to have confidence that personal information transmitted over the network will remain confidential. Conversely, a service provider may wish to ensure that only some computer users are able to access specific information.[0002]
U.S. Pat. No. 5,784,463 describes a system in which a computer system is secured against authorized access, while date exchanged by a user with the computer system is encrypted when it is sent over the public network.[0003]
More specifically, U.S. Pat. No. 5,784,463 describes the use of an authentication token, which may be a hardware device or which may be a software module, which allows the user to authenticate himself to the remote computer. In this prior art system, shared secret keys provide mutual authentication between the two users. The shared secret keys are generated only at the time of registration, and are distributed using a public key/private key cryptographic system.[0004]
This system has the disadvantage that, before a computer user can take part in secure online transactions using the described system, he must obtain a separate authentication token. Further there is a cost associated with the distribution of such tokens, either to pay for the additional hardware, or to supply information for the software module.[0005]
SUMMARY OF THE INVENTIONIn accordance with a preferred aspect of the invention, an existing communications device can be used as an authentication token.[0006]
In a preferred embodiment of the invention, a communications device which has a cryptographic module for use in mobile communications, can be used as an authentication token. For example, the device may be a device which can operate under the Wireless Application Protocol, that is, a WAP-enabled device, such as a mobile phone. This has the advantage that WAP-enabled devices include components which are used in public key/private key cryptographic systems as a part of their standard communication functions. These components therefore advantageously allow the device to be used as an authentication token when communicating with a remote server. Advantageously, the device can use Wireless Transport Layer Security (WTLS) for mobile communications, and employs its cryptographic module when in use as an authentication token.[0007]
It should be emphasised that the term “comprises/comprising” when used in this specification is taken to specify the presence of stated features, integers, steps or components but does not preclude the presence or addition of one or more other features, integers, steps, components or groups thereof.[0008]
BRIEF DESCRIPTION OF DRAWINGSFIG. 1 is a schematic illustration of a network in which the present invention can be implemented.[0009]
FIG. 2 is a flow chart showing a first authentication method in accordance with the invention.[0010]
FIG. 3 is a flow chart showing a second authentication method in accordance with the invention.[0011]
DETAILED DESCRIPTION OF PREFERRED EMBODIMENTSFIG. 1 shows a system in accordance with the invention, which allows a user to communicate securely over the internet. As is conventional, the user has a WAP-enabled device, for example, a[0012]mobile phone10. Themobile phone10 communicates over a wireless interface through awireless modem15 with aWAP Gateway20. The WAP Gateway20, for example, converts signals between different protocols used over the wireless network and over the wired networks which are involved.
As an example, the WAP Gateway[0013]20 has an interface for connection to a Wireless Telephony Application (WTA)server30, which provides telephony-related functions, such as handling voice calls or text messages.
One specific use of WAP-enabled devices is to access the internet, and in particular to access the information on web pages which are specifically designed for that purpose.[0014]
Thus, the WAP[0015]Gateway20 also includes an interface for connection to a Wireless Applications Environment (WAE)server40. The WAEserver40 is in turn connected to theinternet50. Data which may be accessed by a WAP-enabled device are stored on aweb server52. As is well known, the internet is made up of very many servers of this type, storing such information.
As is known, content on web pages which are intended to be accessed by web-enabled devices is conventionally written using Wireless Markup Language (WML), a language which is designed to meet the constraints which typically apply in this environment, namely the relatively low bandwidth available in the wireless interface, and the generally small available display sizes on the handheld WAP-enabled devices such as mobile phones.[0016]
In order to enhance services written in WML, a scripting language WMLScript, can be used.[0017]
In order to provide security between the WAP-enabled[0018]client device10 and the WAP Gateway20, Wireless Transport Layer Security (WTLS) can be used. This provides confidentiality for users, by encrypting messages which are transmitted over the wireless interface, and also provides authentication, by means of digital certificates.
In order to provide this WTLS functionality, the WAP-enabled[0019]device10 includes a cryptographic module, which uses an embedded public key and private key on handshake for authentication, then generates symmetric session keys, which are used to encode messages before transmission and to decode received messages,
For example, the cryptographic module can be realised in hardware or in software in the[0020]phone10, or may be provided on an external smart card, or thephone10 may also include a Wireless Identity Module (WIM) card, which is used to identify the subscriber.
In accordance with preferred embodiments of the present invention, the cryptographic module of the phone, and other features which are used to provide secure communication using the Wireless Application Protocol, also allow the[0021]phone10 to be used as an authentication token for other communications.
In the case where the cryptographic module is embodied in hardware, the necessary information is provided on an integrated circuit in the device. Where the Wireless Public Key Infrastructure (WPKI) is used to distribute the parameters for WTLS, it can also be used to distribute the parameters required for use as an authentication token.[0022]
When communicating in the WAP environment, for example, authentication can take place at the WAP Gateway[0023]20 using thedevice10 as an authentication token, and can also take place at themodem15 and/or at theweb server52. Thus, the modem can have an associatedauthentication server17, the WAP Gateway can have an associatedauthentication server22, and aweb server52 can have an associatedauthentication server54. Theauthentication server54 associated with aweb server52 can be directly connected thereto, or (as shown in FIG. 1) can be connected thereto over the internet.
Carrying out additional authentications in this way can provide additional security. In addition, using the device as an authentication token to carry out authentications at the WAP Gateway avoids the need for the user to enter a password, which increases the convenience for the user.[0024]
FIG. 2 shows the operation of the[0025]device10 as an authentication token in the WAP environment. This operation will be described here with reference to a situation in which thedevice10 is authenticated to theauthentication server17 associated with themodem15. However, as mentioned above, authentication can take place in a similar way at many points in the network.
At[0026]step70, the user starts the WAP browser software in thedevice10, and attempts to communicate through themodem15. In this case, themodem15 requires authentication, and thedevice10 detects this requirement atstep72.
At[0027]step74, the device verifies the identity of the user. As part of this procedure, the device gives a prompt to the user, asking the user to identify himself. One possibility is to require the user to enter a Personal Identification Number (PIN). However, to provide an additional layer of security, thedevice10 can also use a form of biometrics to provide user authentication. Thus, for example, thedevice10 can include means for examining a physical feature which uniquely or nearly uniquely identifies a user, such as his fingerprints or voice recognition or another biometric technique, and allowing the user access to the system only if that physical feature is found to match the intended user.
Once the user has authenticated himself to the token, the token can authenticate itself to the[0028]modem15, atstep76. Thus, using a selected authentication protocol, the token performs the necessary calculations, and, atstep78, information is provided to the WAP browser software, for example allowing it to respond to challenges from theauthentication server17, or to generate a password based on offline information.
More details about an authentication protocol which may be used can be found in the document “Entity Authentication Using Public Key Cryptography”, Federal Information Processing Standards Publication FIPS PUB 196 of February 1997.[0029]
Such an authentication procedure may be used in the WAP environment in many situations. For example, the user may use the[0030]device10 to authenticate himself to a bank machine, or to a further device which controls access to a building or area.
In an alternative embodiment of the invention, the[0031]device10 can be used as an authentication token when a user wishes to access theinternet50 using apersonal computer60.
As is well known, a personal computer has the advantage, compared with current mobile devices, that it has a wider range of input options (such as a full size keyboard and a mouse), and has a larger display for retrieved data. Further, the[0032]personal computer60 is provided with a wired broadband connection to theinternet50. Possible uses of apersonal computer60, in conjunction with theinternet50, include retrieving data from servers to which there is intended to be restricted access, and carrying out online transactions, which may include transmitting confidential user information to a third party computer. As described above, the third party computer, from which information is to be retrieved, or to which information is to be transmitted, has an associatedauthentication server54.
Also, FIG. 2 shows the PC connected to the[0033]internet50 through amodem56, which has an associatedauthentication server58. The description below refers to authentication towards the authentication server, but the same procedure can be used to authenticate towards theauthentication server58.
Secure communications between the[0034]personal computer60 and theauthentication server54 can then be achieved using an authentication token, as is generally known. In accordance with the invention, the authentication token can use the cryptographic components of a device, which also uses those components in, for example, WTLS communications.
FIG. 3 shows the operation of the[0035]device10 as an authentication token in conjunction with thePC60.
At[0036]step80, the user starts the application which requires authentication, and the authentication functionality of thedevice10 is started.
At[0037]step82, the device verifies the identity of the user. As described with reference to FIG. 2, the user may be required to enter a Personal Identification Number (PIN), while, to provide an additional layer of security, thedevice10 can also use a form of biometrics to provide user authentication.
Once the user has authenticated himself to the token, the token can authenticate itself to the web server, at[0038]step84. Using the selected authentication protocol, the token performs the necessary calculations to generate the required passwords, and, atstep86, information is sent to theauthentication server54.
Again, a suitable authentication protocol is described in the document “Entity Authentication Using Public Key Cryptography”, Federal Information Processing Standards Publication FIPS PUB 196 of February 1997.[0039]
In outline, when the user first contacts the[0040]authentication server54, the authentication server issues a challenge to the user. The authentication token encrypts the challenge with the user's private key, and returns it to the authentication server. The returned challenge is then decrypted by the authentication server with the user's public key, and the authentication server verifies that the decrypted challenge is the same as the original challenge.
Thus, there is no requirement for a user to enter a password to be able to access confidential information which is on the[0041]authentication server54. The necessary password can in effect be generated automatically by the WAP-enableddevice10, using the public key infrastructure provided by the cryptographic module of the device, on the basis of the identity of the user confirmed by the wireless identity module in the device.
In this way, the WAP-enabled[0042]device10 can be used an authentication token for multiple authentication servers, including authentication servers from multiple manufacturers. All that is necessary is for an authentication server and thedevice10 to be able to operate the same authentication protocols.
It will be appreciated that, for example with appropriate software in the device, it can use any suitable authentication algorithm. The cryptographic module in the device can be used in any suitable method for generating passwords and encrypting communications, although use of Wireless Public Key Infrastructure is preferred.[0043]
The WAP-enabled device allows the use of digital signatures, for the purposes of non-repudiation. This same functionality can also be re-used when the device is being used as an authentication token.[0044]
In the case where the[0045]device10 is used as an authentication token for a personal computer, described above with reference to FIG. 3, there is preferably a connection between thepersonal computer60 and the WAP-enabledmobile phone10. The connection may be wired, or, advantageously, communications between thepersonal computer60 andmobile phone10 can take place using the Bluetooth short-range radio transmission protocol.
When there is a connection between the[0046]personal computer50 and the WAP-enabledmobile phone10, whether this is wireless or wired, and the personal computer requires to use thephone10 as an authentication token, this functionality of the phone must be started. This can be carried out automatically by means of a specific command sent from the personal computer to the phone, and may alternatively or additionally be carried out in response to a specific keypress on the keyboard of the phone.
When used with a personal computer in this way, commands may be transferred to and from the device using the AT protocol. Thus, for example, passwords which are generated in the[0047]mobile phone10 acting a the authentication token are transferred to thepersonal computer60, and can be automatically sent to the authentication server.
However, a manual operation is also possible, in which the necessary authentication calculations are carried out in the authentication token, and the required password or passwords are displayed on a screen of the device, and can be manually entered by the user through the keyboard of the personal computer, and can then be sent to the authentication server.[0048]
There is thus disclosed an authentication token which is readily available, since it re-uses functionality and infrastructure which already exist for WAP-enabled devices.[0049]