US10402186B2 - Remote update of a portable storage device - Google Patents
Remote update of a portable storage device Download PDFInfo
- Publication number
- US10402186B2 US10402186B2 US14/892,009 US201414892009A US10402186B2 US 10402186 B2 US10402186 B2 US 10402186B2 US 201414892009 A US201414892009 A US 201414892009A US 10402186 B2 US10402186 B2 US 10402186B2
- Authority
- US
- United States
- Prior art keywords
- portable storage
- storage device
- identification card
- hosting device
- hosting
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/60—Software deployment
- G06F8/65—Updates
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q20/00—Payment architectures, schemes or protocols
- G06Q20/30—Payment architectures, schemes or protocols characterised by the use of specific devices or networks
- G06Q20/34—Payment architectures, schemes or protocols characterised by the use of specific devices or networks using cards, e.g. integrated circuit [IC] cards or magnetic cards
- G06Q20/341—Active cards, i.e. cards including their own processing means, e.g. including an IC or chip
- G06Q20/3415—Cards acting autonomously as pay-media
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
- H04L67/1097—Protocols in which an application is distributed across nodes in the network for distributed storage of data in networks, e.g. transport arrangements for network file system [NFS], storage area networks [SAN] or network attached storage [NAS]
Definitions
- the present invention in some embodiments thereof, relates to remote update of a portable storage device installed in an identification card socket and, more specifically, but not exclusively, to remote update of a portable storage device installed in an identification card socket while prolonging communication with a hosting device.
- Identification cards as defined, for example, by the ISO/IEC 7816 specification which is incorporated herein by reference relate to, for example, electronic identification cards and/or authentication cards. Identification cards are widely used for a plurality of applications, for example, financial credit cards, subscriber identification module (SIM) cards and/or identity authentication cards.
- SIM subscriber identification module
- the identification cards may be used in a plurality of modes, for example, identity information storage, encryption key storage, data storage and/or event logging. In its most common use, the identification card is pre-loaded with data, which may be retrieved by the hosting device. Other application may require the hosting device to update the contents of the identification card.
- Communication between the identification card and the hosting device is performed through a physical layer and transport layer as defined, for example, by the ISO/IEC 7816 specification, which describes the aspects of the communication protocol including, for example, physical characteristics, electrical characteristics, transmission protocols, data organization, data elements, protocol commands and/or encryption aspects.
- Remote update of a portable storage device is performed by delaying an access to an identification card interface of the portable storage device communicating with a hosting device while the portable storage device is installed in an identification card socket. Delaying accesses is done by acknowledging with one or more consecutive no operation procedure byte to commands issued by the hosting device.
- the portable storage device is updated with new data through an updating device connected to an update interface of the portable storage device while delaying the accesses of the hosting device to the identification card interface of the portable storage device. After the new data is updated in the portable storage device, the new data is provided to the hosting device through the identification card interface.
- the portable storage device acknowledges with at least one consecutive no operation procedure byte accesses made by the hosting device to data which is available in the portable storage device.
- the portable storage device is emulating a subscriber identification module (SIM) card.
- SIM subscriber identification module
- the identification card interface complies with the ISO/IEC 7816 specification.
- the one or more consecutive no operation procedure byte acknowledgement is utilized through a null response as specified by ISO/IEC 7816 specification.
- further delaying accesses of the hosting device is done by setting operation frequency of the identification card interface to low operation frequency by encoding accordingly a clock rate conversion integer, a baud rate adjustment integer and a maximum supported frequency in an answer to reset (ATR) response to the hosting device.
- ATR answer to reset
- WT waiting time
- WI waiting time integer
- the number of repeats of acknowledgements of no operation procedure bytes on the identification card interface is restricted to the maximum number of no operation procedure byte allowed by the hosting device.
- further delaying accesses of the hosting device is done by inserting maximum delay time between consecutive data transmissions over the identification card interface when responding to the hosting device.
- two or more portable storage devices interface the hosting device where only one of the two or more portable storage devices is communicating with the hosting device at any time.
- a portable storage device includes a memory component which is used to store data, an identification card interface component which connects to an identification card socket and communicates with a hosting device over an identification card interface to provide the hosting device with the stored data, an update interface component which connects to an updating device and receives new data to be stored in the memory component and a control component which controls the memory component, the identification card interface component and the update interface component.
- the control component controls the identification card interface component to prolong communication with the hosting device by acknowledging with one or more consecutive a no operation procedure bytes to the hosting device in order to allow the new data to be updated in the memory component.
- control component instructs the identification card interface component to acknowledge with one or more consecutive no operation procedure bytes to accesses made by the hosting device to data which is available in the memory component.
- the portable storage device is emulating a subscriber identification module (SIM) card.
- SIM subscriber identification module
- the identification card interface complies with the ISO/IEC 7816 specification.
- FIG. 1 is a schematic illustration of an exemplary system for remote update of a portable storage device which is plugged into an identification card socket, according to some embodiments of the present invention
- FIG. 2 is a flowchart of an exemplary process of remotely updating a portable storage device installed in an identification card socket, according to some embodiments of the present invention
- FIG. 3 is a schematic illustration of an exemplary portable storage device, according to some embodiments of the present invention.
- FIG. 4 is a schematic illustration of an exemplary typical communication sequence between a hosting device and a portable storage device installed in an identification card socket, according to some aspects of the present invention
- FIG. 5 is a schematic illustration of an exemplary communication sequence between a hosting device and portable storage device which concludes with an error due to file unavailability, according to some aspects of the present invention
- FIG. 6 is a schematic illustration of an exemplary communication sequence between a hosting device and portable storage device where communication is prolonged while the portable storage device is being updated with data that was not pre-loaded, according to some embodiments of the present invention.
- FIG. 7 which is a schematic illustration of an exemplary system for acquiring identification and/or authentication data of a subscriber to register a cellular communication device to a visiting network which employs remote update of a portable storage device, according to some embodiments of the present invention.
- the present invention in some embodiments thereof, relates to remote update of a portable storage device installed in an identification card socket and, more specifically, but not exclusively, to remote update of a portable storage device installed in an identification card socket while prolonging communication with a hosting device.
- a portable storage device emulating an identification card may need to be updated with new data at the same time that it is being accessed by a hosting device, for example, a smartcard reader.
- the hosting device may try to access the new data while the new data is not yet available on the portable storage device.
- the portable storage device which may be installed in an identification card socket, communicates with the hosting device through an identification card interface, for example, an identification card interface complying with the ISO/IEC 7816 specification. Updating the portable storage device may be done through an update interface which is independent of the identification card interface of the portable storage device. Updating the portable storage device with the new data may take considerable time. In order to allow for the new data to be updated and stored in the portable storage device, communication with the hosting device over the identification card interface is prolonged.
- Prolonging communication with the hosting device is performed by delaying accesses of the hosting device to the new data so that the new data may be updated prior to it being accessed by the hosting device. It is desired to delay the hosting device accesses as long as possible to provide the update process the maximum possible time to complete the update of the portable storage device with the new data before the hosting device tries to access the new data.
- delaying the accesses of the hosting device to the portable storage device through the identification card interface is performed by responding to the hosting device with multiple consecutive no-operation procedure bytes sent prior to sending the hosting device a valid response.
- Any access made by the hosting device to the portable storage device triggers a timeout timer within the hosting device.
- the timeout timer is reset upon reception of an expected byte from the portable storage device, for example, but not limited to a procedure byte in accordance with ISO/IEC 7816.
- the hosting device may consider the portable storage device as not available, invalid and/or damaged and may reset the interface.
- the timeout timer is reset and additional time is gained for the portable storage device to respond with a valid response.
- the portable storage device may acknowledge with one or more consecutive no operation procedure bytes to any access made by the hosting device, including accesses to data which is available in the portable storage device. By delaying accesses to data which is present on the portable storage device, the communication with the host device is further prolonged.
- additional delay in responding to the hosting device with data is utilized by manipulating a plurality of operation and/or timing parameters during the negotiation phase (ATR) between the identification card interface and the hosting device, for example, setting the communication frequency to minimum, setting a timeout counter to maximum value and/or inserting delays between consecutive byte transmissions.
- ATR negotiation phase
- the new data is written to the portable storage device through the update interface. After the new data is updated on the portable storage device the new data it may be made available to the hosting device through the identification card interface.
- aspects of the present invention may be embodied as a system, method or 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.” 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 thereon.
- 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.
- 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, wire line, 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.
- 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).
- LAN local area network
- WAN wide area network
- Internet Service Provider for example, AT&T, MCI, Sprint, EarthLink, MSN, GTE, etc.
- 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.
- FIG. 1 is a schematic illustration of an exemplary system for remote update of a portable storage device which is plugged into an identification card socket, according to some embodiments of the present invention.
- An exemplary system 100 includes a portable storage device 101 which is installed in an identification card socket 105 , a hosting device 110 and an updating unit 120 .
- the hosting device 110 communicates with the portable storage device 101 through the identification card socket 105 utilizing identification card communication protocol, for example, ISO/IEC 7816.
- the hosting device 110 for example, a smartcard reader starts communicating with the portable storage device 101 through an identification card interface 130 , for example an interface which complies with the ISO/IEC 7816 specification.
- the data required by the hosting device 110 may not be present on the portable storage device 101 and may need to be updated before being available to the hosting device 110 .
- the updating unit 120 updates the portable storage device 101 with new data through an update interface 131 .
- the portable storage device 101 prolongs the communication with the hosting device 110 in order to allow the updating device 120 the maximum possible time to update the portable storage device 101 with the new data. After the new data is updated by the updating device 120 and stored in the portable storage device 101 , the new data is made available to the hosting device 110 .
- the updating unit 120 is integrated within the portable storage device 101 .
- one or more portable storage devices 101 each installed in a respective identification card socket 105 , operate in parallel with the hosting device 110 to extend the capabilities of the system, where only one of the portable storage devices 101 is active at any time.
- one or more portable storage devices 101 and one or more standard identification cards operate in parallel with the hosting device 110 to extend the capabilities of the system. Only one of the table storage devices 101 or standard identification cards is active at any time.
- This setup may be used to allow the hosting device 110 , for example, a smartcard reader to access one or more standard identification cards during standard operation mode and access one or more portable storage device 101 during non-standard operation mode.
- Standard operation mode refers to situations in which the data required by the hosting device 110 is pre-known and pre-loaded into a standard identification card.
- Non-standard operation mode refers to situations in which not all data is pre-loaded into the portable storage device 101 and new data needs to be updated while the portable storage device 101 is already installed in the identification card socket 105 and the hosting device accesses the portable storage device.
- FIG. 2 is a flowchart of an exemplary process of remotely updating a portable storage device installed in an identification card socket, according to some embodiments of the present invention.
- An exemplary process 200 is followed to remotely update a portable storage device, such as the portable storage device 101 installed in an identification card socket, such as the identification card socket 105 while a hosting device, such as the hosting device 110 starts communicating with the portable storage device 101 .
- the hosting device 110 resets the portable storage device 101 , for example, by asserting the reset line of a of an identification card interface of the portable storage device 101 , such as the identification card interface 130 .
- the portable storage device 101 may respond to the reset cycle, for example, by transmitting an answer to reset (ATR) as defined by the ISO/IEC 7816 specification.
- the response to reset may include a plurality of fields which indicate the communication capabilities of the portable storage device 101 over the identification card interface 130 , for example, as defined for the ATR by the ISO/IEC 7816 specification.
- the response to reset may not be utilized for interface specifications which do not specify such a response.
- the hosting device 110 may start accessing the portable storage device 101 in order to retrieve and/or modify data.
- initial accesses of the hosting device 110 may be done to data which is pre-loaded into the portable storage device and/or is available in the portable storage device 101 .
- subsequent accesses of the hosting device 110 may be done to data that is not yet present on the portable storage device 101 , i.e. not pre-loaded into the portable storage device 101 and needs to be updated in the portable storage device 101 through an update interface such as the update interface 131 .
- the portable storage device 101 prolongs communication with the hosting device 110 by delaying the accesses of the hosting device 110 in order to allow additional time for the new data to be updated and stored in the portable storage device 101 .
- the portable storage device 101 prolongs the communication with the hosting device 110 by acknowledging with one or more consecutive no operation procedure bytes to accesses made by the hosting device 110 . Acknowledgement with the no operation procedure byte may reset the timeout timer within the hosting device.
- the portable storage device 101 may acknowledge with one or more consecutive no operation procedure bytes to accesses made by the hosting device 110 to data which is pre-loaded and/or available in the portable storage device instead of immediately responding with the requested data.
- prolonging the communication with the hosting device 110 to the portable storage device 101 is achieved by setting one or more operation and/or timing parameters of the identification card interface 130 so as to reduce the communication rate with the hosting device 110 .
- Setting the one or more operation and/or timing parameters may be done, for example, by setting the ATR fields with operation and/or timing parameters for the identification card interface 130 , for example, according to the ISO/IEC 7816 specification.
- the ATR may include a plurality of communication characteristics to indicate the communication capabilities of the portable storage device 101 over the identification card interface 130 .
- the communication characteristics may include, for example, operation frequency, operation mode, guard time and/or waiting time.
- the portable storage device 101 may set the fields in the ATR which correspond to the communication characteristics so as to slow down communication with the hosting device 110 in order to delay access to the portable storage device 101 .
- Slowing down communication may be utilized through a plurality of settings of the ATR fields for indicating the capabilities of the portable storage device 101 , for example, low frequency, long waiting time and/or long guard time.
- Low frequency may be set, for example, by setting the value of TA 1 [8:5] to b0000 (b stand for binary representation) to indicate a maximum frequency F is set to 4 MHz and/or a clock rate conversion integer Fi is set to 372.
- Long waiting time may be set by setting, for example, the value of TC 2 to hFF (h stand for hexadecimal representation) to set a waiting time integer WI to the maximum value.
- Long guard time may be set, for example, the value of TC 1 to hFF in order to set an extra guard time integer N to the maximum value and/or by setting the value of TA 1 [4:1] to b0001 to set a baud rate adjustment integer Di to the minimum value.
- the hosting device 110 may configure the communication flow over the first interface 130 to operate according to the parameters extracted from the ATR.
- the updating unit 102 updates the portable storage device 101 with the new data through the update interface 131 .
- New data refers to data, for example identification and/or authentication data that is required by the hosting device 110 which may not yet be present in the portable storage device 101 .
- the updating device 120 connects to the portable storage device 101 through the update interface 131 .
- FIG. 3 is a schematic illustration of an exemplar portable storage device, according to some embodiments of the present invention.
- An exemplary storage device such as the portable storage device 101 is capable of being remotely updated while communicating with a host device, such as the hosting device 110 .
- the portable storage device 101 may be installed in an identification card socket, such as the identification card socket 105 .
- the portable storage device 101 may be remotely updated through an update interface component 301 connecting to an updating unit, such as the updating unit 120 which may transfer data to be updated in the portable storage device 101 .
- the data which is pre-loaded and/or updated in the portable storage device 101 is stored in a memory component 302 .
- An identification card interface component 304 communicates with the hosting device 110 through the identification card socket 105 and employs one or more communication protocols, for example ISO/IEC 7816 .
- a control component 303 controls the operation of the components of the portable storage device 101 and/or the data flow through the portable storage device 101 .
- the control component 303 may control the identification card interface component to acknowledge the hosting device 110 with the requested data and/or to acknowledge with the no operation procedure byte.
- the new data is made available to the hosting device 110 .
- FIG. 4 is a schematic illustration of an exemplary typical communication sequence between a hosting device and a portable storage device installed in an identification card socket, according to some aspects of the present invention.
- a hosting device such as the hosting device 110
- communicates with a portable storage device such as the portable storage device 101 .
- the portable storage device 101 is installed in an identification card socket, such as the identification card socket 105 and communicates with the hosting device 110 through an identification card interface, such as the identification card interface 130 .
- the hosting device 110 initiates a reset cycle responded by the portable storage device 101 , for example, with an ATR.
- the hosting device 110 may set the identification card interface 130 to operate according to the operation and/or timing parameters extracted from the ATR. After setting the identification card interface 130 , the hosting device 110 may select, for example, the desired master file as defined by the ISO/IEC 7816 specification and proceeds with file queries.
- the communication sequence 400 describes a scenario in which all files are pre-loaded into the portable storage device 101 and all queries are acknowledged with the required information and success indication.
- FIG. 5 is a schematic illustration of an exemplary communication sequence between a hosting device and a portable storage device which concludes with an error due to file unavailability, according to some aspects of the present invention.
- a hosting device such as the hosting device 110
- communicates with a portable storage device such as the portable storage device 101 .
- the portable storage device 101 is installed in an identification card socket, such as the identification card socket 105 and communicates with the hosting device 110 through an identification card interface, such as the identification card interface 130 .
- the hosting device 110 initiates a reset cycle responded by the portable storage device 101 , for example with an ATR. Following reception of the ATR, the hosting device 110 sets the identification card interface 130 to operate according to the operation and/or timing parameters extracted from the ATR.
- the hosting device 110 may, for example, as defined in the ISO/IEC 7816 specification, select the master file which is typically pre-loaded in the portable storage device 101 and/or query for files which are typically pre-loaded and available in the portable storage device 101 .
- the portable storage device 101 may be updated with new data through another communication channel, such as, for example, the update interface 131 .
- the new data may be required by the hosting device 110 but is not pre-loaded into the portable storage device 101 .
- the hosting device 110 may first query for a file which is available in the portable storage device 101 and the cycle completes successfully with the requested data transferred to the hosting device 110 .
- the hosting device 110 may then query for a file in which data is not available, i.e. the data was not pre-loaded in the portable storage device 101 prior to being installed in the identification card socket 105 .
- the cycle completes with an error indication or invalid data received from the portable storage device 101 due to data unavailability.
- the hosting device 110 may reset the identification card interface 130 and may reset the portable storage device 101 .
- the hosting device 110 queries the portable storage device 101 for the files in which data is not yet available before they are fully updated in the portable storage device 101 and therefore the cycle is completed with an error.
- FIG. 6 is a schematic illustration of an exemplary communication sequence between a hosting device and a portable storage device where communication is prolonged while the portable storage device is being updated with data that was not pre-loaded, according to some embodiments of the present invention.
- a hosting device such as the hosting device 110
- a portable storage device such as the portable storage device 101
- the portable storage device 101 is installed in an identification card socket, such as the identification card socket 105 and communicates with the hosting device 110 through an identification card interface, such as the identification card interface 130 .
- the hosting device 110 initiates a reset cycle on the identification card interface 130 responded by the portable storage device 101 , for example, with an ATR. Following reception of the ATR the hosting device 110 may set the identification card interface 130 to operate according to the operation and/or timing parameters extracted from the ATR. After setting the identification card interface 130 , the hosting device 110 may, for example, select the master file as defined in the ISO/IEC 7816 specification.
- the portable storage device 101 prolongs communication with the hosting device 110 by acknowledging with the no operation procedure byte, for example, null transaction with value of h60 as specified by the ISO/IEC 7816 specification. Each no operation acknowledgement may reset a timeout timer within the hosting device which is triggered at the start of any access made by the hosting device 100 to the portable storage device 101 .
- the master file select command may involve accesses to the file system requesting file system structure information and/or parameters.
- the file system ISO/IEC 7816 specification is typically pre-loaded into the portable storage device 101 and may be responded immediately, however in order to provide time for the new data to be updated into the portable storage device 101 , the response to the master file command is delayed. After responding with multiple consecutive null acknowledgments, the portable storage device 101 responds with success acknowledgment.
- the number of consecutive null acknowledgments generated by the portable storage device 101 is set so as not to exceed the maximum number of null acknowledgments allowed by the hosting device 110 before it resets and/or deactivates the identification card interface 130 with the portable storage device 101 .
- the maximum number of consecutive null acknowledgments allowed by the hosting device 110 may be different between different hosting devices 110 and may require some adjustments in the portable storage device 101 in order to comply with each of the hosting device 110 .
- the portable storage device 101 may be updated through another communication channel, such as, for example, the update interface 131 with new data in files that may be required by the hosting device 110 but is not pre-loaded into the portable storage device 101 .
- the hosting device 110 may initiate a query file command to the portable storage device 101 .
- the first data files accessed by the hosting device may be pre-loaded in the portable storage device 101 and may be provided immediately to the hosting device 110 .
- the cycle is delayed by responding with null responses in order to allow for additional time to update the portable storage device 101 with the new data.
- the hosting device 110 queries for the available files, the new data is updated in the files which were not pre-loaded in advance in the portable storage device 101 .
- the hosting device 110 queries for the files which were initially unavailable (not pre-loaded in advance) the files are already updated with the new data and may be provided successfully to the hosting device 110 .
- a smartcard emulation unit such as the smartcard emulation unit 201 may be a subscriber authentication unit adaptor as described in the PCT Publication WO2012140654, Methods and Systems for Routing Authentication and/or Identification Data of a Cellular Subscriber, which is incorporated herein by reference.
- the subscriber authentication unit adaptor as discussed in WO2012140654 may perform as a SIM emulation unit which may be installed in an identification card socket, such as a SIM socket and communicate with the hosting cellular device over an interface compliant, for example, with the ISO/IEC 7816 specification.
- the SIM emulation unit may be implemented through a portable storage device such as the portable storage device 101 .
- FIG. 7 is a schematic illustration of an exemplary system for acquiring identification and/or authentication data of a subscriber to register a cellular communication device to a visiting network which employs remote update of a portable storage device, according to some embodiments of the present invention.
- a system 700 describes a hosting cellular communication device 701 traveling away from the associated subscriber's home public mobile network (HPMN) coverage and roams into a visited network 730 .
- Roaming rates charged for communication through a visited network 730 may be extremely high and in order to avoid the high costs it may be desirable to register the cellular communication device 701 as a local subscriber to the visited network 730 .
- the cellular communication device 701 In order to register the cellular communication device 701 as a local subscriber to the visited network 730 , the cellular communication device 701 needs to be identified as a subscriber of the visited network 730 .
- Subscription information may be stored, for example, in a SIM card and/or a SIM emulation unit 710 which is hosted by the cellular communication device 701 .
- the contents of the SIM emulation unit 710 need to be updated to include local subscriber identification information before the cellular communication device 701 accesses the SIM emulation unit 710 to retrieve identification information and convey it to the visited network 730 through the cellular communication unit 715 .
- the cellular communication device 701 accesses the SIM emulation unit 710 through SIM socket 711 which is the hosting device for the SIM emulation unit 710 . Following activation and/or reset, the SIM socket 711 starts accessing the SIM emulation unit 710 . The SIM emulation unit 710 prolongs the accesses of the SIM socket 711 as described in the process 200 . In parallel the SIM emulation unit 710 interacts with a remote node 721 over a network 720 , for example internet and/or cellular through a communication unit 712 , for example, wireless network adapter and/or a second cellular communication unit.
- a network 720 for example internet and/or cellular
- a communication unit 712 for example, wireless network adapter and/or a second cellular communication unit.
- the remote node 721 may provide identification information allowing the cellular communication device 701 to identify itself as a subscriber of the visited network 730 . While the SIM socket 711 accesses the SIM emulation unit 710 , the new identification data is being received and updated in the SIM emulation unit 710 . Once the new identification data is available in the SIM emulation unit 710 , it is made available to the SIM socket 711 which transfers it to the cellular communication device 701 . The cellular communication device 701 may then identify itself as a subscriber of the visited network 730 .
- 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).
- the functions noted in the block 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.
- composition or method may include additional ingredients and/or steps, but only if the additional ingredients and/or steps do not materially alter the basic and novel characteristics of the claimed composition or method.
- a compound or “at least one compound” may include a plurality of compounds, including mixtures thereof.
- range format is merely for convenience and brevity and should not be construed as an inflexible limitation on the scope of the invention. Accordingly, the description of a range should be considered to have specifically disclosed all the possible subranges as well as individual numerical values within that range. For example, description of a range such as from 1 to 6 should be considered to have specifically disclosed subranges such as from 1 to 3, from 1 to 4, from 1 to 5, from 2 to 4, from 2 to 6, from 3 to 6 etc., as well as individual numbers within that range, for example, 1, 2, 3, 4, 5, and 6. This applies regardless of the breadth of the range.
- a numerical range is indicated herein, it is meant to include any cited numeral (fractional or integral) within the indicated range.
- the phrases “ranging/ranges between” a first indicate number and a second indicate number and “ranging/ranges from” a first indicate number “to” a second indicate number are used herein interchangeably and are meant to include the first and second indicated numbers and all the fractional and integral numerals there between.
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Business, Economics & Management (AREA)
- Physics & Mathematics (AREA)
- Computer Networks & Wireless Communication (AREA)
- General Physics & Mathematics (AREA)
- Software Systems (AREA)
- General Engineering & Computer Science (AREA)
- General Business, Economics & Management (AREA)
- Strategic Management (AREA)
- Accounting & Taxation (AREA)
- Microelectronics & Electronic Packaging (AREA)
- Signal Processing (AREA)
- Computer Security & Cryptography (AREA)
- Telephone Function (AREA)
- Telephonic Communication Services (AREA)
- Mobile Radio Communication Systems (AREA)
Abstract
Description
Claims (11)
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US14/892,009 US10402186B2 (en) | 2013-05-22 | 2014-05-21 | Remote update of a portable storage device |
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US201361826056P | 2013-05-22 | 2013-05-22 | |
US14/892,009 US10402186B2 (en) | 2013-05-22 | 2014-05-21 | Remote update of a portable storage device |
PCT/IL2014/050446 WO2014188421A1 (en) | 2013-05-22 | 2014-05-21 | Remote update of a portable storage device |
Publications (2)
Publication Number | Publication Date |
---|---|
US20160092200A1 US20160092200A1 (en) | 2016-03-31 |
US10402186B2 true US10402186B2 (en) | 2019-09-03 |
Family
ID=51933049
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US14/892,009 Active US10402186B2 (en) | 2013-05-22 | 2014-05-21 | Remote update of a portable storage device |
Country Status (6)
Country | Link |
---|---|
US (1) | US10402186B2 (en) |
EP (1) | EP3000025B1 (en) |
CN (1) | CN105229593B (en) |
AU (1) | AU2014269920A1 (en) |
IL (1) | IL242662B (en) |
WO (1) | WO2014188421A1 (en) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107229532A (en) * | 2017-05-05 | 2017-10-03 | 惠州Tcl移动通信有限公司 | Firmware download control method, system, mobile terminal and readable storage medium storing program for executing |
CN114615694B (en) * | 2022-03-10 | 2024-02-27 | 北京中广瑞波科技股份有限公司 | Remote access equipment for user identity module |
Citations (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2000025278A1 (en) | 1998-10-27 | 2000-05-04 | Visa International Service Association | Delegated management of smart card applications |
EP1264461A2 (en) | 2000-03-15 | 2002-12-11 | SCHLUMBERGER Systèmes | A method of communication between a smart card and a host station |
US6603982B1 (en) * | 1999-06-01 | 2003-08-05 | Nokia Mobile Phones Ltd. | Method of operating a communication device with SIM cards |
US20050077363A1 (en) | 2003-10-09 | 2005-04-14 | Samsung Electronics Co., Ltd. | Integrated circuit card capable of automatically transmitting NULL byte information without intervention by CPU |
US20060095598A1 (en) | 2004-10-30 | 2006-05-04 | Axalto Inc. | Method and apparatus of extending answer to reset and subsequent communications between a smart card and a chip card interface device |
US20070012762A1 (en) * | 2003-10-10 | 2007-01-18 | Option | Method of using a telecommunications card as generic smart card reader for a host device |
US20090137276A1 (en) | 2006-05-05 | 2009-05-28 | Giesecke & Devrient Gmbh | Simultaneous interface use |
US20100332855A1 (en) | 2009-06-30 | 2010-12-30 | Boris Dolgunov | Method and Memory Device for Performing an Operation on Data |
US20110306318A1 (en) * | 2010-06-14 | 2011-12-15 | Clive Edward Rodgers | Apparatus and methods for provisioning subscriber identity data in a wireless network |
US20120275442A1 (en) * | 2011-04-26 | 2012-11-01 | Rawllin International Inc. | Dynamic provisioning of mobile device profiles in a roaming network |
US20140342715A1 (en) * | 2012-12-28 | 2014-11-20 | Intel Corporation | Virtualized subscriber identification module (sim) |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101324799B (en) * | 2007-06-11 | 2011-08-17 | 群联电子股份有限公司 | Portable memory device and synchronization method thereof |
WO2012140654A1 (en) | 2011-04-14 | 2012-10-18 | Ben Shlush Avi | Methods and systems for routing authentication and/or identification data of a cellular subscriber |
-
2014
- 2014-05-21 EP EP14801687.6A patent/EP3000025B1/en active Active
- 2014-05-21 US US14/892,009 patent/US10402186B2/en active Active
- 2014-05-21 AU AU2014269920A patent/AU2014269920A1/en not_active Abandoned
- 2014-05-21 WO PCT/IL2014/050446 patent/WO2014188421A1/en active Application Filing
- 2014-05-21 CN CN201480028988.0A patent/CN105229593B/en active Active
-
2015
- 2015-11-18 IL IL242662A patent/IL242662B/en active IP Right Grant
Patent Citations (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2000025278A1 (en) | 1998-10-27 | 2000-05-04 | Visa International Service Association | Delegated management of smart card applications |
US6603982B1 (en) * | 1999-06-01 | 2003-08-05 | Nokia Mobile Phones Ltd. | Method of operating a communication device with SIM cards |
EP1264461A2 (en) | 2000-03-15 | 2002-12-11 | SCHLUMBERGER Systèmes | A method of communication between a smart card and a host station |
US20050077363A1 (en) | 2003-10-09 | 2005-04-14 | Samsung Electronics Co., Ltd. | Integrated circuit card capable of automatically transmitting NULL byte information without intervention by CPU |
US20070012762A1 (en) * | 2003-10-10 | 2007-01-18 | Option | Method of using a telecommunications card as generic smart card reader for a host device |
US20060095598A1 (en) | 2004-10-30 | 2006-05-04 | Axalto Inc. | Method and apparatus of extending answer to reset and subsequent communications between a smart card and a chip card interface device |
US20090137276A1 (en) | 2006-05-05 | 2009-05-28 | Giesecke & Devrient Gmbh | Simultaneous interface use |
US20100332855A1 (en) | 2009-06-30 | 2010-12-30 | Boris Dolgunov | Method and Memory Device for Performing an Operation on Data |
US20110306318A1 (en) * | 2010-06-14 | 2011-12-15 | Clive Edward Rodgers | Apparatus and methods for provisioning subscriber identity data in a wireless network |
US20120275442A1 (en) * | 2011-04-26 | 2012-11-01 | Rawllin International Inc. | Dynamic provisioning of mobile device profiles in a roaming network |
US20140342715A1 (en) * | 2012-12-28 | 2014-11-20 | Intel Corporation | Virtualized subscriber identification module (sim) |
Also Published As
Publication number | Publication date |
---|---|
EP3000025A4 (en) | 2017-03-01 |
US20160092200A1 (en) | 2016-03-31 |
AU2014269920A1 (en) | 2015-11-12 |
EP3000025B1 (en) | 2021-05-05 |
CN105229593A (en) | 2016-01-06 |
WO2014188421A1 (en) | 2014-11-27 |
IL242662B (en) | 2020-09-30 |
CN105229593B (en) | 2019-08-27 |
EP3000025A1 (en) | 2016-03-30 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US9654180B2 (en) | NFC-enable mobile device, NFC reader and NFC system for supporting a plurality of proximity services | |
US9467209B2 (en) | Method, apparatus, and terminal device for near field communication radio frequency communication | |
EP3203645B1 (en) | Information processing method and nfc terminal | |
CN103458057A (en) | Resource acquiring method, device and server | |
CN103841560A (en) | Method and equipment to enhance SIM card reliability | |
WO2019037458A1 (en) | Communication method and apparatus | |
WO2018058862A1 (en) | Spi-based data transmission method and device | |
CN111406397A (en) | Method and apparatus for managing events in a communication system | |
WO2015189229A1 (en) | Electronic device, system and method for nfc | |
US8706875B2 (en) | Sharing access to application located on a smart card for clients in parallel | |
US10402186B2 (en) | Remote update of a portable storage device | |
KR101833709B1 (en) | Communication apparatus, information processing apparatus, and control method for the same | |
US9653925B2 (en) | Power transmission device, power transmission method, and storage medium | |
WO2013152644A1 (en) | Wireless sd-card type processing device | |
WO2017152618A1 (en) | Verification method and device, and terminal | |
JP2023075128A (en) | Data scheduling method and data transmission method, network equipment, terminal and computer storage medium | |
US10979287B2 (en) | Method and apparatus for receiving a solution when configuration function verification fails in a terminal | |
WO2019104989A1 (en) | Terminal and communication method | |
EP2816501B1 (en) | A near field communication listen device emulating multiple NFC B technology tags | |
CN110851161B (en) | Firmware updating method for intelligent household equipment | |
GB2517762A (en) | Communications system | |
WO2014113960A1 (en) | Method, device, and terminal device for near field communication radiofrequency discovery control | |
CN111107663B (en) | Data transmission method and device, storage medium and electronic device | |
KR101111483B1 (en) | Wireless network communication system and method using smartphone | |
KR101509214B1 (en) | Communication system and method for push stablization |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
AS | Assignment |
Owner name: GIMSO MOBILE LTD., ISRAEL Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNOR:DUCHAN, ERAN;REEL/FRAME:037193/0625 Effective date: 20151105 |
|
AS | Assignment |
Owner name: GIMSO MOBILE LTD., ISRAEL Free format text: CORRECTIVE ASSIGNMENT TO CORRECT THE ASSIGNEE'S CITY FROM RUANANU TO RAANANA PREVIOUSLY RECORDED ON REEL 037193 FRAME 0625. ASSIGNOR(S) HEREBY CONFIRMS THE ASSIGNMENT;ASSIGNOR:DUCHAN, ERAN;REEL/FRAME:037235/0582 Effective date: 20151105 |
|
STPP | Information on status: patent application and granting procedure in general |
Free format text: RESPONSE TO NON-FINAL OFFICE ACTION ENTERED AND FORWARDED TO EXAMINER |
|
STPP | Information on status: patent application and granting procedure in general |
Free format text: NOTICE OF ALLOWANCE MAILED -- APPLICATION RECEIVED IN OFFICE OF PUBLICATIONS |
|
STPP | Information on status: patent application and granting procedure in general |
Free format text: PUBLICATIONS -- ISSUE FEE PAYMENT VERIFIED |
|
STCF | Information on status: patent grant |
Free format text: PATENTED CASE |
|
MAFP | Maintenance fee payment |
Free format text: PAYMENT OF MAINTENANCE FEE, 4TH YR, SMALL ENTITY (ORIGINAL EVENT CODE: M2551); ENTITY STATUS OF PATENT OWNER: SMALL ENTITY Year of fee payment: 4 |
|
AS | Assignment |
Owner name: SIMGO MOBILE LTD, ISRAEL Free format text: CHANGE OF NAME;ASSIGNOR:GIMSO MOBILE LTD;REEL/FRAME:063085/0333 Effective date: 20160914 Owner name: SIMGO ASSET ACQUISITION CORP., DELAWARE Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNOR:SIMGO MOBILE LTD;REEL/FRAME:062973/0076 Effective date: 20201130 |