The present application is based on PCT filing PCT/EP2015/066158 filed Jul. 15, 2015, and claims priority to European Patent Application 14177499.2 filed by the European Patent Office on 17 Jul. 2014, the entire contents of each of which being incorporated herein by reference.
Field of the Disclosure
The present disclosure relates to an electronic device for near field communication (NFC) including a processing unit including one or more applications and a controller for controlling NFC communication between a reader/writer device and the processing unit. The present disclosure relates further to a controller, a control method, an electronic system and a medium.
Description of Related Art
The NFC Forum, a non-profit industry association whose member organizations share development, application, and marketing expertise to develop the best possible solutions for advancing the use of NFC, has defined the NFC controller interface in “NFC CONTROLLER INTERFACE (NCI)”, Technical Specification, Version 1.1, Oct. 25, 2013, which describes different mechanisms to configure the NFC controller (NFCC) and to exchange data with the NFC controller and other entities within a device.
NCI defines how to handle the anti-collision for the Device Host (DH) in FeliCa™. In theory, it could also handle the anti-collision not only for the DH but also for other entities, e.g. the UICC (Universal Integrated Circuit Card; also called SIM). Today, the anti-collision for the UICC is handled by the UICC itself. The NFC Controller receives the anti-collision request, forwards this request to the UICC, the UICC generates a response (if required) and sends the response to the NFC Controller.
Security related FeliCa applications have an internal state which depends on whether the authentication with a reader/writer device succeeded or not. The default state (also called non-authenticated state herein) is “Mode 0”. Once the mutual authentication with the reader/writer device is done and the secure connection is established the application is in state “Mode 2” (also called authenticated state herein). An anti-collision request from a reader/writer shall only be handled in “Mode 0”. The “Mode 0” is left as soon as the first authentication command is received. In any other state the anti-collision request is ignored and nothing is sent to the reader/writer device.
The problem to be solved is that this behavior depends on the state of the corresponding application, which is running on the processing unit and not on the NFC controller. Hence, there is a need to provide a solution to enable the NFC controller to get information about the state of the application.
The “background” description provided herein is for the purpose of generally presenting the context of the disclosure. Work of the presently named inventor(s), to the extent it is described in this background section, as well as aspects of the description which may not otherwise qualify as prior art at the time of filing, are neither expressly or impliedly admitted as prior art against the present disclosure.
It is an object to provide an electronic device, a controller and a control method for controlling near field communication (NFC) between a reader/writer device and a processing unit running one or more applications, which enable the controller to get information on the information about the state of application(s) running on the processing unit in an simple, efficient and reliable manner. It is a further object of the present disclosure to provide a corresponding electronic system and a medium.
According to an aspect there is provided an electronic device for near field communication (NFC) including a processing unit including one or more applications and a controller for controlling NFC communication between a reader/writer device and the processing unit, said controller including
According to a further aspect there is provided a control method including
Still further, according to an aspect a corresponding controller is provided. According to a still further aspect, an electronic system is provided including an external reader/writer device and an electronic device as disclosed herein adapted to communicate with the external reader/writer device.
Finally, according to aspects of the present disclosure a computer program including program means for causing a computer to carry out the steps of the method disclosed herein, when said computer program is carried out on a computer, as well as a non-transitory computer-readable recording medium that stores therein a computer program product, which, when executed by a processor, causes the method disclosed herein to be performed are provided.
Preferred embodiments are defined in the dependent claims. It shall be understood that the disclosed system, the disclosed method, the disclosed computer program and the disclosed computer-readable recording medium have similar and/or identical preferred embodiments as the claimed controller and as defined in the dependent claims.
The disclosed electronic device, controller and control method are based on the idea to parse the communication between the reader/writer device and the processing unit. Particularly from authentication responses sent by an application to the reader/writer device it can be concluded in which state an application is and/or if it has changed its state. After sending an authentication response by an application the state of the application is generally changed into the authenticated state. From the detection of a response code having a predetermined setting within the authentication response, the authentication response can be distinguished from other communication sent by the application. Consequently, the presence of the response code having a predetermined setting allows the controller to detect if a particular application has changed its state into the authenticated state or not.
If an application has been found to be in the authenticated state (through the detection of said predetermined setting of the response code within an authentication response sent by said application) subsequent anti-collision requests shall not be answered, neither by the controller nor by the processing unit and/or an anti-collision request shall not be forwarded to the processing unit at all. Thus, with the proposed electronic device, controller and control method a simple and efficient way is provided, through which the controller knows about state changes of applications.
It shall be noted that the processing unit (sometimes also referred to as device host or application processor) and the NFC controller may be implemented as separate semiconductor devices/chips. For instance, the processing unit may be implemented as electronic host device, as also disclosed herein as separate element, and the NFC controller may be implemented as NFC chip. In other embodiments both the device host and the NFC controller may be implemented as a common semiconductor device/chip. For instance, the device host and the NFC controller may be implemented as common application processor, i.e. the NFC controller may be integrated into the processing unit that previously only implemented the processing unit.
The foregoing paragraphs have been provided by way of general introduction, and are not intended to limit the scope of the following claims. The described embodiments, together with further advantages, will be best understood by reference to the following detailed description taken in conjunction with the accompanying drawings.
A more complete appreciation of the disclosure and many of the attendant advantages thereof will be readily obtained as the same becomes better understood by reference to the following detailed description when considered in connection with the accompanying drawings, wherein:
Referring now to the drawings, wherein like reference numerals designate identical or corresponding parts throughout the several views,
The electronic device 100 further comprises a processing unit 120. The processing unit 120 may e.g. be a central processing unit. The processing unit 120 may also be referred to as “host” or “application processor”. Optionally the processing unit 120 may include one or more application specific data structures storing e.g. data related to a payment service such as e.g. a credit card number or the like. It is also possible, that the processing unit 120 is connected to one or more secure elements included in other storages (not shown), e.g. a Subscriber Identity Module (SIM) card. The term “processing unit” should not be understood in a limiting sense to necessarily have high processing capabilities. Depending on the design of electronic device 100, the processing unit 120 may simply be a memory with little processing capabilities.
The electronic device 100 further comprises an NFC interface 130 connected to the front end unit 110. The NFC interface 130 includes e.g. an antenna for transmitting and receiving signals to/from the reader/writer device 200 which likewise includes a further NFC interface 210.
Any device having a front unit 110 and a processing unit 120 and being suitable for NFC communication may be understood as electronic device in the context of the present disclosure. Examples for such electronic devices are particularly all kinds of handheld devices like smartphones, tablet computers, laptops, cameras, etc.
Conventionally, the front end unit 110 and/or the processing unit 120 comprises a memory for storing first and corresponding second identifiers. Further, the processing unit 120 stores one or more applications. This will be explained with reference to
It shall be noted in this context that a special interface may be provided between the NFC Controller 110′ and the UICC 120′ in order to meet the timing requirements for the anti-collision. Such an interface is e.g. described in the Single Wire Protocol (SWP) specification which is specified in ETSI TS 102 613. The “special mode” that is used is the so-called Contactless Tunneling (CLT) mode. In this embodiment the anti-collision is handled by the UICC 120′ itself.
The communication establishment request S10, S12, S30 may also be referred to as “anti-collision request” and the response S14, S16, S32 may also be referred to as “anti-collision response”. Further, it should be noted that the communication establishment request S20 may be the first request from a reader/writer device for establishing a communication, i.e. when a communication is established no other requests or messages have been exchanged between the reader/writer device 200 and the near field communication device 100. The anti-collision request may be sent at any time and may be used for restarting a connection.
Security related applications, e.g. FeliCa applications, have an internal state which depends on whether the authentication with a Reader/Writer device succeeded or not. The default state is called “Mode 0” (also referred to as non-authenticated state herein), and once the mutual authentication with the reader/writer device is done and the secure connection is established the application is in state “Mode 2” (also referred to as authenticated state herein). An anti-collision request from a reader/writer device shall only be handled in “Mode 0”. The “Mode 0” is left as soon as the first authentication command is received. In any other state the anti-collision request is ignored and nothing is sent to the reader/writer device.
Assuming the NFC controller 110′ was configured with the anti-collision information from the UICC 120′ required to run the anti-collision autonomously, then the data flow would look as shown in the flowchart depicted in
For security related applications the reader/writer device 200 starts an authentication phase by sending an “Authentication1” command S40 as shown in the flowchart depicted in
Thus, according to the present disclosure, since the NFC controller 310 forwards commands and responses in both directions, it parses those frames, in particular authentication responses, and concludes on the application state of the application. As mentioned above, the application state is changed after sending the “Authentication1” response, which can thus be recognized by the NFC controller. In this context, it shall be noted that a “frame” is understood as a logical data structure or message that is sent and received. A frame can be either a command, or a response, or an event, i.e. commands, response and events are transported in frames. The NFC controller particularly parses the frames coming from the application processor (e.g. a device host and/or an UICC) in order to detect an authentication response.
An exemplary embodiment of an “Authentication1” command frame is depicted in
Preferably, the NFC controller also detects the conditions under which the state of an application changes back to “Mode 0”, i.e. to the non-authenticated state. In this case the NFC controller does no longer prevent responses to anti-collision requests. A corresponding detection unit 318 is shown in
Several options are available for detecting this change. According to one option a change of the state of an application happens if there is an RF off, i.e. the RF field generated by the external reader/writer device 200 has gone away or has become too weak to communicate with it. This can e.g. be detected by the NFC interface (130 in
According to another option a change of the state of an application happens if another anti-collision response is sent in case of an anti-collision request targeting another application than the one in “Mode 1” or “Mode 2”, i.e. the one in authenticated state. This is illustrated in the flowchart shown in
According to still another option a change of the state of an application happens if a response to any command is sent that was addressed to another application than the one being in “Mode 1” or “Mode 2”. This is illustrated in the flowchart shown in
For instance, as shown in
The NFC controller can follow different approaches to achieve this function (assuming one application is in authenticated state, i.e. in “Mode 1”, “Mode 2” or “Mode 3”).
According to a first approach, if the NFC controller is aware of all identifiers (IDs) of all applications of the device (i.e. either the whole device, e.g. a mobile phone, comprising one or more processing units (DH and UICC), or a subset of the device, i.e. just one processing unit; this is up to the implementation), then it can check whether a response contains an ID of one of the available applications being in non-authenticated stated (i.e. in Mode 0). If so, the NFC controller re-enables the anti-collision entry of the application being in authenticated state (i.e. not in Mode 0). If the ID is different, it must be either an encrypted or non-encrypted response from the application being in authenticated state, i.e. being in Mode 1, Mode 2 or Mode 3, and the NFC controller can ignore it.
According to a second approach the NFC controller buffers the ID of the “Authentication1” response (as shown above) and checks whether subsequently a non-encrypted response (indicating that the corresponding application is in a non-authenticated state) with a different ID is sent. In this case not only the ID but also the response code should be monitored, for instance in a table stored in an optional storage unit (320 in
As explained above and shown in
This event can be used by an application to reset the internal state. Alternatively, a generic event can be used, e.g. an event that indicates that e.g. the RF field was switched off, to indicate that not only one specific entry was disabled but that the state for all applications can be reset.
In summary, the present disclosure describes devices, systems and methods to provide that the NFC controller can gather information about the application state. This information is required to handle the anti-collision request in the NFC controller correctly. By handling the anti-collision in the NFC controller completely, the SWP CLT mode as defined in ETSI TS 102 613 is not required any more.
Thus, the foregoing discussion discloses and describes merely exemplary embodiments of the present disclosure. As will be understood by those skilled in the art, the present disclosure may be embodied in other specific forms without departing from the spirit or essential characteristics thereof. Accordingly, the disclosure of the present disclosure is intended to be illustrative, but not limiting of the scope of the disclosure, as well as other claims. The disclosure, including any readily discernible variants of the teachings herein, defines, in part, the scope of the foregoing claim terminology such that no inventive subject matter is dedicated to the public.
In the claims, the word “comprising” does not exclude other elements or steps, and the indefinite article “a” or “an” does not exclude a plurality. A single element or other unit may fulfill the functions of several items recited in the claims. The mere fact that certain measures are recited in mutually different dependent claims does not indicate that a combination of these measures cannot be used to advantage.
In so far as embodiments of the disclosure have been described as being implemented, at least in part, by software-controlled data processing apparatus, it will be appreciated that a non-transitory machine-readable medium carrying such software, such as an optical disk, a magnetic disk, semiconductor memory or the like, is also considered to represent an embodiment of the present disclosure. Further, such a software may also be distributed in other forms, such as via the Internet or other wired or wireless telecommunication systems.
The elements of the disclosed devices, apparatus and systems may be implemented by corresponding hardware and/or software elements, for instance appropriated circuits. A circuit is a structural assemblage of electronic components including conventional circuit elements, integrated circuits including application specific integrated circuits, standard integrated circuits, application specific standard products, and field programmable gate arrays. Further a circuit includes central processing units, graphics processing units, and microprocessors which are programmed or configured according to software code. A circuit does not include pure software, although a circuit includes the above-described hardware executing software.
It follows a list of further embodiments of the disclosed subject matter:
1. An electronic device for near field communication, NFC, said device including a processing unit including one or more applications and a controller for controlling NFC communication between a reader/writer device and the processing unit, said controller including:
2. The electronic device as defined in embodiment 1,
3. The electronic device as defined in any preceding embodiment,
4. The electronic device as defined in embodiments 2 and 3,
5. The electronic device as defined in embodiment 3,
6. The electronic device as defined in embodiment 3,
7. The controller as defined in embodiment 3,
8. The electronic device as defined in embodiments 2 and 7,
9. The electronic device as defined in embodiment 2,
10. The electronic device as defined in any preceding embodiment,
11. A controller for controlling near field communication, NFC, between a reader/writer device and a processing unit including one or more applications, said controller including:
12. A control method for controlling near field communication, NFC, between a reader/writer device and a processing unit including one or more applications, said control method including:
13. A non-transitory computer-readable recording medium that stores therein a computer program product, which, when executed by a processor, causes the method according to embodiment 12 to be performed.
14. An electronic system for near field communication, NFC, said system including:
15. A computer program including program code means for causing a computer to perform the steps of said method according to embodiment 12 when said computer program is carried out on a computer.
Number | Date | Country | Kind |
---|---|---|---|
14177499 | Jul 2014 | EP | regional |
Filing Document | Filing Date | Country | Kind |
---|---|---|---|
PCT/EP2015/066158 | 7/15/2015 | WO | 00 |
Publishing Document | Publishing Date | Country | Kind |
---|---|---|---|
WO2016/008921 | 1/21/2016 | WO | A |
Number | Name | Date | Kind |
---|---|---|---|
7699228 | Wakasa | Apr 2010 | B2 |
7797537 | Kurita | Sep 2010 | B2 |
8143995 | Soppera | Mar 2012 | B2 |
8259946 | Takemura | Sep 2012 | B2 |
8576053 | Buscemi | Nov 2013 | B2 |
8929815 | Lee | Jan 2015 | B2 |
9373110 | Sekiya | Jun 2016 | B2 |
9456347 | Hsu | Sep 2016 | B2 |
20080306849 | Johnson, Jr. et al. | Dec 2008 | A1 |
20110078549 | Thueringer et al. | Mar 2011 | A1 |
20110183611 | Wane | Jul 2011 | A1 |
20120092137 | Buscemi et al. | Apr 2012 | A1 |
20120178366 | Levy et al. | Jul 2012 | A1 |
20120329393 | Hillan et al. | Dec 2012 | A1 |
20130205414 | Jussila | Aug 2013 | A1 |
20150237664 | Tanabe | Aug 2015 | A1 |
Number | Date | Country |
---|---|---|
101719830 | Sep 2012 | CN |
2 442 254 | Apr 2012 | EP |
2 442 254 | Apr 2012 | EP |
2 624 612 | Aug 2013 | EP |
2 711 864 | Mar 2014 | EP |
Entry |
---|
International Search Report and Written Opinion dated Oct. 13, 2015 in PCT/EP2015/066158 filed Jul. 15, 2015. |
Taiwanese Search Report dated Nov. 9, 2010 in Taiwanese Application 104120185. |
“Mobile NFC Technical Guidelines”, GSMA, Version 2.0, Nov. 2007, 95 pages. |
“Smart Cards: UICC—Contactless Front-end (CLF) Interface; Part 1: Physical and data link layer characteristics (Release 7)”, ETSI TS 102 613, Version 7.3.0, Technical Specification, Release 7, Sep. 2008, 57 pages. |
Number | Date | Country | |
---|---|---|---|
20170188262 A1 | Jun 2017 | US |