-
2009-11-24
10/384,058
2003-03-07
US 7,624,266 B2
2009-11-24
-
-
Andrew L Nalven
2025-01-15
A communication method and a communication system providing services for subscribers having private identities is disclosed. The method includes receiving at a network element (S-CSCF) a communication from user equipment (UE) including a private identity of the subscriber and assigning a random string to the private identity.
Get notified when new applications in this technology area are published.
This application claims the benefit of the filing date of Provisional Patent Application Ser. No. 60/366,264, filed on Mar. 22, 2002, entitled âUsing Temporary IMPI (Private Identity) in IMS with SIPâ, which application is incorporated herein by reference in its entirety.
1. Field of the Invention
The invention relates to authentication and, more particularly, how authentication is performed in a communication network according to the Internet Protocol Multimedia System (IMS) of the 3rd Generation Partnership Project (3GPP).
2. Description of the Prior Art
FIG. 1 shows the registration signaling flow for a user to become registered. For the purpose of this registration signaling flow, the subscriber UE is considered to be roaming. This flow also shows the authentication of the private user identity. The signaling flow is from 3GPP TS 24 228 V5.3.0 which is incorporated herein by reference in its entirety. In this signaling flow, the home network does not have an active network hiding configuration. The steps of registration are described in a sequence following with the numbered paragraphs below which correspond to the numbered steps of FIG. 1:
| Request-URI: | The Request-URI (the URI that follows the method |
| name, âREGISTERâ, in the first line) indicates the | |
| destination domain of this REGISTER request. The rules | |
| for routing a SIP request describe how to use directory | |
| name service (DNS) to resolve this domain name | |
| (âregistrar.home1.netâ) into an address or entry point into | |
| the home operator's network (the I-CSCF). This infor- | |
| mation is stored in the USIM. | |
| Via: | IPv6 address of the SIP session allocated during the PDP |
| Context Activation process. | |
| From: | This indicates the public user identity originating the |
| REGISTER request. The public user identity may be | |
| obtained from the USIM. | |
| To: | This indicates the public user identity being registered. |
| This is the identity by which other parties know the | |
| subscriber. It may be obtained from the USIM. | |
| Contact: | This indicates the point-of-presence for the subscriber - |
| the IP address of the UE. This is the temporary point of | |
| contact for the subscriber that is being registered. Sub- | |
| sequent requests destined for this subscriber will be sent | |
| to this address. This information is | |
| stored in the P-CSCF and S-CSCF. | |
| Authorization: | It carries authentication information. The private user |
| identity (user1_private@home1.net) is carried in the | |
| user name field of the Digest AKA protocol. The URI | |
| parameter (directive) contains the same value as the | |
| Request-URI. The realm parameter (directive) | |
| contains the network name where the username is | |
| authenticated. The Request-URI and the realm parameter | |
| (directive) value are obtained from the same field in the | |
| USIM and therefore, are identical. | |
| Security-Client: | lists the supported algorithm(s) by the UE. |
| Supported: | This header is included to indicate to the recipient that |
| the UE supports the Path header. | |
| Path: | This is the address of the P-CSCF and is included |
| to inform the S-CSCF where to route terminating | |
| sessions. | |
| Require: | This header is included to ensure that the recipient |
| correctly handles the Path header. If the recipient | |
| does not support the path header, a response will | |
| be received with a status code of 420 and an | |
| Unsupported header indicating âpathâ. Such a | |
| response indicates a misconfiguration of the | |
| routing tables and the request has been | |
| routed outside the IM CN subsystem. | |
| P-Visited-Network-ID: | It contains the identifier of the P-CSCF network |
| at the home network. | |
| P-Charging-Vector: | The P-CSCF inserts this header and populates the |
| IMS Charging Id (ICID) parameters with a unique | |
| value and the IP address of the P-CSCF. | |
The 3GPP Technical Specification 24.229, which is incorporated by reference in its entirety, in Chapter 5.1.1.1A discusses that a subscriber has multiple IMS Public User Identities (IMPUs) and a single IMS Private User Identity (IMPI). The IMPUs are either explicitly registered or implicitly registered using messages of the Session Initiation protocol (SIP). As a result, the identity to be used for message origin verification in the P-CSCF is still open.
In IMS the user is authenticated in the S-CSCF during registration as has been discussed above. The message origin verification is delegated from the S-CSCF to the P-CSCF. Currently it is not clear how the message origin verification can be done in the P-CSCF. The IMPI is not present in messages other than REGISTER requests and using the IMPUs for this purpose is not appropriate.
One possibility is to include the IMPI into all of the messages initiated by the UE. However this solution is not safe as it exposes the user's IMPI on the air interface.
Currently in 3GPP the implicitly registered IMPUs are transferred from the Home Subscriber Server (HSS) to the S-CSCF and from the S-CSCF to the P-CSCF. The P-CSCF then keeps the user's explicitly and implicitly registered IMPUs together with the session keys IK and CK. Whenever a message arrives, the P-CSCF verifies the integrity protection using IK, then verifies if the identity included in the From: (or RPI) header field relates to that specific IK or not. The Technical Specifications of 3GPP to date are incorporated herein by reference in their entirety.
The current detailed description of the registration and authentication procedure of the 3GPP Technical Specifications described above with reference to FIG. 1 relative to the present invention is summarized as follows:
When the UE sends a REGISTER request to the network, it includes the IMPI in the Authorization header field (possibly base64 encoded). The P-CSCF receives the request and forwards the request (step 4) to the S-CSCF unmodified.
On receiving a REGISTER request from an unauthenticated user, the S-CSCF (step 8) requires at least one authentication vector (AV) to be used in the challenge to the user. If a valid AV is not available, then the S-CSCF requests at least one AV from the HSS.
The S-CSCF sends a 401 Unauthorized response to the UE (steps 9-11) containing the RAND and AUTN parameters. This message also includes the session keys IK and CK. The P-CSCF removes and stores the IK and CK keys before forwarding the response to the UE.
Upon receiving the response from the S-CSCF, the UE uses the RAND parameter to derive the IK and CK keys (step 12).
The UE sends a new REGISTER request (step 13) to the network, including its IMPI which integrity protects the message using IK. Upon receiving the request, the P-CSCF verifies the integrity of the REGISTER request using IK and forwards (steps 15 and 17) the message to the S-CSCF only when the verification was successful. In addition, the P-CSCF needs to signal to the S-CSCF that this message was received with integrity protection. After receiving the request, the S-CSCF performs whatever action is needed to register the subscriber and returns a 200 OK response (steps 20-22) to the UE.
In IMS, the user is authenticated in the S-CSCF during registration. The message origin verification is delegated from the S-CSCF to the P-CSCF. Currently it is not clear how the message origin verification can be done in P-CSCF. The IMPI (IMS Private Identity) is not present in messages other than REGISTER requests and using the IMPUs (IMS Public Identity) for this purpose is not appropriate.
The invention is a system and method which produces a temporary IMPI (hereinafter TIMPI) used in IMS for message origin verification. The invention further includes the use of the TIMPI for message origin verification in IMS with the SIP protocol.
A communication method in a network providing services for subscribers having private identities in accordance with the invention includes receiving at a network element a communication from user equipment including a private identity of the subscriber; and assigning a random string to the private identity. The random string may be delivered to the user equipment. The random string may be used for message origin verification in a forthcoming communication from the user equipment. The communication from the user equipment may be integrity protected. The communication from the user equipment may be a SIP Register request. The random string may be delivered to the user equipment by using an acknowledgement message. The acknowledgement message may be a SIP 200 OK message. The network element may be a serving network element to which the subscriber registers for services. The serving network element may be a S-CSCF. The random string may be saved in a proxy network element disposed between the user equipment and a serving network element. The proxy network element may be a P-CSCF. The message origin verification may take place in the proxy network element.
A communication system providing services for subscribers having private identities in accordance with the invention includes a user equipment; and a network element; and wherein the network element receives a communication from the user equipment and the network element assigns a random string to the private identity. The communication system may deliver the random string to the user equipment. The communication system may use the random string to perform verification of a forthcoming communication from the user equipment. The communication from the user equipment may be integrity protected. The communication from the user equipment may be a SIP Register request. The communication system may deliver the random string to the user equipment as part of an acknowledgement message. The acknowledgement message may be a SIP OK message. The network element may be a serving network element to which the subscriber registers for services. The serving network element may be a S-CSCF. A proxy network element may be disposed between the user equipment and a serving network element which saves the random string. The serving network element may be a S-CSCF and the proxy network element may be a P-CSCF. Message origin verification may take place in the proxy network element.
FIG. 1 illustrates the prior art registration signaling for a SIP user registration.
FIG. 2 illustrates user registration for IMS in accordance with the present invention.
Like parts throughout the drawings are identified in the same manner.
The invention uses a TIMPI for the message origin verification in IMS with the SIP protocol. Using a TIMPI solves many of the problems of the prior art. The use of a TIMPI in accordance with the invention is preferably used within IMS in association with the SIP protocol but is not limited thereto.
The registration and authentication procedure of the invention is as follows with reference to FIG. 2 which is identical with the prior art through steps 1-19 described above with reference to FIG. 1. Steps 1-19 are not described in detail hereinafter. When the S-CSCF at step 17 receives an integrity protected REGISTER request from the UE, which contains the user's IMPI, the S-CSCF generates a random string. This random string is associated with the user's IMPI to form the TIMPI and is returned to the UE in the 200 OK response to the REGISTER request as steps 20-22. The P-CSCF needs to snoop the 200 OK response and saves the random string with the TIMPI together with the IK and CK session keys of the user. The random string plays the role of a TIMPI. The 200 OK response to the REGISTER request carrying the TIMPI is integrity protected and as such it is not possible to be modified by an intruder over the air interface. This is the reason for inserting TIMPI in the 200 OK message rather than in a 401 Unauthorized Response.
For optimization purposes, the S-CSCF should not generate the random identifier right after receiving an unprotected REGISTER request. If it does so, a hole is opened for Denial of Service (DoS) attacks, as an integrity protected REGISTER request may not follow a 401 Unauthorized Response.
The TIMPI is inserted by the UE in all of the messages (step 23) sent towards the P-CSCF which may without limitation be in the authorization header field. The P-CSCF performs message origin verification by simply checking if the IK and the temporary TIMPI are associated. The P-CSCF does not need to know about the possible implicitly registered IMPUs of the subscriber.
When a REGISTER request (step 23) is sent by a UE, having a valid TIMPI, to the network, it contains TIMPI and is integrity protected. Upon receiving the request (step 25), the S-CSCF does a verification rather than a new authentication. Since the TIMPI is associated with the user's IMPI, the S-CSCF can safely update the registration time of the user to the requested one. The S-CSCF may provide a new TIMPI and return the new TIMPI to the user, or the S-CSCF may return the previous TIMPI to the user as part of an OK message as illustrated with steps 26-28, meaning that the old TIMPI is still valid.
The table below lists possible cases of how a REGISTER request is sent by UE. The P-CSCF action, upon the REGISTER request (step 23), is specified below:
| Integrity protected | No integrity protection | |
| IMPI included | Allowed | Allowed |
| Not recommended | P-CSCF has to signal to | |
| S-CSCF the no protection | ||
| TIMPI | desired | Not allowed |
| included | Message shall be silently | |
| discarded | ||
When the S-CSCF receives an integrity protected REGISTER request (step 25) from the UE, which contains the user's TIMPI, the S-CSCF generates the random string. The random string of the user's TIMPI is associated with the user's IMPI and is returned to the user or a new TIMPI is generated by the S-CSCF and returned in the 200 OK response to the REGISTER request (steps 26-28). The P-CSCF examines the 200 OK response and saves the random string together with the IK and CK session keys of the user. The random string plays the role of a temporary IMPI. The 200 OK response to the REGISTER request carrying the TIMPI (steps 26-28) is integrity protected and as such it is not possible to be modified by an intruder over the air interface. This is the reason for inserting the TIMPI in the 200 OK message rather than 401 Unauthorized response message).
While the invention has been described in terms of its preferred embodiment, it should be understood that numerous modifications may be made thereto without departing from the spirit and scope of the present invention. It is intended that those modifications fall within the scope of the appended claims.
1. A method, comprising:
receiving at a network element a communication from user equipment including a private identity of the subscriber, wherein the communication from the user equipment comprises a session initiation protocol register request and wherein the communication is an integrity protected communication;
assigning, by the network element, a random string to the private identity, wherein the random string is configured to serve as a temporary private identity; and
delivering the random string to the user equipment using integrity protected communication.
2. The method according to claim 1, further comprising:
using the random string for message origin verification in a forthcoming communication from the user equipment.
3. The method according to claim 1, wherein the delivering the random string to the user equipment uses an acknowledgement message.
4. The method according to claim 3 further comprising:
configuring the acknowledgement message to be a session initiation protocol 200 OK message.
5. The method according to claim 1, further comprising:
configuring the network element to be a serving network element to which the subscriber registers for services.
6. The method according to claim 5, further comprising:
configuring the serving network element to be a serving call state control function.
7. The method according to claim 1, further comprising:
saving the random string in a proxy network element disposed between the user equipment and a serving network element.
8. The method according to claim 7, further comprising:
configuring the serving network element to be a serving call state control function; and
configuring the proxy network element to be a proxy call state control function.
9. The method according to claim 7, further comprising:
performing message origin verification in the proxy network element.
10. The method according to claim 9, further comprising:
configuring the proxy network element to be a proxy state control function.
11. A system, comprising:
a user equipment; and
a network element configured to receives a communication from the user equipment, to assign a random string to the private identity, wherein the random string is configured to serve as a temporary private identity, wherein the communication from the user equipment comprises a session initiation protocol register request, and wherein the communication is an integrity protected communication, and to deliver the random string to the user equipment using integrity protected communication.
12. An apparatus, comprising:
reception means for receiving a communication from user equipment including a private identity of a subscriber, wherein the communication from the user equipment comprises a session initiation protocol register request and wherein the communication is an integrity protected communication;
assigning means for assigning a random string to the private identity, wherein the random string is configured to serve as a temporary private identity; and
delivery means for delivering the random string to the user equipment using integrity protected communication.
13. the apparatus of claim 12, further comprising:
verification means for using the random string for message origin verification in a forthcoming communication from the user equipment.
14. An apparatus, comprising:
a receiver configured to receive a communication from a user equipment including a private identity of a subscriber, wherein the communication from the user equipment comprises a session initiation protocol register request and wherein the communication is an integrity protected communication;
a processor configured to assign a random string to the private identity, wherein the random string is configured to serve as a temporary private identity; and
a transmitter configured to deliver the random string to the user equipment using integrity protected communication.
15. The apparatus of claim 14, wherein the processor is further configured to use the random string to perform verification of a forthcoming communication from the user equipment.
16. The apparatus of claim 14, wherein the transmitter is configured to deliver the random string to the user equipment as part of an acknowledgement message.
17. The apparatus of claim 16, wherein the acknowledgement message is a session initiation protocol OK message.
18. The apparatus of claim 14, wherein the apparatus comprises or is comprised in a serving network element to which the subscriber registers for services.
19. The apparatus of claim 18, wherein the serving network element is a serving call state control function.