A mobile device (1) is configured to receive a plurality of identity profiles from a server system (11), store the plurality of identity profiles in a storage means (7), select a first identity profile from the plurality of identity profiles, and transmit authentication information to a mobile communication network (21,22,25) in order to use the mobile communication network. The authentication information comprises an identifier from the first identity profile. The mobile device is further configured to detect an identity change event, select a second identity profile from the plurality of identity profiles upon detecting the identity change event, and transmit further authentication information to the mobile communication network or to a further mobile communication network (23,26). The further authentication information comprises an identifier from the second identity profile.
|
8. A computer-implemented method of enabling selection of an identity profile, comprising:
retrieving a plurality of said collection of identity profiles from a storage means, each of said plurality of identity profiles comprising an identifier of a user of a mobile communication network and/or a unique device identifier and each of said plurality of identity profiles not being marked, in said storage means, as in use;
transmitting said plurality of identity profiles to a mobile device;
marking, in said storage means, said plurality of identity profiles as in use;
receiving a message from said mobile device, said message identifying at least one of said plurality of identity profiles; and
marking, in said storage means, said at least one identity profile identified in said message as not being in use,
wherein said at least one processor is configured to associate, in said storage means, a last-used time with said at least one identity profile identified in said message upon receiving said message,
one or more of said plurality of identity profiles are associated with a last-used time, and
a difference between a current time when said one or more identity profiles are retrieved and each of said one or more last-used times exceeds a predetermined threshold.
1. A server system, comprising:
at least one receiver;
at least one transmitter;
storage means for storing a collection of identity profiles; and
at least one processor configured to:
retrieve a plurality of said collection of identity profiles from said storage means, each of said plurality of identity profiles comprising an identifier of a user of a mobile communication network and/or a unique device identifier and each of said plurality of identity profiles not being marked, in said storage means, as in use,
use said at least one transmitter to transmit said plurality of identity profiles to a mobile device,
mark, in said storage means, said plurality of identity profiles as in use,
use said at least one receiver to receive a message from said mobile device, said message identifying at least one of said plurality of identity profiles, and
mark, in said storage means, said at least one identity profile identified in said message as not being in use,
wherein said at least one processor is configured to associate, in said storage means, a last-used time with said at least one identity profile identified in said message upon receiving said message,
one or more of said plurality of identity profiles are associated with a last-used time, and
a difference between a current time when said one or more identity profiles are retrieved and each of said one or more last-used times exceeds a predetermined threshold.
2. The server system as claimed in
3. The server system as claimed in
4. The server system as claimed in
5. The server system as claimed in
6. The server system as claimed in
7. The server system as claimed in
9. A non-transitory computer readable medium having a computer program or suite of computer programs stored thereon, said computer program or suite of computer programs comprising at least one software code portion which, when run on a computer system, being configured for performs the method of
|
The invention relates to a mobile device for selecting an identity profile for use with a mobile communication network and a server system for enabling selection of such an identity profile.
The invention further relates to a computer-implemented method of selecting an identity profile and a computer-implemented method of enabling selection of an identity profile.
The invention also relates to a computer program product enabling a computer system to perform such methods.
Building and maintaining a mobile communication network is not cheap and for this reason, users need to pay when they want to use a mobile communication network. Authentication in mobile networks is mandatory due to business and legal reasons, as well standards compliance. In order to verify that a user is authorized to use a mobile communication network, the user needs to transmit authentication information to the mobile communication network and this authentication information needs to comprise an identity. This identity may also be used for accounting purposes, e.g. if the user needs to pay per minute of calling and/or per MB of data usage.
In mobile communication networks such as GSM, UMTS and LTE, the identity that is transmitted in the authentication information is typically a user identity, e.g. an International Mobile Subscriber Identity (IMSI). In GSM, UMTS and LTE networks, the IMSI is provisioned in a Subscriber Identity Module (SIM) card. A drawback of the requirement to transmit this user identity is that it makes it easier to locate and track a user. Protocols used to authenticate the mobile network subscriber may address privacy issues to protect its identity from a passive eavesdropping over the radio network; however, the measures implemented this way have proven to be insufficient in a case when an adversary is capable of active signal interception (man in the middle attacks), and completely keep out of the scope threats from attackers that have access to the mobile network operator's equipment.
Most mobile phones use a single SIM card, but there are also certain models of mobile phones that are able to use two SIM cards. A mobile phone that is able to use two SIM cards is disclosed in EP 2 461 549 A1, for example. The benefit of using two SIM cards is that costs can be charged to a user's company for work calls and to the user himself for personal calls. However, even with two SIM cards, the user is relatively easy to locate and track, and the device's identification (IMEI number) remains persistent for each SIM card.
It is a first object of the invention to provide a mobile device, which helps protect the identity of the mobile device and/or its user(s).
It is a second object of the invention to provide a server system, which helps protect the identity of mobile devices and/or its users.
It is a third object of the invention to provide computer-implemented methods, which help protect the identity of a mobile device and/or its user(s).
In a first aspect of the invention, a mobile device comprises at least one receiver, at least one transmitter, storage means, and at least one processor configured to use said at least one receiver to receive a plurality of identity profiles from a server system, store said plurality of identity profiles in said storage means, select a first identity profile from said plurality of identity profiles, use said at least one transmitter to transmit authentication information to a mobile communication network in order to use said mobile communication network, said authentication information comprising an identifier from said first identity profile, detect an identity change event, select a second identity profile from said plurality of identity profiles upon detecting said identity change event, and use said at least one transmitter to transmit further authentication information to said mobile communication network or to a further mobile communication network, said further authentication information comprising an identifier from said second identity profile.
By obtaining identities from a server system, the mobile device is able to obtain as many identities as it needs to switch identities frequently and thereby protect the identity of the mobile device and/or its user(s).
Said at least one processor may be configured to use said at least one transmitter to transmit a message to said server system, said message identifying at least said first identity profile and indicating that said mobile device has finished using said first identity profile. This allows an identity used by a first mobile device to be used by other mobile devices and thereby both reduces the amount of identities that the server system needs to possess and optimizes the identity protection. The message is normally transmitted to the server system via a mobile communication network. Use of a phrase “X transmits to Y” does not imply that X transmits directly (via the physical layer) to Y or imply anything about the OSI layer(s) over which X and Y communicate.
Said at least one processor may be configured to detect said identity change event automatically without a user selecting another identity. If the user would need to manually select another identity, he would likely not do this often enough and/or not at the right moments.
Said at least one processor may be configured to detect said identity change event upon detecting a link failure and/or upon receiving a request or command to select a different cell of said mobile communication network. This prevents the collection of travel velocity intelligence and these moments are therefore the best moments to switch identities for identity protection. Alternatively or additionally, an identity change event may be detected automatically at regular or irregular intervals, e.g. upon expiry of a timer.
Said at least one processor may be configured to transmit said further authentication information to said further mobile communication network. By transmitting the further authentication to a different mobile communication network, network authentication event correlation may be prevented, and this may help defeat coarse geospatial targeting.
Said at least one processor may be configured to use said at least one transmitter to select a new cell on said mobile communication network or said further mobile communication network before transmitting said further authentication information to said new cell, said new cell being arbitrarily being selected from a plurality of cells. Normally, the closest cell tower would be used, but by regularly using a farther away cell tower, location pinpointing may be prevented, and this may help defeat coarse geospatial targeting.
Said at least one processor may be configured to prevent communication with more than one cell at the same time. This prevents cell tower triangulation on 2G networks.
Said at least one processor may be configured not to transmit a detach request to said mobile communication network upon detecting said identity change and/or to pause upon detecting said identity change event before transmitting said further authentication information to said mobile communication network or said further mobile communication network. This ensures temporal correlation distortion, the former via overlapping network authentication events and the latter via delayed network authentication events.
Said at least one processor may be configured to mark, in said storage means, said first identity profile as unusable upon detecting said identity change and use said at least one transmitter to transmit a request for new identity profiles to said server system upon determining that a quantity of usable identity profiles in said storage means is smaller than a predefined threshold. Although it would be possible obtain a new identity profile after each identity switch, the amount of communication with the server system is reduced when new identity profiles are only obtained if the quantity of unused/usable identity profiles becomes small.
In a second aspect of invention, a server system comprises at least one receiver, at least one transmitter, storage means for storing a collection of identity profiles and at least one processor configured to retrieve a plurality of said collection of identity profiles from said storage means, each of said plurality of identity profiles comprising an identifier of a user of a mobile communication network and/or a unique device identifier and each of said plurality of identity profiles not being marked, in said storage means, as in use, use said at least one transmitter to transmit said plurality of identity profiles to a mobile device, mark, in said storage means, said plurality of identity profiles as in use, use said at least one receiver to receive a message from said mobile device, said message identifying at least one of said plurality of identity profiles, and mark, in said storage means, said at least one identity profile identified in said message as not being in use.
By marking the transmitted identity profiles as in-use in the storage means, it is ensured that a single identity is not used by multiple mobile devices at the same time. By marking an identity profile as not being in use when a mobile device has finished using it, an identity used by a first mobile device may be used by other mobile devices. This both reduces the amount of identities that the server system needs to possess and optimizes the identity protection.
Said at least one processor may be configured to associate, in said storage means, a last-used time with said at least one identity profile identified in said message upon receiving said message and when one or more of said plurality of identity profiles are associated with a last-used time, a difference between a current time when said one or more identity profiles are retrieved and each of said one or more last-used times exceeds a predetermined threshold. By ensuring that a single identity is not used by two different mobile devices soon after each other, the trigger of a fraud management system may be avoided. The predetermined threshold may be 24 hours, for example.
Said identifier of said user of said mobile communication network may comprise an International Mobile Subscriber Identity and/or said unique device identifier may comprise an International Mobile Equipment Identity.
In a third aspect of the invention, a computer-implemented method of selecting an identity profile comprises receiving a plurality of identity profiles from a server system, storing said plurality of identity profiles in a storage means, selecting a first identity profile from said plurality of identity profiles, transmitting authentication information to a mobile communication network in order to use said mobile communication network, said authentication information comprising an identifier from said first identity profile, detecting an identity change event, selecting a second identity profile from said plurality of identity profiles upon detecting said identity change event, and transmitting further authentication information to said mobile communication network or to a further mobile communication network, said further authentication information comprising an identifier from said second identity profile. Said method may be performed by software running on a programmable device. This software may be provided as a computer program product.
In a fourth aspect of the invention, a computer-implemented method of enabling selection of an identity profile comprises retrieving a plurality of said collection of identity profiles from a storage means, each of said plurality of identity profiles comprising an identifier of a user of a mobile communication network and/or a unique device identifier and each of said plurality of identity profiles not being marked, in said storage means, as in use, transmitting said plurality of identity profiles to a mobile device, marking, in said storage means, said plurality of identity profiles as in use, receiving a message from said mobile device, said message identifying at least one of said plurality of identity profiles, and marking, in said storage means, said at least one identity profile identified in said message as not being in use. Said method may be performed by software running on a programmable device. This software may be provided as a computer program product.
In a fifth aspect of the invention, a mobile device comprises at least one receiver, at least one transmitter, storage means, and at least one processor configured to select a first identity profile from a plurality of identity profiles stored in said storage means, use said at least one transmitter to transmit authentication information to a mobile communication network in order to use said mobile communication network, said authentication information comprising an identifier from said first identity profile, detect an identity change event automatically without a user selecting another identity, select a second identity profile from said plurality of identity profiles upon detecting said identity change event, and use said at least one transmitter to transmit further authentication information to said mobile communication network or to a further mobile communication network, said further authentication information comprising an identifier from said second identity profile.
Moreover, a computer program for carrying out the methods described herein, as well as a non-transitory computer readable storage-medium storing the computer program are provided. A computer program may, for example, be downloaded by or uploaded to an existing device or be stored upon manufacturing of these systems.
A non-transitory computer-readable storage medium stores at least a first software code portion, the first software code portion, when executed or processed by a computer, being configured to perform executable operations comprising: receiving a plurality of identity profiles from a server system, storing said plurality of identity profiles in a storage means, selecting a first identity profile from said plurality of identity profiles, transmitting authentication information to a mobile communication network in order to use said mobile communication network, said authentication information comprising an identifier from said first identity profile, detecting an identity change event, selecting a second identity profile from said plurality of identity profiles upon detecting said identity change event, and transmitting further authentication information to said mobile communication network or to a further mobile communication network, said further authentication information comprising an identifier from said second identity profile.
A non-transitory computer-readable storage medium stores at least a second software code portion, the second software code portion, when executed or processed by a computer, being configured to perform executable operations comprising: retrieving a plurality of said collection of identity profiles from a storage means, each of said plurality of identity profiles comprising an identifier of a user of a mobile communication network and/or a unique device identifier and each of said plurality of identity profiles not being marked, in said storage means, as in use, transmitting said plurality of identity profiles to a mobile device, marking, in said storage means, said plurality of identity profiles as in use, receiving a message from said mobile device, said message identifying at least one of said plurality of identity profiles, and marking, in said storage means, said at least one identity profile identified in said message as not being in use.
As will be appreciated by one skilled in the art, aspects of the present invention may be embodied as a device, a method or a computer program product. Accordingly, aspects of the present invention may take the form of an entirely hardware embodiment, an entirely software embodiment (including firmware, resident software, micro-code, etc.) or an embodiment combining software and hardware aspects that may all generally be referred to herein as a “circuit”, “module” or “system.” Functions described in this disclosure may be implemented as an algorithm executed by a processor/microprocessor of a computer. Furthermore, aspects of the present invention may take the form of a computer program product embodied in one or more computer readable medium(s) having computer readable program code embodied, e.g., stored, thereon.
Any combination of one or more computer readable medium(s) may be utilized. The computer readable medium may be a computer readable signal medium or a computer readable storage medium. A computer readable storage medium may be, for example, but not limited to, an electronic, magnetic, optical, electromagnetic, infrared, or semiconductor system, apparatus, or device, or any suitable combination of the foregoing. More specific examples of a computer readable storage medium may include, but are not limited to, the following: an electrical connection having one or more wires, a portable computer diskette, a hard disk, a random access memory (RAM), a read-only memory (ROM), an erasable programmable read-only memory (EPROM or Flash memory), an optical fiber, a portable compact disc read-only memory (CD-ROM), an optical storage device, a magnetic storage device, or any suitable combination of the foregoing. In the context of the present invention, a computer readable storage medium may be any tangible medium that can contain, or store, a program for use by or in connection with an instruction execution system, apparatus, or device.
A computer readable signal medium may include a propagated data signal with computer readable program code embodied therein, for example, in baseband or as part of a carrier wave. Such a propagated signal may take any of a variety of forms, including, but not limited to, electro-magnetic, optical, or any suitable combination thereof. A computer readable signal medium may be any computer readable medium that is not a computer readable storage medium and that can communicate, propagate, or transport a program for use by or in connection with an instruction execution system, apparatus, or device.
Program code embodied on a computer readable medium may be transmitted using any appropriate medium, including but not limited to wireless, wireline, optical fiber, cable, RF, etc., or any suitable combination of the foregoing. Computer program code for carrying out operations for aspects of the present invention may be written in any combination of one or more programming languages, including an object oriented programming language such as Java™, Smalltalk, C++ or the like and conventional procedural programming languages, such as the “C” programming language or similar programming languages. The program code may execute entirely on the user's computer, partly on the user's computer, as a stand-alone software package, partly on the user's computer and partly on a remote computer, or entirely on the remote computer or server. In the latter scenario, the remote computer may be connected to the user's computer through any type of network, including a local area network (LAN) or a wide area network (WAN), or the connection may be made to an external computer (for example, through the Internet using an Internet Service Provider).
Aspects of the present invention are described below with reference to flowchart illustrations and/or block diagrams of methods, apparatus (systems), and computer program products according to embodiments of the present invention. It will be understood that each block of the flowchart illustrations and/or block diagrams, and combinations of blocks in the flowchart illustrations and/or block diagrams, can be implemented by computer program instructions. These computer program instructions may be provided to a processor, in particular a microprocessor or a central processing unit (CPU), of a general purpose computer, special purpose computer, or other programmable data processing apparatus to produce a machine, such that the instructions, which execute via the processor of the computer, other programmable data processing apparatus, or other devices create means for implementing the functions/acts specified in the flowchart and/or block diagram block or blocks.
These computer program instructions may also be stored in a computer readable medium that can direct a computer, other programmable data processing apparatus, or other devices to function in a particular manner, such that the instructions stored in the computer readable medium produce an article of manufacture including instructions which implement the function/act specified in the flowchart and/or block diagram block or blocks.
The computer program instructions may also be loaded onto a computer, other programmable data processing apparatus, or other devices to cause a series of operational steps to be performed on the computer, other programmable apparatus or other devices to produce a computer implemented process such that the instructions which execute on the computer or other programmable apparatus provide processes for implementing the functions/acts specified in the flowchart and/or block diagram block or blocks.
The flowchart and block diagrams in the figures illustrate the architecture, functionality, and operation of possible implementations of devices, methods and computer program products according to various embodiments of the present invention. In this regard, each block in the flowchart or block diagrams may represent a module, segment, or portion of code, which comprises one or more executable instructions for implementing the specified logical function(s). It should also be noted that, in some alternative implementations, the functions noted in the blocks may occur out of the order noted in the figures. For example, two blocks shown in succession may, in fact, be executed substantially concurrently, or the blocks may sometimes be executed in the reverse order, depending upon the functionality involved. It will also be noted that each block of the block diagrams and/or flowchart illustrations, and combinations of blocks in the block diagrams and/or flowchart illustrations, can be implemented by special purpose hardware-based systems that perform the specified functions or acts, or combinations of special purpose hardware and computer instructions.
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:
Corresponding elements in the drawings are denoted by the same reference numeral.
The processor 15 is configured to retrieve a plurality of the collection of identity profiles from the storage means 17. Each of the plurality of identity profiles comprises an identifier of a user of a mobile communication network and/or a unique device identifier and each of the plurality of identity profiles is not marked, in the storage means 17, as in use.
The identifier of the user of the mobile communication network, if present, typically comprises an International Mobile Subscriber Identity (IMSI). The unique device identifier, if present, typically comprises an International Mobile Equipment Identity (IMEI). In its simplest form, the identity profile is an identifier, e.g. IMSI, but typically comprises multiple elements, e.g. multiple identifiers.
The processor 15 is further configured to use the transmitter 14 to transmit the plurality of identity profiles to the mobile device 1, and mark, in the storage means 17, the plurality of identity profiles as in use. The identity profiles are transmitted in encrypted form and are preferably stored in encrypted formed as well.
The processor 15 is also configured to use the receiver 13 to receive a message from the mobile device 1. The message identifies at least one of the plurality of identity profiles. The processor 15 is further configured to mark, in the storage means 17, the at least one identity profile identified in the message as not being in use.
The mobile device 1 comprises a receiver 3, a transmitter 4, a processor 5 and storage means 7. The processor 5 is configured to use the at receiver 3 to receive a plurality of identity profiles from the profile server system 11 and store the plurality of identity profiles in the storage means 7. The processor 5 is further configured to select a first identity profile from the plurality of identity profiles and use the transmitter 4 to transmit authentication information to a base station 21 of a mobile communication network in order to use the mobile communication network. The authentication information comprises an identifier from the first identity profile. In LTE, the authentication information is transmitted in the LTE Attach procedure, for example.
The processor 5 is further configured to detect an identity change event, select a second identity profile from the plurality of identity profiles upon detecting the identity change event, and use the transmitter 4 to transmit further authentication information to the base station 21 or a base station 22 of the mobile communication network or to a base station 23 of a further mobile communication network. The further authentication information comprises an identifier from the second identity profile.
The identity profiles from the collection are circulated among all mobile devices that use the identity protection service offered by the profile server system 11. Typically, when the mobile device 1 selects a new identity profile, it switches off its modem, changes the main profile to the new identity profile and switches on its modem again. After modem initialization, it activates to the new identity profile.
In the example of
In the embodiment of
In the embodiment of
In the embodiment of
In the embodiment of
In the embodiment of
In the embodiment of
An example of a profile response format is shown below:
[{
“countrycode”:“44”,
“countryiso”:“GB”,
“countryname”:“United Kingdom”,
“errorcode”:“0”,
“errortext”:“OK”,
“imsi”:“234158341040126”,
“kc”:“ ”,
“localformat”:“07788 450450”,
“mcc”:“234”,
“mnc”:“15”,
“msc”:“44778”,
“msisdn”:“447788450450”,
“operatorname”:“Vodaf one”,
“originalmcc”:“234”,
“originalmnc”:“15”,
“originaloperatorname”:“Vodafone”,
“plmn”:“23415”,
“ported”:“false”,
“reachable”:“true”,
“validnumber”:“true”
}]
A description of the data fields contained in this example response format is given below:
Examples of client-based commands that the mobile device 1 may be able to transmit to profile server system 11 are IMSI allocation request, IMSI identity delete, IMSI check and IMSI network registration failure notification. The “IMSI allocation request” notifies the profile server system 11 that the mobile device 1 needs more identity profiles (e.g. IMSI/IMEI pairs), the “IMSI identity delete” message releases used identity profiles back to the pool/collection on the profile server system 11, “IMSI check” asks the profile server system 11 if it is really okay to use this identity profile now, and “IMSI network registration failure notification” tells the profile server system 11 that there was a problem. Examples of server-based commands that the profile server system 11 may be able to transmit to server mobile device 1 are IMSI allocation result, IMSI revoke and IMSI client check. These commands may be communicated using Tor onion service transport in JSON format, for example. The JSON messages may be encrypted and signed with private PKI keys. If a JSON message is signed with the correct key, an application on the mobile device 1 may validate the authenticity of the signature with its own signing key stored in a non-volatile secure part of the storage means 7. When key validity is confirmed, the mobile device 1 decrypts the JSON message.
The identity profiles in the collection/pool stored in the storage means 17 are normally pre-provisioned, i.e. no dynamic activation or provisioning needs to be performed by the mobile device 1. Typically, each profile in the collection/pool has a shared balance and no individual balances are tracked. As a result, the data subscription would be flat rate from the customer perspective.
In the embodiment shown in
The processor 5 may be a general-purpose processor, e.g. an ARM or Qualcomm processor, or an application-specific processor. The processor 5 may run Google Android or Apple iOS as operating system or any other operating system or even multiple operating systems. The latter may be useful to satisfy additional security requirements regarding implementation of cryptographic and data protection functions. The storage means 7 may comprise one or more memory units. The storage means 7 may comprise solid state memory, for example. The mobile device 1 may comprise other components typical for a mobile device, e.g. a display and a battery. The mobile device 1 may comprise other software components and/or hardware components that are used to offer identity protection. The mobile device 1 may be a mobile phone or tablet, for example. The invention may be implemented using a computer program running on one or more processors.
In the embodiment shown in
The receiver 13 and the transmitter 14 may use one or more communication technologies and protocols such as the Internet protocol to communicate with mobile device 1, for example. The profile server system 1 may be connected to the Internet, for example. The receiver 13 and the transmitter 14 may be combined in a transceiver. Profile server system 11 may comprise other components typical for a server system, e.g. a power supply. In the embodiment of
In the example of
In the examples of
A first embodiment of the computer-implemented methods of selecting, and enabling selection of, an identity profile is shown in
A step 121 comprises the profile server system retrieving a plurality of the collection of identity profiles from a storage means of the profile server system. Each of the plurality of identity profiles comprises an identifier of a user of a mobile communication network and/or a unique device identifier and each of the plurality of identity profiles is not marked, in the storage means, as in use. A step 123 comprises the profile server system transmitting the plurality of identity profiles to the mobile device. A step 125 comprises the profile server system marking, in the storage means, the plurality of identity profiles as in use.
A step 101 comprises the mobile device receiving the plurality of identity profiles from the profile server system. A step 103 comprises the mobile device storing the plurality of identity profiles in a storage means of the mobile device. A step 105 comprises the mobile device selecting a first identity profile from the plurality of identity profiles. A step 107 comprises the mobile device transmitting authentication information to a mobile communication network in order to use the mobile communication network. The authentication information comprises an identifier from the first identity profile.
A step 109 comprises the mobile device detecting an identity change event. A step 111 comprises the mobile device selecting a second identity profile from the plurality of identity profiles upon detecting the identity change event. A step 113 comprises the mobile device transmitting further authentication information to the mobile communication network or to a further mobile communication network. The further authentication information comprising an identifier from the second identity profile. Steps 111 and 113 are similar to steps 105 and 107, but a different identity profile is selected and different authentication information is therefore transmitted.
A step 141 is also performed upon detecting the identity change event. In the embodiment of
Step 141 comprises the mobile device transmitting a message to the profile server system. The message identifies the first identity profile and indicates that the mobile device has finished using the first identity profile. A step 127 comprises the profile server system receiving the message from the mobile device. A step 129 comprises the profile server system marking, in the storage means, the identity profile identified in the message as not being in use.
A second embodiment of the computer-implemented methods of selecting, and enabling selection of, an identity profile is shown in
Step 150 comprises a mobile device transmitting a message to the profile server system. The message comprises a request for identity profiles. If the mobile device has already used identity profiles, the message may also identify these identity profiles and indicate that the mobile device has finished using them. Step 160 comprises the server system receiving the request from the mobile device. Since step 160 is a combination of steps 120 and 127 of
In the embodiment of
In the embodiment of
The predetermined threshold is also referred to a cooldown time and this cooldown time may be 24 hours, for example. The cooldown time is used to avoid triggering of a fraud management system. The last-used time may be indicated in the message received in step 160 or the profile server system may use the time of receipt of the message in step 160 as the last-used time.
In an alternative embodiment, step 163 comprises associating a cooldown timer instead of a last-used time with the identity profiles identified in the message received in step 160. Step 125 is then performed upon expiry of the cooldown timer and not earlier. After the cooldown timer has expired, the identified identity profiles may be re-used.
In step 201, the mobile device 1 transmits a request for identity profiles to profile server system 11, see also steps 150 and 160 of
In step 203, the profile server system 11 transmits the four retrieved identity profiles to the mobile device 1, see also steps 123 and 101 of
At moment 53, the mobile device 1 selects the identity profile with the identifier ID-A1 from the stored identity profiles, as shown in field 65. In step 205, the mobile device 1 transmits authentication information to the base station 21 of the mobile communication network in order to use the mobile communication network, see also step 107 of
At moment 54, upon detecting a first identity change event, the mobile device 1 selects a second identity profile with the identifier ID-B1 from the stored identity profiles and marks the used identity profile with the identifier ID-A1 as unusable in field 61. In step 211, the mobile device 1 transmits further authentication information to the base station 23 of the further mobile communication network, see also step 113 of
In the example of
Upon detecting a second identity change event, the mobile device 1 selects a third identity profile with the identifier ID-A2 from the stored identity profiles and marks the used identity profile with the identifier ID-B1 as unusable in field 61. In step 221, the mobile device 1 transmits further authentication information to the base station 21 of the mobile communication network, see also step 113 of
Steps 231 and 233 are performed upon determining that a quantity of usable identity profiles in the storage means is smaller than a predefined threshold. Steps 231 and 233 are similar to steps 201 and 203, except that the mobile device 1 further identifies the already used identity profiles with identifiers ID-A1 and ID-B1 and indicates that the mobile device 1 has finished using them. After step 231, at moment 55, the profile server system 11 marks the identified identity profiles (with identifiers ID-A1 and ID-B1) as not being in use (by clearing the flag in field 73) and associates them with a last-used time 75 (“03/05” in the example of
At moment 55, the profile server system 11 further retrieves two new identity profiles with identifiers ID-A3 and ID-B3 from the storage means of the profile server system and marks them as in use. The profile server system 11 makes sure that the retrieved identity profiles either have no last-used time associated with them or have a last-used time associated with them whose difference with the current time exceeds a predetermined threshold (i.e. cooldown time).
In step 233, the profile server system 11 transmits the two retrieved identity profiles to the mobile device 1, see also steps 123 and 101 of
Between steps 207 and 211, the mobile device 1 uses the mobile communication network and between steps 213 and 221, the mobile device 1 uses the further mobile communication network. In the example of
In the example of
In the telecommunications system 400 of
The lower branch of
For a GSM/GPRS network, a radio access network (RAN) system 420 comprises a plurality of nodes, including base stations (combination of a BSC and a BTS), not shown individually in
For a UMTS radio access network (UTRAN), the radio access network system 420 also comprises a Radio Network Controller (RNC) connected to a plurality of base stations (NodeBs), also not shown individually in
The upper branch of the telecommunications system in
The radio access network system 410 (E-UTRAN) of the EPS, comprises base stations (evolved NodeBs, eNodeBs or eNBs), not shown individually in
For GPRS, UMTS and LTE systems, the core network system is generally connected to a further packet network 402, e.g. the Internet.
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’.
As shown in
The memory elements 504 may include one or more physical memory devices such as, for example, local memory 508 and one or more bulk storage devices 510. 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 500 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 510 during execution.
Input/output (I/O) devices depicted as an input device 512 and an output device 514 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.
In an embodiment, the input and the output devices may be implemented as a combined input/output device (illustrated in
A network adapter 516 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 500, and a data transmitter for transmitting data from the data processing system 500 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 500.
As pictured in
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 502 described herein.
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.
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.
Donkers, Pim Franciscus Hubertus, Loginov, Andrii, Smirnov, Alexey
Patent | Priority | Assignee | Title |
11595865, | Apr 08 2021 | Cisco Technology, Inc. | Enforcing unique handover trigger thresholds for user equipment |
Patent | Priority | Assignee | Title |
10104710, | Jun 19 2017 | GLOBAL TEL*LINK CORPORATION | Dual mode transmission in a controlled environment |
8229394, | Nov 30 2006 | Sony Ericsson Mobile Communications AB | Methods, devices and computer program products for tracking usage of a network by a plurality of users of a mobile phone |
9332419, | Jan 31 2014 | Cellco Partnership | Community-based request fulfillment |
20090227274, | |||
20100311444, | |||
20120190354, | |||
20120214439, | |||
20180159869, | |||
20190289460, | |||
EP2461549, |
Executed on | Assignor | Assignee | Conveyance | Frame | Reel | Doc |
Dec 26 2019 | ARMA Instruments AG | (assignment on the face of the patent) | / |
Date | Maintenance Fee Events |
Dec 26 2019 | BIG: Entity status set to Undiscounted (note the period is included in the code). |
Jan 17 2020 | SMAL: Entity status set to Small. |
Jun 24 2024 | REM: Maintenance Fee Reminder Mailed. |
Sep 27 2024 | M2551: Payment of Maintenance Fee, 4th Yr, Small Entity. |
Sep 27 2024 | M2554: Surcharge for late Payment, Small Entity. |
Date | Maintenance Schedule |
Nov 03 2023 | 4 years fee payment window open |
May 03 2024 | 6 months grace period start (w surcharge) |
Nov 03 2024 | patent expiry (for year 4) |
Nov 03 2026 | 2 years to revive unintentionally abandoned end. (for year 4) |
Nov 03 2027 | 8 years fee payment window open |
May 03 2028 | 6 months grace period start (w surcharge) |
Nov 03 2028 | patent expiry (for year 8) |
Nov 03 2030 | 2 years to revive unintentionally abandoned end. (for year 8) |
Nov 03 2031 | 12 years fee payment window open |
May 03 2032 | 6 months grace period start (w surcharge) |
Nov 03 2032 | patent expiry (for year 12) |
Nov 03 2034 | 2 years to revive unintentionally abandoned end. (for year 12) |