WO2021056381A1 - Universal integrated circuit card (uicc) initialization for network service access - Google Patents
Universal integrated circuit card (uicc) initialization for network service access Download PDFInfo
- Publication number
- WO2021056381A1 WO2021056381A1 PCT/CN2019/108392 CN2019108392W WO2021056381A1 WO 2021056381 A1 WO2021056381 A1 WO 2021056381A1 CN 2019108392 W CN2019108392 W CN 2019108392W WO 2021056381 A1 WO2021056381 A1 WO 2021056381A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- integrated circuit
- circuit card
- universal integrated
- access
- wireless device
- Prior art date
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W8/00—Network data management
- H04W8/18—Processing of user or subscriber data, e.g. subscribed services, user preferences or user profiles; Transfer of user or subscriber data
- H04W8/183—Processing at user equipment or user record carrier
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04M—TELEPHONIC COMMUNICATION
- H04M1/00—Substation equipment, e.g. for use by subscribers
- H04M1/72—Mobile telephones; Cordless telephones, i.e. devices for establishing wireless links to base stations without route selection
- H04M1/724—User interfaces specially adapted for cordless or mobile telephones
- H04M1/72403—User interfaces specially adapted for cordless or mobile telephones with means for local support of applications that increase the functionality
Definitions
- the present disclosure generally relates to methods and systems for accessing network services on a wireless device. More specifically, the present disclosure relates to accessing shareable universal integrated circuit card (UICC) files.
- UICC universal integrated circuit card
- Some designs of mobile communications/wireless devices include a single universal integrated circuit card (UICC) , multiple universal integrated circuit cards, or multiple subscriber identity module (SIM) cards.
- the cards store user identity information for multiple subscriptions that enable users to access multiple separate mobile telephony networks.
- Some of the UICCs e.g., embedded UICCs (eUICCs)
- eUICCs embedded UICCs
- a UICC may be removable or implemented within memory of mobile communications devices.
- the information stored in a UICC may enable mobile communications devices to communicate with a variety of different types of mobile telephony networks.
- mobile telephony networks include third generation (3G) , fourth generation (4G) , long term evolution (LTE) , fifth generation (5G) , time division multiple access (TDMA) , code division multiple access (CDMA) , CDMA 2000, wideband CDMA (WCDMA) , global system for mobile communications (GSM) , single-carrier radio transmission technology (1xRTT) , and universal mobile telecommunications systems (UMTS) .
- Each subscription enabled by a UICC or SIM may utilize a particular radio access technology (RAT) to communicate with its respective network.
- RAT radio access technology
- FIGURE 1 shows a wireless device communicating with a wireless communications system.
- FIGURE 2 shows a block diagram of the wireless device in FIGURE 1, according to an aspect of the present disclosure.
- FIGURE 3 is a process flow diagram of a method for accessing a universal integrated circuit card file on a wireless device, according to aspects of the present disclosure.
- FIGURE 4A is a process flow diagram of a method for accessing universal integrated circuit card files on a wireless device, in accordance with aspects of the present disclosure.
- FIGURE 4B is a process flow diagram of another method for accessing universal integrated circuit card files on a wireless device, in accordance with aspects of the present disclosure.
- FIGURE 5 is a component block diagram of a wireless device suitable for implementing the method of accessing universal integrated circuit card files on the wireless device.
- FIGURE 6 is a block diagram showing an exemplary wireless communications system in which a configuration of the disclosure may be advantageously employed.
- FIGURE 7 is a process flow diagram of still another method for accessing universal integrated circuit card files on a wireless device, in accordance with aspects of the present disclosure.
- FIGURE 8 is a process flow diagram of yet another method for accessing universal integrated circuit card files on a wireless device, in accordance with aspects of the present disclosure.
- Appendix A is a document that describes aspects of the claimed subject matter. Appendix A forms part of this specification and is expressly incorporated herein by reference in its entirety.
- SIM subscriber identification module
- USIM universal subscriber identity module
- RUIM removable user identity module
- SIMs may store network specific information used to authenticate and identify subscribers on the network, the most important of which are the integrated circuit card identifier (ICCID) , international mobile subscriber identity (IMSI) , authentication key (Ki) , and local area identity (LAI) .
- the SIM may also store other carrier specific data, such as short message service center (SMSC) numbers, service provider names (SPNs) , service dialing numbers (SDNs) , and value added service (VAS) applications.
- SMSC short message service center
- SPNs service provider names
- SDNs service dialing numbers
- VAS value added service
- a USIM and a RUIM may be modules in UMTS and CDMA networks, respectively, which provide equivalent functions to a SIM in a GSM network.
- SIM, ” “USIM, ” and “RUIM” may be used interchangeably to refer to a general module that is not restricted to a particular standard or technology.
- SIM may also be used as a shorthand reference to a communications network associated with a particular SIM, because the information stored in a SIM enables the wireless device to establish a communications link with a particular network.
- the SIM and the communications network, as well as the services and subscriptions supported by that network, correlate to one another.
- UICC universal integrated circuit card
- SIM card SIM card
- UICC universal integrated circuit card
- Various UICCs may have storage capabilities ranging from two to three kilobytes to up to one gigabyte of information.
- wireless communications devices may be configured to support cellular network communications using a variety of technologies and formats depending on the service provider of choice.
- wireless communications devices may utilize a subscriber identification module (SIM) provided on a smart card such as a universal integrated circuit card (UICC) .
- SIM subscriber identification module
- UICC universal integrated circuit card
- a conventional UICC is generally implemented as a removable chip that is insertable into a wireless communications device, a UICC may alternatively be embedded in the wireless communications device (e.g., soldered and thus not removable) or in another chipset (e.g., a modem chipset) of the device, providing an embedded UICC (eUICC) .
- eUICC embedded UICC
- a file can be accessed (selected, read, updated, deleted, deactivated, activated, increased, searched, etc. ) concurrently by different applications.
- the different applications may include terminal applications through different logical channels or UICC-based applications such as remote file management and toolkit applications.
- the outcome of concurrent access is determined by a shareable/not-shareable bit in a file descriptor byte in a file control parameter (FCP) of the accessed file.
- FCP file control parameter
- a given file can be indicated as shareable in its file descriptor or application identifier.
- the wireless device receives a request from a first application to access a universal integrated circuit card file.
- the access request includes an application identifier selection request and a corresponding application identifier.
- the wireless device queues the access request.
- the wireless device also delays processing the access request in the queue when multiple access requests to the universal integrated circuit card file are in the queue.
- the wireless device opens a new logical channel to access the universal integrated circuit card file when there are no other requests in the queue to access the universal integrated circuit card file.
- FIGURE 1 shows a wireless device 110 that includes the described universal integrated circuit card configured to operate according to the method described herein and in Appendix A.
- the wireless device 110 communicates with a wireless communications system 120.
- the wireless device 110 includes a multi-band (e.g., dual-band) concurrent millimeter wave (mmW) transceiver.
- the wireless communications system 120 may be a 5G system, a long term evolution (LTE) system, a code division multiple access (CDMA) system, a global system for mobile communications (GSM) system, a wireless local area network (WLAN) system, millimeter wave (mmW) technology, or some other wireless system.
- LTE long term evolution
- CDMA code division multiple access
- GSM global system for mobile communications
- WLAN wireless local area network
- mmW millimeter wave
- a CDMA system may implement wideband CDMA (WCDMA) , time division synchronous CDMA (TD-SCDMA) , CDMA2000, or some other version of CDMA.
- WCDMA wideband CDMA
- TD-SCDMA time division synchronous CDMA
- CDMA2000 Code Division synchronous CDMA2000
- mmW millimeter wave
- FIGURE 1 shows the wireless communications system 120 including two base stations 130 and 132 and one system controller 140.
- a wireless system may include any number of base stations and any number of network entities.
- a wireless device 110 may be referred to as a mobile equipment (ME) , a user equipment (UE) , a mobile station, a terminal, an access terminal, a subscriber unit, a station, etc.
- the wireless device 110 may also be a cellular phone, a smartphone, a tablet, a wireless modem, a personal digital assistant (PDA) , a handheld device, a laptop computer, a Smartbook, a netbook, a cordless phone, a wireless local loop (WLL) station, a Bluetooth device, etc.
- the wireless device 110 may be capable of communicating with the wireless communications system 120.
- the wireless device 110 may also be capable of receiving signals from broadcast stations (e.g., a broadcast station 134) , signals from satellites (e.g., a satellite 150) in one or more global navigation satellite systems (GNSS) , etc.
- the wireless device 110 may support one or more radio technologies for wireless communications such as 5G, LTE, CDMA2000, WCDMA, TD-SCDMA, GSM, 802.11, etc.
- the wireless device 110 may support carrier aggregation, which is operation on multiple carriers. Carrier aggregation may also be referred to as multi-carrier operation. According to an aspect of the present disclosure, the wireless device 110 may be able to operate in low-band from 698 to 960 megahertz (MHz) , mid-band from 1475 to 2170 MHz, and/or high-band from 2300 to 2690 MHz, ultra-high band from 3400 to 3800 MHz, and long-term evolution (LTE) in LTE unlicensed bands (LTE-U/LAA) from 5150 MHz to 5950 MHz.
- LTE long-term evolution
- Low-band, mid-band, high-band, ultra-high band, and LTE-U refer to five groups of bands (or band groups) , with each band group including a number of frequency bands (or simply, “bands” ) .
- each band may cover up to 200 MHz and may include one or more carriers.
- each carrier may cover up to 40 MHz in LTE.
- LTE Release 11 supports 35 bands, which are referred to as LTE/UMTS bands and are listed in 3GPP TS 36.101.
- the wireless device 110 may be configured with up to five carriers in one or two bands in LTE Release 11.
- Some carrier aggregation implementations in the sub-six gigahertz (GHz) include multiple frequency bands in the millimeter wave frequency range, such as frequency bands located near 24 GHz, 26 GHz, 28 GHz, 37 GHz, 39 GHz, 48 GHz, and 56 to 71 GHz. .
- these bands may include 24.25-24.45 GHz, 24.75-25.25 GHz, 27.5-28.35 GHz, and 37-40 GHz.
- the carriers may be 50 MHz, 100 MHz, 200 MHz, or 400 MHz and the bands may be up to 2.4 GHz and may include one or more carriers.
- FIGURE 2 shows a block diagram of the wireless device 110 in FIGURE 1, according to an aspect of the present disclosure.
- the wireless device 110 may include a universal integrated circuit card (UICC) interface 202, which may receive an embedded UICC (eUICC) 204 that stores profiles associated with one or more subscriptions from network providers.
- UICC universal integrated circuit card
- eUICC embedded UICC
- a UICC used in various examples may include user account information, an international mobile subscriber identity (IMSI) , a set of SIM application toolkit (SAT) commands, and storage space for phone book contacts.
- the UICC may further store home identifiers (e.g., a system identification number (SID) /network identification number (NID) pair, a home preferred list of mobile networks (HPLMN) code, etc. ) to indicate the network operator providers for each subscription of the UICC.
- SID system identification number
- NID network identification number
- HPLMN home preferred list of mobile networks
- ICCID integrated circuit card identity
- SIM serial number may be printed on the UICC for identification.
- the UICC may be implemented within a portion of memory of the wireless device 110 (e.g., in a memory 214) , and thus need not be a separate or removable circuit, chip, or card.
- the wireless device 110 may include at least one controller, such as a processor 206, which may be coupled to a coder/decoder (CODEC) 208.
- the CODEC 208 may in turn be coupled to a speaker 210 and a microphone 212.
- the processor 206 may also be coupled to the memory 214.
- the memory 214 may be a non-transitory computer-readable storage medium that stores processor-executable instructions.
- the memory 214 may store an operating system (OS) , as well as user application software and executable instructions.
- OS operating system
- the memory 214 may also store locally cached profiles for subscriptions supported by the eUICC 204.
- the processor 206 and the memory 214 may each be coupled to at least one baseband processor or baseband modem processor 216.
- the eUICC 204 in the wireless device 110 may utilize one or more baseband-radio frequency (RF) resources.
- a baseband-RF resource may include the baseband modem processor 216, which may perform baseband/modem functions for communications with and controlling of a radio access technology (RAT) .
- the baseband-RF resource may include one or more amplifiers and radios, referred to generally as RF resources (e.g., RF resource 218) .
- the baseband-RF resources may share the baseband modem processor 216 (e.g., a single device that performs baseband/modem functions for all RATs on the wireless device 110) .
- each baseband-RF resource may include physically or logically separate baseband processors (e.g., BB1, BB2) .
- the RF resource 218 may be a transceiver that performs transmit/receive functions for the eUICC 204 on the wireless device 110.
- the RF resource 218 may include separate transmit and receive circuitry, or may include a transceiver that combines transmitter and receiver functions. In some examples, the RF resource 218 may include multiple receive circuits.
- the RF resource 218 may be coupled to a wireless antenna (e.g., a wireless antenna 220) .
- the RF resource 218 may also be coupled to the baseband modem processor 216.
- the processor 206, the memory 214, the baseband modem processor (s) 216, and the RF resource 218 may be included in the wireless device 110 as a system-on-chip 250.
- the eUICC 204 and its corresponding UICC interface 202 may be external to the system-on-chip 250.
- various input and output devices may be coupled to components on the system-on-chip 250, such as interfaces or controllers.
- Example user input components suitable for use in the wireless device 110 may include, but are not limited to, a keypad 224, a touchscreen display 226, and the microphone 212.
- the keypad 224, the touchscreen display 226, the microphone 212, or a combination thereof may perform the function of receiving a request to initiate an outgoing call or for receiving a person identification number.
- Interfaces may be provided between the various devices and modules to implement functions in the wireless device 110 to enable communications in the wireless device.
- the eUICC 204, the baseband processor BB1, BB2, the RF resource 218, and the wireless antenna 220 may constitute two or more radio access technologies (RATs) .
- the wireless device 110 may be a communications device that includes a UICC, baseband processor, and RF resource configured to support two different RATs, such as 5G or LTE and GSM. More RATs may be supported on the wireless device 110 by adding more RF resources, and antennae for connecting to additional mobile networks.
- the wireless device 110 may include, among other things, additional UICC or SIM cards, UICC or SIM interfaces, multiple RF resources associated with the additional UICC or SIM cards, and additional antennae for supporting subscriptions communications with additional mobile networks.
- the eUICC 204 may support multiple mobile network operator profiles, or subscription profiles. For example, a user may download multiple profiles onto the eUICC 204. Each profile may store static SIM information that is used to support a subscription with one or more mobile telephony networks. Thus, the eUICC 204 may play the role of multiple SIMs, because each SIM supports one profile.
- the wireless device 110 may be configured to locally cache one or more subscription profiles associated with or stored in the UICC.
- the profiles may be cached in the memory 214, part of which may be designated memory for the modem.
- FIGURE 3 is a process flow diagram of a method 300 for accessing universal integrated circuit card (UICC) files on a wireless device, according to aspects of the present disclosure.
- a first application running on the wireless device requests access to a universal integrated circuit card file via a new logical channel.
- the access request may include an application identifier selection request and a corresponding application identifier.
- the wireless device queues the access request with other pending access requests. For example, a new record including the application identifier selection request and the corresponding application identifier are included in the queue.
- the wireless device determines whether there are multiple requests in the queue to access the same universal integrated circuit card file. For example, the wireless device determines whether there is more than one application identifier selection request for the same application identifier in the queue. The wireless device delays the access request when multiple access requests to the universal integrated circuit card file are in the queue. In some instances, the process is paused or ended at block 324. At block 308, the wireless device opens a new logical channel to access the universal integrated circuit card file when there are no other requests in the queue to access the universal integrated circuit card file.
- the wireless device determines whether the universal integrated circuit card file is shareable. For example the wireless device determines whether the application identifier is shareable.
- the wireless device removes the access request from the queue when it is determined that the universal integrated circuit card file is shareable. However, when it is determined that the universal integrated circuit card file is not shareable, the process immediately continues to block 314, where the wireless device performs a transaction with a universal integrated circuit card via the new logical channel.
- the wireless device receives a request to close the new logical channel and to complete an interaction with the specific application identifier.
- the wireless device removes the access request that was already processed from the queue.
- the wireless device determines whether the queue is empty after the request to close the new logical channel and after the access request is removed from the queue.
- the wireless device processes another access request when the queue is not empty and the process then continues to block 308. However, when the queue is empty, the process ends at block 324.
- FIGURE 4A is a process flow diagram of a method 400A for accessing universal integrated circuit card files on a wireless device, in accordance with aspects of the present disclosure.
- the wireless device e.g., a baseband processor of the wireless device
- the wireless device queues the access request.
- the wireless device delays processing the access request in the queue when multiple access requests to the universal integrated circuit card file are in the queue.
- the wireless device opens a new logical channel to access the universal integrated circuit card file when there are no other requests in the queue to access the universal integrated circuit card file.
- FIGURE 4B is a process flow diagram of another method 400B for accessing universal integrated circuit card files on a wireless device, in accordance with aspects of the present disclosure.
- the wireless device e.g., a baseband processor of the wireless device
- the wireless device determines whether the universal integrated circuit card file is being accessed by an initial application via an initial logical channel.
- the wireless device determines whether the universal integrated circuit card file is shareable.
- the wireless device queues the access request based on the determination of whether the universal integrated circuit card file is being accessed and whether the universal integrated circuit card file is shareable.
- FIGURE 5 is a component block diagram of a wireless device 500 suitable for implementing the method of accessing a shareable universal integrated circuit card (UICC) file on the wireless device 500.
- UICC universal integrated circuit card
- Aspects of the present disclosure may be implemented in any of a variety of wireless devices, an example of which (e.g., wireless device 500) is illustrated in FIGURE 5.
- the wireless device 500 may be similar to the wireless device 110 and may implement the method 300 and the method 400.
- the wireless device 500 may include a processor 502 coupled to a touchscreen controller 504 and an internal memory 506.
- the processor 502 may be one or more multi-core integrated circuits designated for general or specific processing tasks.
- the internal memory 506 may be volatile or non-volatile memory, and may also be secure and/or encrypted memory, or unsecure and/or unencrypted memory, or any combination thereof.
- the touchscreen controller 504 and the processor 502 may also be coupled to a touchscreen panel 512, such as a resistive-sensing touchscreen, capacitive-sensing touchscreen, infrared sensing touchscreen, etc. Additionally, the display of the wireless device 500 need not have touch screen capability.
- the wireless device 500 may have one or more cellular network transceivers 508 coupled to the processor 502 and to one or more antennas 510 and configured for sending and receiving cellular communications.
- the one or more transceivers 508 and the one or more antennas 510 may be used with the above-mentioned circuitry to implement the various example methods described.
- the wireless device 500 may include one or more UICC or SIM cards 516 coupled to the one or more transceivers 508 and/or the processor 502 and may be configured as described above.
- the wireless device 500 may also include speakers 514 for providing audio outputs.
- the wireless device 500 may also include a housing 520, constructed of a plastic, metal, or a combination of materials, for containing all or some of the components discussed herein and in Appendix A.
- the wireless device 500 may include a power source 522 coupled to the processor 502, such as a disposable or rechargeable battery.
- the rechargeable battery may also be coupled to the peripheral device connection port to receive a charging current from a source external to the wireless device 500.
- the wireless device 500 may also include a physical button 524 for receiving user inputs.
- the wireless device 500 may also include a power button 526 for turning the wireless device 500 on and off.
- FIGURE 6 is a block diagram showing an exemplary wireless communications system in which a configuration of the disclosure may be advantageously employed.
- FIGURE 6 shows three remote units 620, 630, and 650 and two base stations 640.
- Remote units 620, 630, and 650 include IC devices 625A, 625B, and 625C that include the disclosed universal integrated circuit card and the corresponding mobile equipment. It will be recognized that other devices may also include the disclosed universal integrated circuit card, such as the base stations, switching devices, and network equipment.
- FIGURE 6 shows forward link signals 680 from the base station 640 to the remote units 620, 630, and 650 and reverse link signals 690 from the remote units 620, 630, and 650 to base station 640.
- remote unit 620 is shown as a mobile telephone
- remote unit 630 is shown as a portable computer
- remote unit 650 is shown as a fixed location remote unit in a wireless local loop system.
- a remote unit may be a mobile phone, a hand-held personal communications systems (PCS) unit, a portable data unit such as a personal digital assistant (PDA) , a GPS enabled device, a navigation device, a set top box, a music player, a video player, an entertainment unit, a fixed location data unit such as a meter reading equipment, or other communications device that stores or retrieves data or computer instructions, or combinations thereof.
- FIGURE 6 illustrates remote units according to the aspects of the disclosure, the disclosure is not limited to these exemplary illustrated units. Aspects of the disclosure may be suitably employed in many devices, which include the universal integrated circuit card.
- the methodologies may be implemented with modules (e.g., procedures, functions, and so on) that perform the functions described herein and in Appendix A.
- a machine-readable medium tangibly embodying instructions may be used in implementing the methodologies described herein and in Appendix A.
- software codes may be stored in a memory and executed by a processor unit.
- Memory may be implemented within the processor unit or external to the processor unit.
- the term “memory” refers to types of long term, short term, volatile, nonvolatile, or other memory and is not to be limited to a particular type of memory or number of memories, or type of media upon which memory is stored.
- the functions may be stored as one or more instructions or code on a computer-readable medium. Examples include computer-readable media encoded with a data structure and computer-readable media encoded with a computer program.
- Computer-readable media includes physical computer storage media. A storage medium may be an available medium that can be accessed by a computer.
- such computer-readable media can include RAM, ROM, EEPROM, CD-ROM or other optical disk storage, magnetic disk storage or other magnetic storage devices, or other medium that can be used to store desired program code in the form of instructions or data structures and that can be accessed by a computer; disk and disc, as used herein and in Appendix A, includes compact disc (CD) , laser disc, optical disc, digital versatile disc (DVD) , floppy disk and Blu-ray disc where disks usually reproduce data magnetically, while discs reproduce data optically with lasers. Combinations of the above should also be included within the scope of computer-readable media.
- instructions and/or data may be provided as signals on transmission media included in a communications apparatus.
- a communications apparatus may include a standard cell circuit having signals indicative of instructions and data. The instructions and data are configured to cause one or more processors to implement the functions outlined in the claims.
- DSP digital signal processor
- ASIC application specific integrated circuit
- FPGA field programmable gate array
- a general-purpose processor may be a microprocessor, but in the alternative, the processor may be any conventional processor, controller, microcontroller, or state machine.
- a processor may also be implemented as a combination of computing devices, e.g., a combination of a DSP and a microprocessor, multiple microprocessors, one or more microprocessors in conjunction with a DSP core, or any other such configuration.
- Some specifications define a universal integrated circuit card (UICC) shareable/not-shareable bit in a file descriptor byte in a file control parameter (FCP) of an accessed file.
- a file can be accessed (selected, read, updated, deleted, deactivated, activated, increased, searched, etc. ) concurrently by different applications.
- the different applications may include a terminal application through different logical channels or UICC-based applications such as remote file management and toolkit applications.
- the outcome of concurrent access is determined by a shareable/not-shareable bit in a file descriptor byte in a file control parameter of the accessed file. For example, in order to be accessed from several logical channels at the same time, a given file can be indicated as shareable in its file descriptor or application identifier.
- An application acquires exclusive access to a “not-shareable” file by successfully selecting it. Access by any other application, including an attempt to select the file, returns an error status (e.g., conditions of use not satisfied) .
- Application (App) number one (#1) opens a logical channel #1 and selects a “not-shareable” application identifier (AID) #1; the UICC responds with success.
- App #2 opens a logical channel #2 and selects AID #1; the UICC responds with success.
- App #1 selects file #1; the UICC responds with success.
- App #2 selects file #2; the UICC responds with success.
- App #1 sends READ BINARY to read content of file #1.
- UICC responds with file content of file #2.
- App #1 gets unexpected content of file #1 so it cannot work normally.
- the UICC cannot maintain independent access to a UICC file system in a different logical channel. Therefore, the unexpected file content is received by the application.
- App #1 opens logical channel #1 and selects the “not-shareable” AID #1; the UICC responds with success.
- App #2 opens the logical channel #2 and selects the AID #1; the UICC responds with the error status.
- pending AID selection request queue where each element is of type (e.g., AID, AID selection request) . For example, when an application is waiting its turn to access a requested AID, its AID selection request will be pushed to the “pending AID selection request queue. ”
- a client makes a request to select a specific AID in a new logical channel.
- the terminal or wireless device adds a new record (e.g., AID, AID selection request) to “pending AID selection request queue. ”
- a new record e.g., AID, AID selection request
- the terminal determines whether more than one AID selection request for a same AID is in a queue. If yes, other clients must be accessing the same AID; end the workflow or process; process the request in the queue later.
- step 4 Process the request from step 1 or step 11; open a logical channel and select AID as in a normal workflow.
- the terminal or wireless device checks a selected response to see whether the AID is shareable.
- the application starts a normal transaction or process with the UICC as in a normal call flow.
- the application finally sends a request to the wireless device (e.g., a processor of the wireless device) to close the logical channel in order to finish its interaction with the specific AID as in a normal call flow.
- the wireless device e.g., a processor of the wireless device
- the wireless device removes the AID selection request that was just processed.
- the wireless device checks if the queue is empty.
- the wireless device processes a first pending AID selection request in the queue.
- each element is of an application identifier (AID) type whether or not the AID is shareable. If an AID is present in the “AID information list” and the AID is not-shareable, it is indicated that this AID is being occupied by an application. Accordingly, other applications have to wait until the AID is released.
- AID application identifier
- pending AID selection request queue where each element is of an application identifier (AID) type whether or not the AID is shareable.
- AID application identifier
- the call flow according to this aspect is illustrated as follows.
- the blue block represent an original call flow, and the green block operates in accordance with the “AID information list, ” and the orange blocks operate in accordance with the “pending AID selection request queue” .
- the App request selects specific AID in a new logical channel.
- the wireless device checks if the AID is present in the “AID information list. ”
- the wireless device checks whether the AID is sharable.
- the wireless device adds -AID, not-shareable -to the “AID information list, ” to avoid concurrent AID access if shareable information is unknown.
- the wireless device opens a new logical channel and selects specific AID as in a normal call flow.
- the wireless device determines whether the AID is shareable from an AID select response; update the information to matching AID information.
- the application starts a normal transaction with UICC as in normal call flow.
- the application finally requests that the wireless device closes the logical channel to finish its interaction with the specific AID as in normal call flow.
- the wireless device checks whether the AID is present in “pending AID selection request queue” .
- the wireless device selects the first record with matching AID in the queue then process the AID reselection request in record
- the wireless device checks whether the AID is shareable as recorded in step 7.
- the wireless device removes a record of the AID from the “AID information list. ” Note -for shareable AID, the record is always be present.
- test results could vary on different timing sequences, which would be critical for both the application and the wireless device.
Landscapes
- Engineering & Computer Science (AREA)
- Databases & Information Systems (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Telephone Function (AREA)
Abstract
A method for accessing universal integrated circuit card files on a wireless device includes requesting, by a first application, access to a universal integrated circuit card file. The method also includes queuing the access request and delaying the access request when multiple access requests to the universal integrated circuit card file are in the queue. The method further includes opening a new logical channel to access the universal integrated circuit card file when there are no other requests in the queue to access the universal integrated circuit card file.
Description
The present disclosure generally relates to methods and systems for accessing network services on a wireless device. More specifically, the present disclosure relates to accessing shareable universal integrated circuit card (UICC) files.
Some designs of mobile communications/wireless devices (e.g., smart phones, tablet computers, and laptop computers) include a single universal integrated circuit card (UICC) , multiple universal integrated circuit cards, or multiple subscriber identity module (SIM) cards. The cards store user identity information for multiple subscriptions that enable users to access multiple separate mobile telephony networks. Some of the UICCs (e.g., embedded UICCs (eUICCs) ) are capable of supporting remote provisioning of network subscription information. A UICC may be removable or implemented within memory of mobile communications devices.
The information stored in a UICC may enable mobile communications devices to communicate with a variety of different types of mobile telephony networks. Examples of mobile telephony networks include third generation (3G) , fourth generation (4G) , long term evolution (LTE) , fifth generation (5G) , time division multiple access (TDMA) , code division multiple access (CDMA) , CDMA 2000, wideband CDMA (WCDMA) , global system for mobile communications (GSM) , single-carrier radio transmission technology (1xRTT) , and universal mobile telecommunications systems (UMTS) . Each subscription enabled by a UICC or SIM may utilize a particular radio access technology (RAT) to communicate with its respective network.
For a more complete understanding of the present disclosure, reference is now made to the following description taken in conjunction with the accompanying drawings.
FIGURE 1 shows a wireless device communicating with a wireless communications system.
FIGURE 2 shows a block diagram of the wireless device in FIGURE 1, according to an aspect of the present disclosure.
FIGURE 3 is a process flow diagram of a method for accessing a universal integrated circuit card file on a wireless device, according to aspects of the present disclosure.
FIGURE 4A is a process flow diagram of a method for accessing universal integrated circuit card files on a wireless device, in accordance with aspects of the present disclosure.
FIGURE 4B is a process flow diagram of another method for accessing universal integrated circuit card files on a wireless device, in accordance with aspects of the present disclosure.
FIGURE 5 is a component block diagram of a wireless device suitable for implementing the method of accessing universal integrated circuit card files on the wireless device.
FIGURE 6 is a block diagram showing an exemplary wireless communications system in which a configuration of the disclosure may be advantageously employed.
[Rectified under Rule 91, 19.12.2019]
FIGURE 7 is a process flow diagram of still another method for accessing universal integrated circuit card files on a wireless device, in accordance with aspects of the present disclosure.
FIGURE 7 is a process flow diagram of still another method for accessing universal integrated circuit card files on a wireless device, in accordance with aspects of the present disclosure.
[Rectified under Rule 91, 19.12.2019]
FIGURE 8 is a process flow diagram of yet another method for accessing universal integrated circuit card files on a wireless device, in accordance with aspects of the present disclosure.
FIGURE 8 is a process flow diagram of yet another method for accessing universal integrated circuit card files on a wireless device, in accordance with aspects of the present disclosure.
Appendix A is a document that describes aspects of the claimed subject matter. Appendix A forms part of this specification and is expressly incorporated herein by reference in its entirety.
The detailed description set forth below, in connection with the appended drawings, is intended as a description of various configurations and is not intended to represent the only configurations in which the concepts described herein may be practiced. The detailed description includes specific details for the purpose of providing a thorough understanding of the various concepts. However, it will be apparent to those skilled in the art that these concepts may be practiced without these specific details. In some instances, well-known structures and components are shown in block diagram form in order to avoid obscuring such concepts. As described herein, the use of the term “and/or” is intended to represent an “inclusive OR” , and the use of the term “or” is intended to represent an “exclusive OR” .
The terms “subscriber identification module, ” “SIM, ” “universal subscriber identity module, ” “USIM, ” “removable user identity module, ” and “RUIM” are used herein to mean a memory that may be an integrated circuit or embedded into a removable card, which stores an international mobile subscriber identity (IMSI) , related key, and/or other information used to identify and/or authenticate a wireless device on a network. In some networks (e.g., GSM networks) , SIMs may store network specific information used to authenticate and identify subscribers on the network, the most important of which are the integrated circuit card identifier (ICCID) , international mobile subscriber identity (IMSI) , authentication key (Ki) , and local area identity (LAI) . The SIM may also store other carrier specific data, such as short message service center (SMSC) numbers, service provider names (SPNs) , service dialing numbers (SDNs) , and value added service (VAS) applications. In various aspects, a USIM and a RUIM may be modules in UMTS and CDMA networks, respectively, which provide equivalent functions to a SIM in a GSM network. However, the terms “SIM, ” “USIM, ” and “RUIM” may be used interchangeably to refer to a general module that is not restricted to a particular standard or technology.
The term “SIM” may also be used as a shorthand reference to a communications network associated with a particular SIM, because the information stored in a SIM enables the wireless device to establish a communications link with a particular network. Thus, the SIM and the communications network, as well as the services and subscriptions supported by that network, correlate to one another.
The terms “universal integrated circuit card, ” “smart card, ” “SIM card, ” and “UICC” are used interchangeably to refer to a memory chip or integrated circuit used to provide a SIM, a USIM, and/or a RUIM, to a wireless device in order to store the described provisioning and/or other data. Various UICCs may have storage capabilities ranging from two to three kilobytes to up to one gigabyte of information.
Current wireless communications devices may be configured to support cellular network communications using a variety of technologies and formats depending on the service provider of choice. In order to store the necessary provisioning data that allows the mobile device to communicate with a wireless communications network, wireless communications devices may utilize a subscriber identification module (SIM) provided on a smart card such as a universal integrated circuit card (UICC) . While a conventional UICC is generally implemented as a removable chip that is insertable into a wireless communications device, a UICC may alternatively be embedded in the wireless communications device (e.g., soldered and thus not removable) or in another chipset (e.g., a modem chipset) of the device, providing an embedded UICC (eUICC) .
A file can be accessed (selected, read, updated, deleted, deactivated, activated, increased, searched, etc. ) concurrently by different applications. The different applications may include terminal applications through different logical channels or UICC-based applications such as remote file management and toolkit applications. The outcome of concurrent access is determined by a shareable/not-shareable bit in a file descriptor byte in a file control parameter (FCP) of the accessed file. For example, in order to be accessed from several logical channels at the same time, a given file can be indicated as shareable in its file descriptor or application identifier.
When a file is indicated as shareable, then applications may perform authorized operations on the file independently of whether or not the file is the current file of any other application. When the file is indicated as not shareable and is the current file of one application, then another application cannot perform any operation on the file regardless of authorization. When the file is indicated as not shareable, however, a user equipment or terminal does not get consistent/expected test results when the file is being accessed by multiple applications in parallel. Aspects of the present disclosure are directed to methods and systems for improving the consistency of expected results for the terminal.
For example, a method for accessing a universal integrated circuit card file on a wireless device is described. In one aspect, the wireless device (e.g., a baseband processor of the wireless device) receives a request from a first application to access a universal integrated circuit card file. The access request includes an application identifier selection request and a corresponding application identifier. The wireless device queues the access request. The wireless device also delays processing the access request in the queue when multiple access requests to the universal integrated circuit card file are in the queue. Further, the wireless device opens a new logical channel to access the universal integrated circuit card file when there are no other requests in the queue to access the universal integrated circuit card file.
FIGURE 1 shows a wireless device 110 that includes the described universal integrated circuit card configured to operate according to the method described herein and in Appendix A. The wireless device 110 communicates with a wireless communications system 120. The wireless device 110 includes a multi-band (e.g., dual-band) concurrent millimeter wave (mmW) transceiver. The wireless communications system 120 may be a 5G system, a long term evolution (LTE) system, a code division multiple access (CDMA) system, a global system for mobile communications (GSM) system, a wireless local area network (WLAN) system, millimeter wave (mmW) technology, or some other wireless system. A CDMA system may implement wideband CDMA (WCDMA) , time division synchronous CDMA (TD-SCDMA) , CDMA2000, or some other version of CDMA. In a millimeter wave (mmW) system, multiple antennas are used for beamforming (e.g., in the range of 30 GHz, 60 GHz, etc. ) . For simplicity, FIGURE 1 shows the wireless communications system 120 including two base stations 130 and 132 and one system controller 140. In general, a wireless system may include any number of base stations and any number of network entities.
A wireless device 110 may be referred to as a mobile equipment (ME) , a user equipment (UE) , a mobile station, a terminal, an access terminal, a subscriber unit, a station, etc. The wireless device 110 may also be a cellular phone, a smartphone, a tablet, a wireless modem, a personal digital assistant (PDA) , a handheld device, a laptop computer, a Smartbook, a netbook, a cordless phone, a wireless local loop (WLL) station, a Bluetooth device, etc. The wireless device 110 may be capable of communicating with the wireless communications system 120. The wireless device 110 may also be capable of receiving signals from broadcast stations (e.g., a broadcast station 134) , signals from satellites (e.g., a satellite 150) in one or more global navigation satellite systems (GNSS) , etc. The wireless device 110 may support one or more radio technologies for wireless communications such as 5G, LTE, CDMA2000, WCDMA, TD-SCDMA, GSM, 802.11, etc.
The wireless device 110 may support carrier aggregation, which is operation on multiple carriers. Carrier aggregation may also be referred to as multi-carrier operation. According to an aspect of the present disclosure, the wireless device 110 may be able to operate in low-band from 698 to 960 megahertz (MHz) , mid-band from 1475 to 2170 MHz, and/or high-band from 2300 to 2690 MHz, ultra-high band from 3400 to 3800 MHz, and long-term evolution (LTE) in LTE unlicensed bands (LTE-U/LAA) from 5150 MHz to 5950 MHz. Low-band, mid-band, high-band, ultra-high band, and LTE-U refer to five groups of bands (or band groups) , with each band group including a number of frequency bands (or simply, “bands” ) . For example, in some systems each band may cover up to 200 MHz and may include one or more carriers. For example, each carrier may cover up to 40 MHz in LTE. Of course, the range for each of the bands is merely exemplary and not limiting, and other frequency ranges may be used. LTE Release 11 supports 35 bands, which are referred to as LTE/UMTS bands and are listed in 3GPP TS 36.101. The wireless device 110 may be configured with up to five carriers in one or two bands in LTE Release 11.
Some carrier aggregation implementations in the sub-six gigahertz (GHz) include multiple frequency bands in the millimeter wave frequency range, such as frequency bands located near 24 GHz, 26 GHz, 28 GHz, 37 GHz, 39 GHz, 48 GHz, and 56 to 71 GHz. . For example, these bands may include 24.25-24.45 GHz, 24.75-25.25 GHz, 27.5-28.35 GHz, and 37-40 GHz. In these systems, the carriers may be 50 MHz, 100 MHz, 200 MHz, or 400 MHz and the bands may be up to 2.4 GHz and may include one or more carriers.
FIGURE 2 shows a block diagram of the wireless device 110 in FIGURE 1, according to an aspect of the present disclosure. The wireless device 110 may include a universal integrated circuit card (UICC) interface 202, which may receive an embedded UICC (eUICC) 204 that stores profiles associated with one or more subscriptions from network providers.
A UICC used in various examples may include user account information, an international mobile subscriber identity (IMSI) , a set of SIM application toolkit (SAT) commands, and storage space for phone book contacts. The UICC may further store home identifiers (e.g., a system identification number (SID) /network identification number (NID) pair, a home preferred list of mobile networks (HPLMN) code, etc. ) to indicate the network operator providers for each subscription of the UICC. An integrated circuit card identity (ICCID) SIM serial number may be printed on the UICC for identification. In some aspects, the UICC may be implemented within a portion of memory of the wireless device 110 (e.g., in a memory 214) , and thus need not be a separate or removable circuit, chip, or card.
The wireless device 110 may include at least one controller, such as a processor 206, which may be coupled to a coder/decoder (CODEC) 208. The CODEC 208 may in turn be coupled to a speaker 210 and a microphone 212. The processor 206 may also be coupled to the memory 214. The memory 214 may be a non-transitory computer-readable storage medium that stores processor-executable instructions. The memory 214 may store an operating system (OS) , as well as user application software and executable instructions. The memory 214 may also store locally cached profiles for subscriptions supported by the eUICC 204.
The processor 206 and the memory 214 may each be coupled to at least one baseband processor or baseband modem processor 216. The eUICC 204 in the wireless device 110 may utilize one or more baseband-radio frequency (RF) resources. A baseband-RF resource may include the baseband modem processor 216, which may perform baseband/modem functions for communications with and controlling of a radio access technology (RAT) . The baseband-RF resource may include one or more amplifiers and radios, referred to generally as RF resources (e.g., RF resource 218) . In some examples, the baseband-RF resources may share the baseband modem processor 216 (e.g., a single device that performs baseband/modem functions for all RATs on the wireless device 110) . In other examples, each baseband-RF resource may include physically or logically separate baseband processors (e.g., BB1, BB2) .
The RF resource 218 may be a transceiver that performs transmit/receive functions for the eUICC 204 on the wireless device 110. The RF resource 218 may include separate transmit and receive circuitry, or may include a transceiver that combines transmitter and receiver functions. In some examples, the RF resource 218 may include multiple receive circuits. The RF resource 218 may be coupled to a wireless antenna (e.g., a wireless antenna 220) . The RF resource 218 may also be coupled to the baseband modem processor 216.
In some examples, the processor 206, the memory 214, the baseband modem processor (s) 216, and the RF resource 218 may be included in the wireless device 110 as a system-on-chip 250. In some examples, the eUICC 204 and its corresponding UICC interface 202 may be external to the system-on-chip 250. Further, various input and output devices may be coupled to components on the system-on-chip 250, such as interfaces or controllers. Example user input components suitable for use in the wireless device 110 may include, but are not limited to, a keypad 224, a touchscreen display 226, and the microphone 212.
In some examples, the keypad 224, the touchscreen display 226, the microphone 212, or a combination thereof, may perform the function of receiving a request to initiate an outgoing call or for receiving a person identification number. Interfaces may be provided between the various devices and modules to implement functions in the wireless device 110 to enable communications in the wireless device.
Functioning together, the eUICC 204, the baseband processor BB1, BB2, the RF resource 218, and the wireless antenna 220 may constitute two or more radio access technologies (RATs) . For example, the wireless device 110 may be a communications device that includes a UICC, baseband processor, and RF resource configured to support two different RATs, such as 5G or LTE and GSM. More RATs may be supported on the wireless device 110 by adding more RF resources, and antennae for connecting to additional mobile networks.
In some examples (not shown) , the wireless device 110 may include, among other things, additional UICC or SIM cards, UICC or SIM interfaces, multiple RF resources associated with the additional UICC or SIM cards, and additional antennae for supporting subscriptions communications with additional mobile networks.
The eUICC 204 may support multiple mobile network operator profiles, or subscription profiles. For example, a user may download multiple profiles onto the eUICC 204. Each profile may store static SIM information that is used to support a subscription with one or more mobile telephony networks. Thus, the eUICC 204 may play the role of multiple SIMs, because each SIM supports one profile.
In various examples, the wireless device 110 may be configured to locally cache one or more subscription profiles associated with or stored in the UICC. The profiles may be cached in the memory 214, part of which may be designated memory for the modem.
FIGURE 3 is a process flow diagram of a method 300 for accessing universal integrated circuit card (UICC) files on a wireless device, according to aspects of the present disclosure. At block 302, a first application running on the wireless device requests access to a universal integrated circuit card file via a new logical channel. For example, the access request may include an application identifier selection request and a corresponding application identifier. At block 304, the wireless device queues the access request with other pending access requests. For example, a new record including the application identifier selection request and the corresponding application identifier are included in the queue.
At block 306, the wireless device determines whether there are multiple requests in the queue to access the same universal integrated circuit card file. For example, the wireless device determines whether there is more than one application identifier selection request for the same application identifier in the queue. The wireless device delays the access request when multiple access requests to the universal integrated circuit card file are in the queue. In some instances, the process is paused or ended at block 324. At block 308, the wireless device opens a new logical channel to access the universal integrated circuit card file when there are no other requests in the queue to access the universal integrated circuit card file.
At block 310, the wireless device determines whether the universal integrated circuit card file is shareable. For example the wireless device determines whether the application identifier is shareable. At block 312, the wireless device removes the access request from the queue when it is determined that the universal integrated circuit card file is shareable. However, when it is determined that the universal integrated circuit card file is not shareable, the process immediately continues to block 314, where the wireless device performs a transaction with a universal integrated circuit card via the new logical channel.
At block 316, the wireless device (e.g., a baseband processor of the wireless device) receives a request to close the new logical channel and to complete an interaction with the specific application identifier. At block 318, the wireless device removes the access request that was already processed from the queue. At block 320, the wireless device determines whether the queue is empty after the request to close the new logical channel and after the access request is removed from the queue.
At block 322, the wireless device processes another access request when the queue is not empty and the process then continues to block 308. However, when the queue is empty, the process ends at block 324.
FIGURE 4A is a process flow diagram of a method 400A for accessing universal integrated circuit card files on a wireless device, in accordance with aspects of the present disclosure. At block 402, the wireless device (e.g., a baseband processor of the wireless device) receives a request from a first application to access a universal integrated circuit card file. At block 404, the wireless device queues the access request. At block 406, the wireless device delays processing the access request in the queue when multiple access requests to the universal integrated circuit card file are in the queue. At block 408, the wireless device opens a new logical channel to access the universal integrated circuit card file when there are no other requests in the queue to access the universal integrated circuit card file.
FIGURE 4B is a process flow diagram of another method 400B for accessing universal integrated circuit card files on a wireless device, in accordance with aspects of the present disclosure. At block 410, the wireless device (e.g., a baseband processor of the wireless device) receives a request from a first application to access a universal integrated circuit card file. At block 412, the wireless device determines whether the universal integrated circuit card file is being accessed by an initial application via an initial logical channel. At block 414, the wireless device determines whether the universal integrated circuit card file is shareable. At block 416, the wireless device queues the access request based on the determination of whether the universal integrated circuit card file is being accessed and whether the universal integrated circuit card file is shareable.
FIGURE 5 is a component block diagram of a wireless device 500 suitable for implementing the method of accessing a shareable universal integrated circuit card (UICC) file on the wireless device 500. Aspects of the present disclosure may be implemented in any of a variety of wireless devices, an example of which (e.g., wireless device 500) is illustrated in FIGURE 5. The wireless device 500 may be similar to the wireless device 110 and may implement the method 300 and the method 400.
The wireless device 500 may include a processor 502 coupled to a touchscreen controller 504 and an internal memory 506. The processor 502 may be one or more multi-core integrated circuits designated for general or specific processing tasks. The internal memory 506 may be volatile or non-volatile memory, and may also be secure and/or encrypted memory, or unsecure and/or unencrypted memory, or any combination thereof. The touchscreen controller 504 and the processor 502 may also be coupled to a touchscreen panel 512, such as a resistive-sensing touchscreen, capacitive-sensing touchscreen, infrared sensing touchscreen, etc. Additionally, the display of the wireless device 500 need not have touch screen capability.
The wireless device 500 may have one or more cellular network transceivers 508 coupled to the processor 502 and to one or more antennas 510 and configured for sending and receiving cellular communications. The one or more transceivers 508 and the one or more antennas 510 may be used with the above-mentioned circuitry to implement the various example methods described. The wireless device 500 may include one or more UICC or SIM cards 516 coupled to the one or more transceivers 508 and/or the processor 502 and may be configured as described above.
The wireless device 500 may also include speakers 514 for providing audio outputs. The wireless device 500 may also include a housing 520, constructed of a plastic, metal, or a combination of materials, for containing all or some of the components discussed herein and in Appendix A. The wireless device 500 may include a power source 522 coupled to the processor 502, such as a disposable or rechargeable battery. The rechargeable battery may also be coupled to the peripheral device connection port to receive a charging current from a source external to the wireless device 500. The wireless device 500 may also include a physical button 524 for receiving user inputs. The wireless device 500 may also include a power button 526 for turning the wireless device 500 on and off.
FIGURE 6 is a block diagram showing an exemplary wireless communications system in which a configuration of the disclosure may be advantageously employed. For purposes of illustration, FIGURE 6 shows three remote units 620, 630, and 650 and two base stations 640. It will be recognized that wireless communications systems may have many more remote units and base stations. Remote units 620, 630, and 650 include IC devices 625A, 625B, and 625C that include the disclosed universal integrated circuit card and the corresponding mobile equipment. It will be recognized that other devices may also include the disclosed universal integrated circuit card, such as the base stations, switching devices, and network equipment. FIGURE 6 shows forward link signals 680 from the base station 640 to the remote units 620, 630, and 650 and reverse link signals 690 from the remote units 620, 630, and 650 to base station 640.
In FIGURE 6, remote unit 620 is shown as a mobile telephone, remote unit 630 is shown as a portable computer, and remote unit 650 is shown as a fixed location remote unit in a wireless local loop system. For example, a remote unit may be a mobile phone, a hand-held personal communications systems (PCS) unit, a portable data unit such as a personal digital assistant (PDA) , a GPS enabled device, a navigation device, a set top box, a music player, a video player, an entertainment unit, a fixed location data unit such as a meter reading equipment, or other communications device that stores or retrieves data or computer instructions, or combinations thereof. Although FIGURE 6 illustrates remote units according to the aspects of the disclosure, the disclosure is not limited to these exemplary illustrated units. Aspects of the disclosure may be suitably employed in many devices, which include the universal integrated circuit card.
For a firmware and/or software implementation, the methodologies may be implemented with modules (e.g., procedures, functions, and so on) that perform the functions described herein and in Appendix A. A machine-readable medium tangibly embodying instructions may be used in implementing the methodologies described herein and in Appendix A. For example, software codes may be stored in a memory and executed by a processor unit. Memory may be implemented within the processor unit or external to the processor unit. As used herein and in Appendix A, the term “memory” refers to types of long term, short term, volatile, nonvolatile, or other memory and is not to be limited to a particular type of memory or number of memories, or type of media upon which memory is stored.
If implemented in firmware and/or software, the functions may be stored as one or more instructions or code on a computer-readable medium. Examples include computer-readable media encoded with a data structure and computer-readable media encoded with a computer program. Computer-readable media includes physical computer storage media. A storage medium may be an available medium that can be accessed by a computer. By way of example, and not limitation, such computer-readable media can include RAM, ROM, EEPROM, CD-ROM or other optical disk storage, magnetic disk storage or other magnetic storage devices, or other medium that can be used to store desired program code in the form of instructions or data structures and that can be accessed by a computer; disk and disc, as used herein and in Appendix A, includes compact disc (CD) , laser disc, optical disc, digital versatile disc (DVD) , floppy disk and Blu-ray disc where disks usually reproduce data magnetically, while discs reproduce data optically with lasers. Combinations of the above should also be included within the scope of computer-readable media.
In addition to storage on computer-readable medium, instructions and/or data may be provided as signals on transmission media included in a communications apparatus. For example, a communications apparatus may include a standard cell circuit having signals indicative of instructions and data. The instructions and data are configured to cause one or more processors to implement the functions outlined in the claims.
The various illustrative logical blocks, modules, and circuits described in connection with the disclosure herein and in Appendix A may be implemented or performed with a general-purpose processor, a digital signal processor (DSP) , an application specific integrated circuit (ASIC) , a field programmable gate array (FPGA) or other programmable logic device, discrete gate or transistor logic, discrete hardware components, or any combination thereof designed to perform the functions described herein and in Appendix A. A general-purpose processor may be a microprocessor, but in the alternative, the processor may be any conventional processor, controller, microcontroller, or state machine. A processor may also be implemented as a combination of computing devices, e.g., a combination of a DSP and a microprocessor, multiple microprocessors, one or more microprocessors in conjunction with a DSP core, or any other such configuration.
Although the present disclosure and its advantages have been described in detail, it should be understood that various changes, substitutions, and alterations can be made herein and in Appendix A without departing from the technology of the disclosure as defined by the appended claims. For example, relational terms, such as “above” and “below” are used with respect to a substrate or electronic device. Of course, if the substrate or electronic device is inverted, above becomes below, and vice versa. Additionally, if oriented sideways, above and below may refer to sides of a substrate or electronic device. Moreover, the scope of the present application is not intended to be limited to the particular configurations of the process, machine, manufacture, and composition of matter, means, methods, and steps described in the specification. As one of ordinary skill in the art will readily appreciate from the disclosure, processes, machines, manufacture, compositions of matter, means, methods, or steps, presently existing or later to be developed that perform substantially the same function or achieve substantially the same result as the corresponding configurations described herein and in Appendix A may be utilized according to the present disclosure. Accordingly, the appended claims are intended to include within their scope such processes, machines, manufacture, compositions of matter, means, methods, or steps.
APPENDIX A
ACCESS TO SHAREABLE UNIVERSAL INTEGRATED CIRCUIT CARD (UICC) FILES
Aspects
Some specifications define a universal integrated circuit card (UICC) shareable/not-shareable bit in a file descriptor byte in a file control parameter (FCP) of an accessed file. A file can be accessed (selected, read, updated, deleted, deactivated, activated, increased, searched, etc. ) concurrently by different applications. The different applications may include a terminal application through different logical channels or UICC-based applications such as remote file management and toolkit applications. The outcome of concurrent access is determined by a shareable/not-shareable bit in a file descriptor byte in a file control parameter of the accessed file. For example, in order to be accessed from several logical channels at the same time, a given file can be indicated as shareable in its file descriptor or application identifier.
When a file is indicated as shareable, then applications may perform authorized operations on the file independently of whether or not the file is the current file of any other application. When the file is indicated as not-shareable and is the current file of one application, then another application cannot perform any operation on the file regardless of authorization. When the file is indicated as not-shareable, however, a user equipment or terminal does not get consistent/expected test result when the file is being accessed by multiple applications in parallel. Aspects of the present disclosure are directed to methods and systems for improving the consistency of expected results for the terminal.
Key points about not-shareable (or un-shareable) files in some specifications are:
1. If a file is indicated as not-shareable and is the current file of one application, then another application cannot perform any operation on the file regardless of authorization.
2. An application acquires exclusive access to a “not-shareable” file by successfully selecting it. Access by any other application, including an attempt to select the file, returns an error status (e.g., conditions of use not satisfied) .
Thus, when one application is in a terminal accessing a “not-shareable” file in the UICC, another application gets the error status. In a smartphone, there could be multiple applications trying to access the same UICC application without coordination. Multiple implementations or projects with different UICCs are subject to a resulting conflict issue. Theoretically, the conflict could happen on any chipset if there are “not-shareable” files in the UICC.
Issue scenario #1:
1. Application (App) number one (#1) opens a logical channel # 1 and selects a “not-shareable” application identifier (AID) #1; the UICC responds with success.
2. App # 2 opens a logical channel # 2 and selects AID # 1; the UICC responds with success.
3. App # 1 selects file # 1; the UICC responds with success.
4. App # 2 selects file # 2; the UICC responds with success.
5. App # 1 sends READ BINARY to read content of file # 1.
6. UICC responds with file content of file # 2.
7. App # 1 gets unexpected content of file # 1 so it cannot work normally.
In scenario # 1, the UICC did not respond with an error status per specification.
However, because the AID # 1 is not-shareable, the UICC cannot maintain independent access to a UICC file system in a different logical channel. Therefore, the unexpected file content is received by the application.
Issue scenario #2:
1. App # 1 opens logical channel # 1 and selects the “not-shareable” AID # 1; the UICC responds with success.
2. App # 2 opens the logical channel # 2 and selects the AID # 1; the UICC responds with the error status.
3. App # 2 cannot further access AID # 1, so it cannot work normally.
In scenario # 2, the UICC responds with the error status. Accordingly, the application cannot access the AID # 1 and therefore cannot work normally.
One solution is to introduce “pending AID selection request queue, ” where each element is of type (e.g., AID, AID selection request) . For example, when an application is waiting its turn to access a requested AID, its AID selection request will be pushed to the “pending AID selection request queue. ”
[Rectified under Rule 91, 19.12.2019]
Some aspects of the present disclosure may be implemented as follows:
1. A client makes a request to select a specific AID in a new logical channel.
2. The terminal or wireless device adds a new record (e.g., AID, AID selection request) to “pending AID selection request queue. ”
3. The terminal determines whether more than one AID selection request for a same AID is in a queue. If yes, other clients must be accessing the same AID; end the workflow or process; process the request in the queue later.
4. Process the request from step 1 or step 11; open a logical channel and select AID as in a normal workflow.
5. The terminal or wireless device checks a selected response to see whether the AID is shareable.
6. If AID is sharable, remove the request immediately from the queue to unblock other client’s request if any.
7. The application starts a normal transaction or process with the UICC as in a normal call flow.
8. The application finally sends a request to the wireless device (e.g., a processor of the wireless device) to close the logical channel in order to finish its interaction with the specific AID as in a normal call flow.
9. The wireless device removes the AID selection request that was just processed.
10. The wireless device checks if the queue is empty.
11. If the queue is not empty, the wireless device processes a first pending AID selection request in the queue.
12. End of AID selection flow.
In order to save time to access a shareable application, an enhanced solution is as described as follows:
Introduce an “AID information list, ” where each element is of an application identifier (AID) type whether or not the AID is shareable. If an AID is present in the “AID information list” and the AID is not-shareable, it is indicated that this AID is being occupied by an application. Accordingly, other applications have to wait until the AID is released.
Introduce “pending AID selection request queue, ” where each element is of an application identifier (AID) type whether or not the AID is shareable. When an application is waiting its turn to access requested AID, its AID selection request is pushed to “pending AID selection request queue” .
The call flow according to this aspect is illustrated as follows. The blue block represent an original call flow, and the green block operates in accordance with the “AID information list, ” and the orange blocks operate in accordance with the “pending AID selection request queue” .
[Rectified under Rule 91, 19.12.2019]
1. The App request selects specific AID in a new logical channel.
2. The wireless device checks if the AID is present in the “AID information list. ”
3. When the AID is present in the “AID information list, ” the wireless device checks whether the AID is sharable.
4. Push the AID and corresponding AID selection request to the “pending AID selection request queue” .
5. When the AID is absent in the “AID information list, ” the wireless device adds -AID, not-shareable -to the “AID information list, ” to avoid concurrent AID access if shareable information is unknown.
6. The wireless device opens a new logical channel and selects specific AID as in a normal call flow.
7. The wireless device determines whether the AID is shareable from an AID select response; update the information to matching AID information.
8. The application starts a normal transaction with UICC as in normal call flow.
9. The application finally requests that the wireless device closes the logical channel to finish its interaction with the specific AID as in normal call flow.
10. The wireless device checks whether the AID is present in “pending AID selection request queue” .
11. When the AID is present in the “pending AID selection request queue, ” the wireless device selects the first record with matching AID in the queue then process the AID reselection request in record
12. The wireless device checks whether the AID is shareable as recorded in step 7.
13. If there is no pending AID selection request and it is not shareable, the wireless device removes a record of the AID from the “AID information list. ” Note -for shareable AID, the record is always be present.
14. End of AID selection flow.
Advantages:
Most applications only take a short time to access AID. Accordingly, in a conflict scenario, other applications would not wait for a long time. Without the solution described, test results could vary on different timing sequences, which would be critical for both the application and the wireless device.
Claims (15)
- A method for accessing universal integrated circuit card files on a wireless device, comprising:requesting, by a first application, access to a universal integrated circuit card file;queuing the access request;delaying the access request when multiple access requests to the universal integrated circuit card file are in the queue; andopening a new logical channel to access the universal integrated circuit card file when there are no other requests in the queue to access the universal integrated circuit card file.
- The method of claim 1, in which the access request comprises an application identifier selection request and a corresponding application identifier.
- The method of claim 1, further comprising:removing the access request from the queue when it is determined that the universal integrated circuit card file is shareable; andperforming a transaction with a universal integrated circuit card via the new logical channel.
- The method of claim 1, further comprising:performing a transaction with a universal integrated circuit card via the new logical channel when it is determined that a universal integrated circuit card file is not shareable.
- The method of claim 1, further comprising determining whether the queue is empty after a request to close the new logical channel and after the access request is removed from the queue.
- The method of claim 5, further comprising processing another access request when the queue is not empty.
- A method for accessing a shareable universal integrated circuit card (UICC) file on a wireless device, comprising:requesting, by a first application, access to a universal integrated circuit card file;determining whether the universal integrated circuit card file is being accessed by an initial application via an initial logical channel;determining whether the universal integrated circuit card file is shareable; andqueuing the access request based on the determination of whether the universal integrated circuit card file is being accessed and whether the universal integrated circuit card file is shareable.
- The method of claim 7, in which requesting access to the universal integrated circuit card file comprises requesting to select a first application identifier to access the universal integrated circuit card file.
- The method of claim 7, in which determining whether the universal integrated circuit card file is already being accessed by an initial application comprises determining whether a first application identifier to access the universal integrated circuit card file is present in an application identifier list.
- The method of claim 9, further comprising:adding the first application identifier to the application identifier list when it is determined that the first application identifier is not on the application identifier list; andopening a new logical channel corresponding to the first application identifier to access the universal integrated circuit card file.
- The method of claim 9, further comprising determining whether the universal integrated circuit card file is shareable when it is determined that the first application identifier is on the application identifier list.
- The method of claim 11, further comprising:opening a new logical channel corresponding to the first application identifier to access the universal integrated circuit card file when it is determined that the universal integrated circuit card file is shareable; andqueuing the access request when it is determined that the universal integrated circuit card file is not shareable.
- The method of claim 7, further comprising determining whether the access request is present in a queue when the initial logical channel is still open.
- The method of claim 13, further comprising:processing the access request when the access request is in the front of the queue; andopening a new logical channel corresponding to a first application identifier of the access request.
- The method of claim 13, further comprising:determining whether the universal integrated circuit card file is shareable when the access request and a first application identifier corresponding to the access request are not in the queue; andremoving the first application identifier from an application identifier list when the universal integrated circuit card file is not shareable.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
PCT/CN2019/108392 WO2021056381A1 (en) | 2019-09-27 | 2019-09-27 | Universal integrated circuit card (uicc) initialization for network service access |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
PCT/CN2019/108392 WO2021056381A1 (en) | 2019-09-27 | 2019-09-27 | Universal integrated circuit card (uicc) initialization for network service access |
Publications (1)
Publication Number | Publication Date |
---|---|
WO2021056381A1 true WO2021056381A1 (en) | 2021-04-01 |
Family
ID=75164744
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
PCT/CN2019/108392 WO2021056381A1 (en) | 2019-09-27 | 2019-09-27 | Universal integrated circuit card (uicc) initialization for network service access |
Country Status (1)
Country | Link |
---|---|
WO (1) | WO2021056381A1 (en) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114390508A (en) * | 2021-12-28 | 2022-04-22 | 天翼物联科技有限公司 | User asynchronous activation method, system, device and storage medium |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2013056671A1 (en) * | 2011-10-20 | 2013-04-25 | 中国移动通信集团公司 | Single-card multi-standby terminal, adapter module, and sim card access method |
CN103797827A (en) * | 2011-09-16 | 2014-05-14 | 诺基亚公司 | Method and apparatus for accessing virtual smart cards |
US20160044134A1 (en) * | 2011-07-27 | 2016-02-11 | Qualcomm Incorporated | System and Method for Prioritizing Requests to a SIM |
CN105589740A (en) * | 2014-10-20 | 2016-05-18 | 联芯科技有限公司 | Operation method and system of dynamic mapping for applications and logic channels |
-
2019
- 2019-09-27 WO PCT/CN2019/108392 patent/WO2021056381A1/en active Application Filing
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20160044134A1 (en) * | 2011-07-27 | 2016-02-11 | Qualcomm Incorporated | System and Method for Prioritizing Requests to a SIM |
CN103797827A (en) * | 2011-09-16 | 2014-05-14 | 诺基亚公司 | Method and apparatus for accessing virtual smart cards |
WO2013056671A1 (en) * | 2011-10-20 | 2013-04-25 | 中国移动通信集团公司 | Single-card multi-standby terminal, adapter module, and sim card access method |
CN105589740A (en) * | 2014-10-20 | 2016-05-18 | 联芯科技有限公司 | Operation method and system of dynamic mapping for applications and logic channels |
Non-Patent Citations (1)
Title |
---|
ANONYMOUS: "Smart Cards; Secured packet structure for UICC based applications (Release 13)", ETSI TS 102 225 V13.0.0, 1 July 2018 (2018-07-01), XP055795217, Retrieved from the Internet <URL:https://www.etsi.org/deliver/etsi_ts/102200_102299/102225/13.00.00_60/ts_102225v130000p.pdf> * |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114390508A (en) * | 2021-12-28 | 2022-04-22 | 天翼物联科技有限公司 | User asynchronous activation method, system, device and storage medium |
CN114390508B (en) * | 2021-12-28 | 2023-10-27 | 天翼物联科技有限公司 | User asynchronous activation method, system, device and storage medium |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US9497705B2 (en) | System and methods for using wireless network correlations to acquire service on a multi-SIM device | |
US9913212B2 (en) | Carrier network access for multi-SIM devices | |
US7835712B1 (en) | Apparatus and methods for providing multi-band operation in a mobile computing device | |
US20170048855A1 (en) | Managing Service Acquisition on a Wireless Communication Device | |
US20180063774A1 (en) | Utilizing Network Coverage Information to Perform Public Land Mobile Network Searches | |
US20170064598A1 (en) | Managing Cell Selection In A Dual-Receive Multi-Subscription Multi-Standby Communication Device | |
US10098165B2 (en) | Call setup in wireless communication devices | |
US20160212782A1 (en) | Methods for efficient wireless communications and communications apparatus utilizing the same | |
US20220022014A1 (en) | Imei binding and dynamic imei provisioning for wireless devices | |
US9344877B1 (en) | Symmetric equivalent public land mobile network (EPLMN) configurations among subscriptions | |
US9686670B2 (en) | Electronic device with frequency band scanning order | |
US20170295513A1 (en) | Managing Access To Receive Chains Of A Multi-Subscription Multi-Standby Communication Device | |
US20160295541A1 (en) | Cell acquisition systems and processes for multi-sim devices | |
WO2021056381A1 (en) | Universal integrated circuit card (uicc) initialization for network service access | |
WO2020034105A1 (en) | Wireless communication method and terminal device | |
WO2020132786A1 (en) | Universal integrated circuit card (uicc) initialization for network service access | |
WO2017166278A1 (en) | Checking public land mobile network (plmn) availability in mobile devices | |
WO2021035668A1 (en) | Universal integrated circuit card (uicc) logical channel utilization | |
WO2021163947A1 (en) | Universal integrated circuit card (uicc) authentication | |
WO2021226768A1 (en) | Universal integrated circuit card (uicc) profile management | |
WO2021142819A1 (en) | Universal integrated circuit card (uicc) phone book access | |
WO2021151218A1 (en) | Universal integrated circuit card (uicc) activation | |
CN115362701B (en) | Universal Integrated Circuit Card (UICC) service | |
US20170078951A1 (en) | Managing Access To Receive Chains Of A Multi-Subscription Multi-Standby Communication Device | |
WO2021114009A1 (en) | Universal integrated circuit card (uicc) activation |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
121 | Ep: the epo has been informed by wipo that ep was designated in this application |
Ref document number: 19946884 Country of ref document: EP Kind code of ref document: A1 |
|
NENP | Non-entry into the national phase |
Ref country code: DE |
|
122 | Ep: pct application non-entry in european phase |
Ref document number: 19946884 Country of ref document: EP Kind code of ref document: A1 |