Deriving a Security Key for Relayed Communication
20190327611 ยท 2019-10-24
Inventors
Cpc classification
H04W88/04
ELECTRICITY
H04L63/06
ELECTRICITY
International classification
H04W12/04
ELECTRICITY
H04W12/02
ELECTRICITY
Abstract
A device (1) is configured to derive a first security key based on information relating to a first node (17), to request use of or to use a further device (9) as a relay to the mobile communication network and to determine whether the further device is connected to the first node and/or receive a message when another device, e.g. the first node, has determined that the further device is not connected to the first node. The device is further configured to, upon determining that the further device is not connected to the first node or upon receipt of the message, derive a second security key based on information relating to a second node (11) to which the further device is connected and transmit information via the further device, the information being encrypted using the second security key.
Claims
1. A device for transmitting encrypted information to a mobile communication network, comprising: a communication interface; and at least one processor configured to derive a first security key based on information relating to a first node, to use the communication interface to request use of or to use a further device as a relay to staid the mobile communication network, to determine whether the further device is connected to the first node and/or receive a message when another device has determined that the further device is not connected to the first node, and upon determining that the further device is not connected to the first node or upon receipt of staid the message: to derive a second security key based on information relating to a second node of the mobile communication network to which the further device is connected, and to use the communication interface to transmit information to the mobile communication network via the further device, the information being encrypted using the second security key.
2. The device of claim 1, wherein the at least one processor is configured to derive the second security key as part of a handover of the device from the first node to the second node.
3. The device of claim 2, wherein the at least one processor is configured to request the handover upon receiving the message.
4. The device of claim 1, wherein the at least one processor is configured to use the communication interface to connect to the second node and obtain the information relating to the second node from the second node.
5. The device of claim 1, wherein the information relating to the second node comprises a random number generated by the second node.
6. The device of claim 1, wherein the information relating to the second node comprises information obtained by monitoring an air interface and which identifies the second node.
7. The device of claim 1, wherein the information relating to the second node comprises information received from the further device.
8. The device of claim 1, wherein the information relating to the second node comprises information relating to a Proximity Services session between the device and the further device.
9. The device of claim 1, wherein the at least one processor is configured to generate a random number and to derive the second security key based on information relating to the second node and based on the random number generated by the at least one processor.
10. The device of claim 9, wherein the at least one processor is configured to use the communication interface to transmit the random number generated by the at least one processor to the further device or to the second node.
11. A system for directing a device for transmitting encrypted information, comprising: a communication interface; and at least one processor configured to determine whether a device wants to use or is using a further device as a relay to a mobile communication network and upon determining that the device wants to use or is using a further device as a relay to the mobile communication network: to determine a node of the mobile communication network with which the device is associated, to determine a further node of the mobile communication network to which the device is connected or wants to connect, and to use the communication interface to direct the device to derive a new security key based on information relating to the further node if the node and the further node are not the same node.
12. A method of transmitting encrypted information from a device to a mobile communication network, comprising: deriving a first security key based on information relating to a first node; using or requesting use of a further device as a relay to the mobile communication network; determining whether the further device is connected to the first node and/or receiving a message when another device has determined that the further device is not connected to the first node; and upon determining that the further device is not connected to the first node or upon receipt of the message: deriving a second security key based on information relating to a second node of the mobile communication network to which the further device is connected; and transmitting information to the mobile communication network via the further device, the information being encrypted using the second security key.
13. A method of directing a device for transmitting encrypted information, comprising: determining whether a device wants to use or is using a further device as a relay to a mobile communication network; and upon determining that the device wants to use or is using a further device as a relay to a mobile communication network: determining a node of the mobile communication network with which the device is associated; determining a further node of the mobile communication network to which the device is connected or wants to connect; and directing the device to derive a new security key based on information relating to the further node if the node and the further node are not the same node.
14. A non-transitory computer-readable medium having instructions stored thereon for transmitting encrypted information from a device to a mobile communication network, wherein the instructions, when executed by one or more processors, cause the one or more processors to carry out operations including: deriving a first security key based on information relating to a first node; using or requesting use a further device as a relay to the mobile communication network; determining whether the further device is connected to the first node and/or receiving a message when another device has determined that the further device is not connected to the first node; and upon determining that the further device is not connected to the first node or upon receipt of the message: deriving a second security key based on information relating to a second node of the mobile communication network to which the further device is connected; and transmitting information to the mobile communication network via the further device, the information being encrypted using the second security key.
15. A non-transitory computer-readable medium having instructions stored thereon for directing a device for transmitting encrypted information, wherein the instructions, when executed by one or more processors, cause the one or more processors to carry out operations including: determining whether a device wants to use or is using a further device as a relay to a mobile communication network; and upon determining that the device wants to use or is using a further device as a relay to a mobile communication network: determining a node of the mobile communication network with which the device is associated; determining a further node of the mobile communication network to which the device is connected or wants to connect; and directing the device to derive a new security key based on information relating to the further node if the node and the further node are not the same node.
Description
BRIEF DESCRIPTION OF THE DRAWINGS
[0039] These and other aspects of the invention are apparent from and will be further elucidated, by way of example, with reference to the drawings, in which:
[0040]
[0041]
[0042]
[0043]
[0044]
[0045]
[0046]
[0047]
[0048]
[0049]
[0050]
[0051]
[0052]
[0053]
[0054]
[0055]
[0056] Corresponding elements in the drawings are denoted by the same reference numeral.
DETAILED DESCRIPTION OF THE DRAWINGS
[0057]
[0058] The mobile device 1 comprises a communication interface 3 and a processor 5. The processor 5 is configured to derive a first security key based on information relating to the first access point 17, to use the communication interface 3 to request use of or to use the further device 9 as a relay to the mobile communication network and to determine whether the further device 9 is connected to the first access point 17 and/or receive a message when another device has determined that the further device 9 is not connected to the first access point 17.
[0059] The processor 5 is further configured to, upon determining that the further device 9 is not connected to the first access point 17 or upon receipt of the message, derive a second security key based on information relating to a second access point 11 of the mobile communication network to which the further device 9 is connected and to use the communication interface 3 to transmit information to the mobile communication network via the further device 9, the information being encrypted using the second security key. The processor 5 may be configured to derive the second security key as part of a handover of the mobile device 1 from the first access point 17 to the second access point 11. The processor 5 may be configured to request the handover upon receiving the message.
[0060] The second access point 11 comprises a communication interface 13 and a processor 15. The processor 15 is configured to determine whether the mobile device 1 wants to use or is using a further device 9 as a relay to a mobile communication network and upon determining that the device 1 wants to use or is using a further device 9 as a relay to the mobile communication network: to determine a first access point 17 of the mobile communication network with which the mobile device 1 is associated, to determine a second access point 11 of the mobile communication network to which the mobile device 1 is connected or wants to connect, and to use the communication interface 13 to direct the mobile device 1 to derive a new security key based on information relating to the second access point 11 if the first access point 17 and the further access point 11 are not the same node.
[0061] The mobile device 1 may be, for example, a wearable device like virtual reality glasses, a smart watch, augmented reality glasses, earphones, a hearing aid, a glucose sensor, a body temperature sensor, a blood pressure sensor, an insulin pump, a heart rate sensor, a GPS sensor or an accelerometer. Alternatively, the mobile device 1 may be, for example, a car that connects to the mobile device of the driver. The mobile device 1 may also be a device that the user may carry, use or interact with only occasionally and is connected to his/her mobile device only occasionally, e.g. a game console, a wireless toy, a wireless keyboard, a tablet, a screen, a beamer, or a musical instrument. The further devices 7 and 9 may each be a smart phone, a laptop or a tablet, for example. The further devices 7 and 9 may each have a slot for a UICC (also called a SIM card) or be provisioned with an embedded or enhanced version thereof for storage of credentials, for example.
[0062] In the embodiment shown in
[0063] The communication interface 3 of the mobile device 1 may use LTE Proximity Services (including LTE D2D) to communicate with the further devices 7 and/or 9, for example. Alternatively or additionally, the communication interface 3 of the mobile device 1 may use Body Area Network (BAN)/Personal Area Network (PAN) technologies such as Bluetooth (Low Energy), NFC, and ZigBee to communicate with the further devices 7 and/or 9, for example. The communication interface 3 of the mobile device 1 may use WiFi, Ethernet or one or more cellular communication technologies such as GPRS, CDMA, UMTS and/or LTE to communicate with the first access point 17 and/or the second access point 11, for example. The processor 5 may be a general-purpose processor, e.g. an ARM or a Qualcomm processor, or an application-specific processor. The mobile device 1 may comprise storage means (not shown), e.g. solid state memory. The mobile device 1 may comprise other components typical for a mobile device, e.g. a random access memory and a battery.
[0064] The communication interface 3 of the second access point 11 may use WiFi, Ethernet or one or more cellular communication technologies such as GPRS, CDMA, UMTS and/or LTE to communicate with the mobile device 1 and the further devices 7 and 9, for example. The processor 15 is preferably a general-purpose processor, e.g. an Intel or an AMD processor. The processor 15 may comprise multiple cores, for example. The processor 15 may run a Unix-based or Windows operating system, for example. The second access point 11 may comprise other components typical for a component in a mobile communication network, e.g. a power supply and a random access memory. The second access point 11 may comprise storage means (not shown). The storage means may comprise solid state memory, e.g. one or more Solid State Disks (SSDs) made out of Flash memory, or one or more hard disks, for example.
[0065] In a first embodiment of the mobile device 1, the processor 5 is configured to use the communication interface 3 to connect to the second access point 11 and obtain the information relating to the second access point 11 from the second access point 11. The information relating to the second access point 11 may comprise information obtained by monitoring an air interface and which identifies the second access point 11.
[0066] In a second embodiment of the mobile device 1, the information relating to the second access point 11 comprises a random number generated by the second access point 11 instead of or in addition to information obtained by monitoring an air interface and which identifies the second access point 11. The processor 5 may be configured to generate a random number and to derive the second security key based on information relating to the second access point 11 and based on the random number generated by processor 5. The processor 5 may be configured to use the communication interface 3 to transmit the random number generated by the processor 5 to the further device 9 (which may then forward it to the second access point 11) or to the second access point 11.
[0067] In a third embodiment of the mobile device 1, the information relating to the second access point 11 comprises information obtained by monitoring an air interface and which identifies the second access point 11. The information relating to the second access point 11 may comprise information received from the further device 9, which may be compared with the information obtained by monitoring the air interface to check its correctness, for example.
[0068] In a fourth embodiment, the information relating to the second access point 11 may alternatively or additionally comprise information relating to a Proximity Services session between the device 1 and the further device 9. This information may be received from the further device 9, for example.
[0069] A flow diagram of an embodiment of the method of transmitting encrypted information from a device to a mobile communication network is shown in
[0070] A flow diagram of an embodiment of the method of directing a device for transmitting encrypted information is shown in
[0071] The invention is explained in more detail with the help of
[0072]
[0073] All key derivations described hereinafter are performed using the following formula (specified in 3GPP TS 33.220): derived key=HMAC-SHA-256 (Key, S).
[0074] For brevity, the formula is also denoted as KDF (Key, S). The string S is built up from several components, one being an FC-value to separate the key derivations. Also, the String S often contains lengths (denoted Ln) in addition to the value itself. So, a string is constructed, for example, from the following values:
FC=1
P0=KPN
P1=TNO-NL
L0=3
L1=6
[0075] The final string S is given by: S=FCP0L0P1L1=1KPN3TNO-NL6. Hereinafter, Len will refer to any Ln value and concatenation is denoted by or /.
[0076] The key derivations in LTE work as follows for initial attach (specified in 3GPP TS 33.401): [0077] USIM and AuC (Authentication Center) derive CK, IK 113 from K 111 (using for example the Milenage algorithm) in block 101. [0078] UE and HSS derive K.sub.ASME 117 from CK, IK 113 and the Serving Network ID (PLMNID) 115 in block 103. K.sub.ASME=KDF(CKIK, FCSN_idLenSON XOR AKLen). [0079] UE and MME derive the NAS Keys (K.sub.NASenc 119 and K.sub.NAsint 121), a K.sub.eNB key 123 and an NH key (not shown) from K.sub.ASME 117 in block 105. K.sub.eNB=KDF (K.sub.ASME, FCNAS CountLen). NH=KDF (K.sub.eNB, FCK.sub.eNB/NHLen). [0080] UE and eNodeB derive the user plane key K.sub.UPenc 125 and the RRC keys (K.sub.RRCint 127 and K.sub.RRCenc 129) from K.sub.eNB in block 107.
[0081] Key derivations for K.sub.eNB are specified in 3GPP TS 33.401. 3GPP TR 33.899 v0.4.1 specifies options for key hierarchies. 3GPP TR 33.899 v0.5.0 specifies security requirements for relay security, in particular to being able to protect sessions and uniquely identify the remote UE, which are enabled by the present invention by deriving appropriate keys and using these keys to protect the session.
[0082] Ciphering on the link between the eNB and the UE may be used to prevent UE tracking based on cell level measurement reports, handover message mapping, or cell level identity chaining. Another reason to provide ciphering for the link between the eNB and the UE is to (optionally) protect the user plane.
[0083] Examples of the afore-mentioned four embodiments are described in detail below. These examples are briefly described per embodiment as follows:
1. During handover, the remote UE will always switch back to a direct path between eNB and UE. So, the remote UE will reach back to the eNB to which the relaying UE has been handed over and get the information straight from that eNB and only then switches back to the relay mode.
2. At initial attach, the UE and the eNB derive a special key that is used only the case of relaying and the eNB forwards the key to the next eNB whenever it performs a handover of the relaying UE.
3. The remote UE listens in on the relay UE communication and derives the appropriate key material based on this information.
4. The remote UE and eNB derive the key using information about the relay channel.
[0084] New keys may need to be derived in the following situations:
a) Switching between direct and relayed mode for the remote UE
b) Handing over the relay UE and the remote UE together
c) Hand over between relay UEs by the remote UE
[0085] Situation a) is depicted in
[0086] In step 131, UE1 attaches to the Core Network (CN) via eNB1 in the normal way. In step 133, UE1 discovers a new relay (UE2) based on ProSe (Proximity Services) discovery. ProSe specifies that one of the UEs may broadcast and one of the UEs is listening and so either UE could be the broadcasting UE. In
[0087] In step 135, UE1 connects to UE2 (it is assumed that UE2 asks for relay resources from the network and obtains these relay resources from the network). In step 137, UE2 confirms to UE1 that the connection has been established. If the direction of the arrow (i.e. of the broadcast) is reversed in step 133, the direction of the arrows may need to be reversed in steps 135 and 137 as well.
[0088] In step 139, UE1 asks eNB1 for a handover to UE2. Normally, the network is in charge of handovers, so UE may not be able to literally ask for a handover. Instead, it could send a relay discovered message or it could send a measurement report which includes the signal from UE2 as measurement. Also, a message could be used in which UE1 literally sends a please handover to discovered relay UE2 message. Lastly, the handover could be initiated by the network after a ProSe match report was received from UE1 or UE2. In that case, step 139 could be performed by the network instead.
[0089] In step 141, eNB1 starts a search to find out who UE2 is. (1) One solution is that UE2 has told UE1 its radio identifier when they connected and UE1 may have included the radio identifier. (2) Another option is that UE1 forwards the ProSe identifier of UE2 and that the eNB does a lookup of the identifier via the Core Network. (3) The eNB may also try to page UE2 based on the identifier it got from UE1. (4) Yet another alternative is that UE2 forwards the handover request to eNB1 including its GUTI/TMSI or C-RNTI or even a bearer identifier of the bearer to be switched. In case step 139 is performed by the network, the eNB will still have to make a mapping between the identifiers known in the Core Network and the identifiers known to the Core Network, or alternatively, the Core Network will have to map between the different identifiers of ProSe and EPS bearer identities in order to identify the respective eNBs that the UEs are connected to and inform the respective eNB (eNB1 in this case) of the findings.
[0090] eNB1 may also find out that UE2 is connected to another eNB. This is described in relation to
[0091] UE1 then switches to UE2 relay in step 148 upon receiving a command thereto from the eNB1 in step 145. New keys are derived by UE1 and eNB1 in steps 146 and 147 (in this example before switching to UE2) as follows: K.sub.eNB*=KDF(K.sub.eNB, FCCell IDLenEARFCN_DLLen).
[0092] UE1 establishes a PC-5 bearer between UE1 and UE2 in step 149. UE2 forwards traffic between the PC-5 bearer and the radio bearer for UE1. If there is no one-to-one relation between PC-5 bearers and radio bearers, UE1 will have to indicate to UE2 for which bearer the traffic is meant. UE2 will then have to inspect each packet that it receives over the PC-5 bearer (possibly reassemble packets) and forward them to the correct radio bearer. In return, UE2 will have to keep UE1 informed about possible packet counters and retransmissions which may affect the counters (and therefore, the encryption).
[0093]
[0094] Situation b) is depicted in
[0095] In step 173, UE2 signals eNB1 the need for a handover. UE2 may do this using measurement reports and eNB1 may finally issue the command to handover. Next, eNB1 signals to UE1 the handover pending via UE2 in step 175. UE1 then terminates direct mode in step 177 and connects back to eNB1 directly in step 179. Depending on the communication mode that was used for direct mode, it could simply mean that UE1 stops sending messages (unconfirmed mode) or that it will have to tear down the connection actively (confirmed mode). If the latter, this will require additional signaling between UE1 and UE2 to make sure that the connection was terminated. Meanwhile, UE2 is handed over to eNB2 in step 181.
[0096] eNB1 signals in step 175 that UE1 has to handover to eNB2 using normal handover procedures. UE1 does as it is told and hands over to eNB2 in this step 183. The security context is transferred between eNB1 and eNB2 as per the specified procedure. UE1 asks to be handed over back to UE2 in step 185 and if eNB2 agrees, that procedure is performed in this step 185. New keys are derived by UE1 and eNB2 in steps 186 and 187 as follows: K.sub.eNB*=KDF(K.sub.eNB, FCCell IDLenEARFCN_DLLen). In step 188, UE1 connects to UE2 again and sets up a secure connection with eNB2 in step 189 based on K.sub.eNB* derived in step 186. Step 188 may be preceded by another discovery step (not shown), similar to step 133, to determine that the two UEs are still in proximity.
[0097] Situation c) is depicted in
[0098] The flow diagrams of
[0101] The key is derived as follows: K.sub.eNB-relay=KDF(K.sub.eNB, FCALenBLen). The random number A is provided by the UE1 to eNB1 in step 139, see
[0102] Situation b) is depicted in
[0103] Situation a) is depicted in
[0104] In step 131, UE1 attaches to the network in the normal way and detaches from the radio network, but continues to be registered in the network. In LTE, this state is the EMM registered state. In such a state the UE1 has a security context available, but has no active radio bearers to the network. Effectively, it has a logical connection to the network but no physical one. A UE that is in such a state would first have to setup radio bearers before communication can commence and conversely, the network that receives data for such a UE will first have to page it, wait for it to come back to the network and can only then send data to the UE. It is estimated that UEs are in this state most of the time and it is designed so that UEs can return to active, connected mode quickly. A UE in this mode will monitor the air interface for messages that are of relevance for this UE and may even do proximity discovery using ProSe. In step 133, UE1 discovers a new relay (UE2) based on ProSe (Proximity Services) discovery. UE1 continues to listen to the broadcast messages (SIB messages) in step 245 to monitor the available Cell-Ids and EARFCN values. UE1 stores these values in a list in step 247 and expires Cell-Ids and EARFCN combinations after not having seen them for some time.
[0105] In step 249, UE1 connects to UE2 and asks for relay functionality from UE2. In step 251, UE2 asks for relay resources for UE1 from eNB1. eNB1 starts a search to find out who UE1 is in step 253. Since UE1 was in the idle state, UE1 does not have a radio identifier or radio bearer identifier, so UE1 cannot provide this identifier to UE2. One solution is that UE2 forwards the ProSe identifier or GUTI or TMSI of UE1 and that the eNB does a lookup of the identifier via the core network. Of course, UE2 can only know the GUTI or TMSI of the UE1 if UE1 has provided that information in some sort of attach message. This lookup is necessary for eNB1 in order to arrange all the bearers and to get the security context for the UE1 and be able to derive the key that is to be used between the UE1 and the eNB1.
[0106] Once the network has identified UE1 in step 253 and agrees to let UE2 act as relay, eNB1 will provide the UE2 with radio resources for the relay and provides UE2 with a bearer identifier for the UE1 traffic in step 255. UE2 provides the parameters to UE1 to derive the K.sub.eNB in step 257, namely, the EARFCN and the Cell-Id of the cell it is connected to. In step 259, UE1 checks the parameters with what it observed on the air interface and if they match, UE1 will calculate the K.sub.eNB based on the parameters provided by UE2. In step 263, the connection between UE1 and UE2 is setup. The UE1 and eNB1 setup a secure tunnel in step 265 using the key derived by eNB1 in step 261 and by UE1 in step 259. The key is derived as follows: K.sub.eNB*=KDF (K.sub.eNB, FCCell IDLenEARFCN-DLLen).
[0107] Situation b) is depicted in
[0108] UE2 signals eNB1 the need for a handover in step 275. UE2 may do this using measurement reports and eNB1 may finally issue the command to handover. UE1 is handed over by eNB1 to eNB2 in step 277 and eNB1 provides the necessary security context. UE1 is handed over while remaining connected to UE2. eNB1 initiates the handover of UE2 from eNB1 to eNB2 in step 279 by running a handover procedure as usual. UE2 is handed over by eNB1 to eNB2 by the network. eNB2 provides the necessary radio resources for both UE2 and UE1 traffic.
[0109] Then, UE2 provides UE1 with the parameters about the new eNB2 (Cell-Id and EARFCN) in step 281. In step 283, UE1 checks the parameters with the parameters that it observed on the air interface or that it has obtained differently. The new keys are derived by UE1 and eNB1 in steps 283 and 285 as follows: K.sub.eNB*=KDF(K.sub.eNB, FCCell IDLenEARFCN-DLLen).
[0110] In the example of
[0111] In yet another alternative (not shown), eNB1 keeps UE1 informed about possible hand overs. It will send the information about acceptable Cell-Ids and EARFCN combinations regularly to the UE1 so that the UE1 can keep its database up-to-date and can compare to the values that UE2 may sent at a later time.
[0112] In another embodiment that involves a slight modification to the third embodiment, UE1 may temporarily be unavailable because it goes into some sort of battery saving mode. For example, in case that UE1 is a smartwatch and UE2 is a smartphone, the two UEs may assume that for most of the day they will not be separated. As such, they may set a reasonable time interval of for example 5 minutes where they exchange a message to check that the other UE is still there. For these cases, UE2 may not always forward the Cell ID and EARFCN immediately, rather it may forward the appropriate values whenever the keep alive message is exchanged. Multiple handovers of UE2 may happen, but steps 285 and 283 of
[0113] Situation a) is depicted in
[0114] In step 311, UE1 attaches to the network in the normal way and detaches from the radio network, but continues to be registered in the network. In LTE, this state is the EMM registered state. In step 313, UE1 discovers UE2 via a ProSe discovery message. In step 315, UE1 connects to UE2 and asks for relay possibilities from UE2 that is connected to eNB1. In step 317, UE2 asks for relay resources for UE1 from eNB1. In step 319, eNB1 starts a search on the Core Network to find out who UE1 is. Since the UE1 is in the idle state, UE1 has no radio identifier, so UE1 cannot provide this identifier to UE2. One solution is that UE2 forwards the ProSe identifier or GUTI or TMSI of UE1 and that the eNB does a lookup of the identifier via the core network. Of course, UE2 can only know the GUTI or TMSI of the UE1 if UE1 has provided that information in some sort of attach message. This lookup is necessary for eNB1 in order to arrange all the bearers and to get the security context for the UE1 and be able to calculate the key that is used between the UE and the eNB.
[0115] In step 321, the Core Network gives permission for UE1 to use UE2 as a relay. In step 323, UE2 receives information about which relay resources have been assigned from eNB1, namely a EARFCN and ProSe cell id. UE2 forwards the resources to UE1 in step 325. If UE1 is connected to the network it may also receive the ProSe resources via eNB1. Both UE1 and eNB1 derive the key based on the resources assigned to the direct mode communication channel between UE1 and UE2 in steps 327 and 329, respectively. The keys are derived as follows: K.sub.eNB*=KDF (K.sub.eNB, FCProSe IDLenProse ChannelLen). UE1 and UE2 setup the connection in step 331. UE1 and eNB1 setup a secure communication channel in step 333.
[0116] Situation b) is depicted in
[0117] In step 353, eNB2 derives the new key based on the old K.sub.eNB and the new ProSe resources. The network initiates the handover of UE2 from eNB1 to eNB2 in step 355 by running a handover procedure as usual. In step 357, eNB2 signals the new ProSe resources to UE2. In step 361, UE2 signals the new ProSe resources to UE1, e.g. if the eNB1 did not signal the new ProSe resources to UE1 in step 349. In step 363, UE1 derives the new key based on the old K.sub.eNB and these new ProSe resources, e.g. if UE1 did not derive the new key in step 351. So, UE1 derives the new key in step 351 or step 363 and eNB2 derives the new key in step 353. The new key may be derived as follows: K.sub.eNB*=KDF(K.sub.eNB, FCProSe IDLenProSe ChannelLen).
[0118] In the telecommunications system 500 of
[0119] The lower branch of
[0120] For a GSM/GPRS network, a radio access network (RAN) system 520 comprises a plurality of nodes, including base stations (combination of a BSC and a BTS), not shown individually in
[0121] For a UMTS radio access network (UTRAN), the radio access network system 520 also comprises a Radio Network Controller (RNC) connected to a plurality of base stations (NodeBs), also not shown individually in
[0122] The upper branch of the telecommunications system in
[0123] The radio access network system 510 (E-UTRAN), comprises base stations (evolved NodeBs, eNodeBs or eNBs), not shown individually in
[0124] For GPRS, UMTS and LTE systems, the core network system is generally connected to a further packet network 502, e.g. the Internet.
[0125] Further information of the general architecture of an EPS network can be found in 3GPP Technical Specification TS 23.401 GPRS enhancements for Evolved Universal Terrestrial Radio Access Network (E-UTRAN) access.
[0126]
[0127] As shown in
[0128] The memory elements 604 may include one or more physical memory devices such as, for example, local memory 608 and one or more bulk storage devices 610. The local memory may refer to random access memory or other non-persistent memory device(s) generally used during actual execution of the program code. A bulk storage device may be implemented as a hard drive or other persistent data storage device. The processing system 600 may also include one or more cache memories (not shown) that provide temporary storage of at least some program code in order to reduce the number of times program code must be retrieved from the bulk storage device 610 during execution.
[0129] Input/output (I/O) devices depicted as an input device 612 and an output device 614 optionally can be coupled to the data processing system. Examples of input devices may include, but are not limited to, a keyboard, a pointing device such as a mouse, or the like. Examples of output devices may include, but are not limited to, a monitor or a display, speakers, or the like. Input and/or output devices may be coupled to the data processing system either directly or through intervening I/O controllers.
[0130] In an embodiment, the input and the output devices may be implemented as a combined input/output device (illustrated in
[0131] A network adapter 616 may also be coupled to the data processing system to enable it to become coupled to other systems, computer systems, remote network devices, and/or remote storage devices through intervening private or public networks. The network adapter may comprise a data receiver for receiving data that is transmitted by said systems, devices and/or networks to the data processing system 600, and a data transmitter for transmitting data from the data processing system 600 to said systems, devices and/or networks. Modems, cable modems, and Ethernet cards are examples of different types of network adapter that may be used with the data processing system 600.
[0132] As pictured in
[0133] Various embodiments of the invention may be implemented as a program product for use with a computer system, where the program(s) of the program product define functions of the embodiments (including the methods described herein). In one embodiment, the program(s) can be contained on a variety of non-transitory computer-readable storage media, where, as used herein, the expression non-transitory computer readable storage media comprises all computer-readable media, with the sole exception being a transitory, propagating signal. In another embodiment, the program(s) can be contained on a variety of transitory computer-readable storage media. Illustrative computer-readable storage media include, but are not limited to: (i) non-writable storage media (e.g., read-only memory devices within a computer such as CD-ROM disks readable by a CD-ROM drive, ROM chips or any type of solid-state non-volatile semiconductor memory) on which information is permanently stored; and (ii) writable storage media (e.g., flash memory, floppy disks within a diskette drive or hard-disk drive or any type of solid-state random-access semiconductor memory) on which alterable information is stored. The computer program may be run on the processor 602 described herein.
[0134] The terminology used herein is for the purpose of describing particular embodiments only and is not intended to be limiting of the invention. As used herein, the singular forms a, an, and the are intended to include the plural forms as well, unless the context clearly indicates otherwise. It will be further understood that the terms comprises and/or comprising, when used in this specification, specify the presence of stated features, integers, steps, operations, elements, and/or components, but do not preclude the presence or addition of one or more other features, integers, steps, operations, elements, components, and/or groups thereof.
[0135] The corresponding structures, materials, acts, and equivalents of all means or step plus function elements in the claims below are intended to include any structure, material, or act for performing the function in combination with other claimed elements as specifically claimed. The description of embodiments of the present invention has been presented for purposes of illustration, but is not intended to be exhaustive or limited to the implementations in the form disclosed. Many modifications and variations will be apparent to those of ordinary skill in the art without departing from the scope and spirit of the present invention. The embodiments were chosen and described in order to best explain the principles and some practical applications of the present invention, and to enable others of ordinary skill in the art to understand the present invention for various embodiments with various modifications as are suited to the particular use contemplated.