Abstract:
A contactless communication circuit (card) communicates with a proximity coupling device (reader). The card hosts at least two applications. The card detects initialization of a first anticollision process by the reader and transmits two communication protocol identifiers in response to the detection of the first anticollision process. The communication protocol identifiers are associated with respective applications supported by the card. Transmission of the two communication protocol identifiers triggers detection of a collision by the reader.

Description:
BACKGROUND 
       [0001]    Technical Field 
         [0002]    The present disclosure generally relates to electronic circuits and, more specifically, to contactless communication circuits. The present disclosure more specifically is directed to the selection of a communication mode between a contactless communication terminal and a contactless communication circuit. 
         [0003]    Description of the Related Art 
         [0004]    The development of applications usable in contactless communications, between a proximity coupling device (PCD), for example, a contactless terminal (Contactless Reader), and a contactless integrated circuit (Proximity Integrated Circuit—PIC) or a contactless integrated circuit card (Proximity Integrated Circuit Card—PICC) generates new difficulties. 
         [0005]    In particular, communications comply with evolving standards, which may raise problems of compatibility between different generations of devices or circuits. 
         [0006]    Further, contactless integrated circuits, be they included in a microcircuit card, in a mobile phone, or in any other portable device, are more and more often capable of hosting a plurality of applications having different security levels. For example, a microcircuit card may host a bank application, for example, according to the EMV (Eurocard-MasterCard-Visa) standard, and other so-called proprietary applications, for example, access control, transport, and the like applications. 
         [0007]    Such different applications may require different protocols. Usual systems are based on a detection, by the reader, of the capacity of the card to communicate according to one standard or another. However, this generates false rejections, that is, a card which would be capable of communicating with a reader is refused by said reader. 
       BRIEF SUMMARY 
       [0008]    In an embodiment, the compatibility of a proximity integrated circuit for a communication with a proximity coupling device is verified. 
         [0009]    An embodiment is compatible with existing coupling devices. 
         [0010]    Thus, an embodiment provides a method of configuring a contactless communication circuit hosting at least two applications compatible with different communication protocols, wherein, as a response to a first anticollision process initiated by a proximity coupling device, the circuit transmits two identifiers of the communication protocols to cause a collision on the side of the proximity coupling device. 
         [0011]    According to an embodiment, as a response to a second anticollision process following the first one, the circuit transmits a single communication protocol identifier, selected according to the protocol used by the first process. 
         [0012]    According to an embodiment, the transmission of two identifiers occurs until the circuit detects a condition change in the transmission by the device. 
         [0013]    According to an embodiment, the value of the identifier conditions the communication protocol accepted by the circuit. 
         [0014]    According to an embodiment, the circuit communicates according to the ISO 14443-4 protocol with a first identifier and according to the ISO 14443-3 protocol with a second identifier. 
         [0015]    According to an embodiment, the circuit also transmits a circuit identification code. 
         [0016]    According to an embodiment, a first application is an EMV application. 
         [0017]    According to an embodiment, a second application is a MIFARE Classic or MIFARE Classic+ application. 
         [0018]    An embodiment provides a contactless communication circuit comprising a microprocessor programmed to implement the method. 
         [0019]    An embodiment also provides a microcircuit card comprising a circuit programmed to implement the method. 
         [0020]    The foregoing and other features and advantages of various embodiments will be discussed in detail in the following non-limiting description of specific embodiments in connection with the accompanying drawings. 
         [0021]    In an embodiment, a method comprises: detecting, by a contactless communication circuit hosting at least two applications compatible with different communication protocols, initiation of a first anticollision process by a proximity coupling device; and responding, by the contactless communication circuit, to the detection of the first anticollision process by transmitting two communication protocol identifiers (SAK) to cause detection of a collision by the proximity coupling device. In an embodiment, the method comprises: responding, by the contactless communication circuit, to a second anticollision process following the first anticollision process by transmitting a single communication protocol identifier selected according to a protocol used by the first anticollision process. In an embodiment, the transmission of two communication protocol identifiers occurs until the contactless communication circuit detects a condition change in an anticollision transmission by the proximity coupling device. In an embodiment, a value of a communication protocol identifier indicates a communication protocol accepted by the contactless communication circuit. In an embodiment, a first identifier indicates an ISO 14443-4 protocol and a second identifier indicates an ISO 14443-3 protocol. In an embodiment, the contactless communication circuit transmits a circuit identification code. In an embodiment, a first application is an EMV application. In an embodiment, a second application is a MIFARE Classic or MIFARE Classic+ application. 
         [0022]    In an embodiment, a device comprises: one or more memories; and contactless communication circuitry coupled to the one or more memories, wherein the contactless communication circuitry, in operation: detects initiation of a first anticollision process by a proximity coupling device; and responds to the detection of the first anticollision process by transmitting two communication protocol identifiers (SAK) associated with respective applications supported by the contactless communication circuitry, to cause detection of a collision by the proximity coupling device. In an embodiment, in operation, the contactless communication circuitry responds to a second anticollision process following the first anticollision process by transmitting a single communication protocol identifier (SAK) selected according to a protocol used by the first anticollision process. In an embodiment, in operation, the transmission of two communication protocol identifiers occurs until the contactless communication circuitry detects a condition change in an anticollision transmission by the proximity coupling device. In an embodiment, a value of a communication protocol identifier indicates a communication protocol accepted by the contactless communication circuitry. In an embodiment, a first identifier indicates an ISO 14443-4 protocol and a second identifier indicates an ISO 14443-3 protocol. In an embodiment, in operation, the contactless communication circuitry transmits a circuit identification code. In an embodiment, a first application supported by the contactless communication circuitry is an EMV application. In an embodiment, a second application supported by the contactless communication circuitry is a MIFARE Classic or MIFARE Classic+ application. In an embodiment, the device comprises: a microcircuit card including the one or more memories and the contactless communication circuitry. In an embodiment, the device comprises: mobile telecommunication circuitry. 
         [0023]    In an embodiment, a system comprises: one or more circuits; and contactless communication circuitry coupled to the one or more circuits, wherein the contactless communication circuitry, in operation: detects initiation of a first anticollision process by a proximity coupling device; and responds to the detection of the first anticollision process by transmitting two communication protocol identifiers (SAK) associated with respective applications supported by the contactless communication circuitry, to cause detection of a collision by the proximity coupling device. In an embodiment, in operation, the contactless communication circuitry responds to a second anticollision process following the first anticollision process by transmitting a single communication protocol identifier (SAK) selected according to a protocol used by the first anticollision process. In an embodiment, the system comprises: the proximity coupling device. In an embodiment, the contactless communication circuitry comprises a near-field communication (NFC) router operating in card mode. 
     
    
     
       BRIEF DESCRIPTION OF THE SEVERAL VIEWS OF THE DRAWINGS 
         [0024]      FIG. 1  very schematically shows an embodiment of a proximity communication device; 
           [0025]      FIG. 2  is a simplified block diagram of an example of configuration of a proximity coupling device; 
           [0026]      FIG. 3  illustrates the establishing of a proximity communication according to a MIFARE Plus protocol; and 
           [0027]      FIG. 4  is a simplified diagram of an embodiment of a method of configuring a proximity coupling device. 
       
    
    
     DETAILED DESCRIPTION 
       [0028]    The same elements have been designated with the same reference numerals in the different drawings, unless the context indicates otherwise. 
         [0029]    For clarity, only those steps and elements which are useful to the understanding of the embodiments which will be described have been shown and will be detailed. In particular, the exchanges between the proximity coupling device and a proximity integrated circuit once the communication has been completed have not been detailed, the described embodiments being compatible with usual exchanges. 
         [0030]    The embodiments are described while taking as an example a contactless card forming a proximity integrated circuit card (PICC) and a contactless reader forming a proximity coupling device (PCD). Embodiments, however, may more generally apply to any device used as a proximity coupling device and to any contactless communication integrated circuit where similar problems are posed. Further, although reference is made to payment applications, the described embodiments transpose to applications of different nature, for example, when such applications generate the similar problems and such applications are compatible with the described embodiments. 
         [0031]      FIG. 1  very schematically shows an example of a contactless communication system of the type to which the described embodiments may apply. 
         [0032]    A contactless communication terminal  1  or proximity reader (READER) generates an electromagnetic field. A proximity card  3  (CARD) located within the range of the reader detects the field and is capable of exchanging information with the reader. 
         [0033]    Contactless communication protocols may be “proprietary”, that is, set by the manufacturer, or standardized. In particular, bank cards may use a so-called EMV technology which uses protocols based on the ISO 14443-4 standard. Multi-application cards are however capable of hosting not only a bank application according to the EMV technology, but also applications which use other technologies, such as a technology known as MIFARE. The MIFARE technology uses, in certain implementations, an (application) communication protocol which does not support the ISO 14443-4 protocol. The application to be launched by the card depends on the reader with which it communicates. Indeed, a reader is generally dedicated to an application (for example, bank, transport, access control, etc.) and the activation of a card in the field of the reader depends on the protocol accepted by the card. 
         [0034]    As illustrated in  FIG. 1 , the reader  1  may comprise circuitry, such as one or more processors P, one or more memories M and discrete circuitry DC, which may be used alone or in various combinations to implement the functionality of the reader  1 . Similarly, as illustrated in  FIG. 1 , the card  3  may comprise circuitry, such as one or more processors P, one or more memories M and discrete circuitry DC, which may be used alone or in various combinations to implement the functionality of the card  3 . 
         [0035]      FIG. 2  is a block diagram illustrating steps of an example sequence of activation of a card in the field of a reader. 
         [0036]    The PCD reader emits, periodically or when it detects (block  21 , START) the presence of a load in the field that it generates, a request (REQA) intended for the cards possibly present in the field. If a PICC card present in the field interprets request REQA, it sends an acknowledgement message ATQA. On reception of such a message, the reader starts a so-called anticollision procedure (block  23 , ANTICOLLISION) to make sure that it communicates with a single card. Such a procedure includes the sending, by the card, of an identifier UID of the card and of a SAK (Select AcKnowledge) code identifying the application hosted by the card and with which it answers. The reader verifies whether identifier UID is complete (block  25 , UID?). If it is not (output N of block  25 ), the anticollision procedure carries on until a complete identifier is received. If it is (output Y of block  25 ), the reader reads the SAK code to determine the protocol of communication with the card. Typically, the PCD reader may determine (block  27 , SAK?) whether the card is compatible (output Y of block  27 ) with the 14443-4 or (output N of block  27 ) with the 14443-3 protocol. 
         [0037]    The SAK code or SAK value determines the communication protocol accepted by the card. 
         [0038]    The use of multi-application cards, for example hosting both an EMV-type bank application and an application of MIFARE Plus type may generate difficulties. 
         [0039]    The MIFARE technology has different security levels SL0 to SL3 according to the card generation. More particularly, a MIFARE Classic (SL1 mode) or MIFARE Classic+ (SL2 mode) card is compatible with the ISO  14443 - 3  protocol. A MIFARE Plus (SL3 ) card is compatible with the ISO 14443-4 protocol. Further, advanced MIFARE Plus cards are downwardly compatible. Thus, a MIFARE Plus card may also operate under lower security levels, to be compatible with existing readers. Similarly, a reader hosting MIFARE Plus applications is generally capable of operating according to lower protocols (MIFARE Classic or Classic+). 
         [0040]    To benefit from the advantages of the most recent protocols and particularly of the MIFARE Plus protocol, a reader hosting a MIFARE Plus application first attempts to establish a communication according to this protocol. Thus, in the presence of a card in its field, it attempts to establish a communication according to the ISO 14443-4 protocol. If the card answers, this means that it is compatible with the MIFARE Plus technology and the communication starts. If the card does not answer, the reader switches to a lower-level MIFARE Classic protocol and communicates according to the 14443-3 standard. 
         [0041]    However, in the presence of a card hosting an EMV application and a MIFARE Classic application, the communication cannot be established, even though the card is compatible with the reader. Indeed, when the communication is established, the card answers that it accepts the 14443-4 protocol since it hosts an EMV application. The reader then starts the communication in MIFARE Plus mode. However, the card does not respond since its MIFARE application is not compatible with the MIFARE Plus technology. One then is in a situation where a card which could have communicated with the reader in MIFARE Classic (or Classic+) mode is prevented from communicating since it hosts an EMV application. 
         [0042]    In practice, a card does not recognize the nature of the transaction (for example, EMV or MIFARE Plus) before the card receives specific control signals linked to the application. Now, a MIFARE Plus reader starts by adapting the transaction to the highest-performance protocol (MIFARE Plus) before sending specific control signals to the application. This results, for cards hosting an EMV application and a MIFARE application but which are not compatible with MIFARE Plus, in a failure of the transaction even though the reader and the card are compatible with the MIFARE Classic technology. 
         [0043]      FIG. 3  very schematically illustrates an example of the rejection of a transaction by a MIFARE Plus reader in such a situation. 
         [0044]    At  302 , the reader (PCD) turns on (FIELD ON) the field (activates the field generation) and periodically sends (Polling) a request (REQA,  FIG. 2 ). At  304 , the card (PICC) answers and an anticollision process starts. Since the card is an EMV card, at  306  the card answers (Answer anticollision) with a SAK value compatible with the ISO 14443-4 standard. For an EMV and MIFARE Classic card, the SAK value is 0×28. On reception of the answer, the reader at  308  sends a standardized request of the ISO 14443-4 standard called RATS (Request for Answer to Select) enabling to switch to the MIFARE Plus mode if the card answers or to remain in MIFARE Classic mode in the opposite case. Since the card hosts an EMV application, at  310  the card answers (Answer RATS) this request of the 14443-4 standard. The reader then starts at  312  a MIFARE Plus transaction with security level SL3 (Send SL3 Cmd). However, the card remains mute at  314  (Not working) or returns an error (for example, by mentioning an unknown control signal) since the card&#39;s MIFARE application is not compatible with this security level. The reader then turns off the field (Field OFF) at  316 . 
         [0045]    While usual techniques are based on a detection by the reader, the inventors have realized that modifying the operation on the card side may facilitate addressing the above-discussed situation and to enable a level-SL1 or -SL2 MIFARE card to communicate with a MIFARE Plus reader despite the fact that the card hosts an EMV application. 
         [0046]      FIG. 4  very schematically illustrates an embodiment of a proximity transaction method  400 . 
         [0047]    Accordingly to this embodiment, when the PICC card is in the field of a PCD reader, the card answers the anticollision process (Anti Collision Proc) by causing a collision to make the reader believe that there are two cards, transmitting two SAK values. The card thus sends (UID+SAK 0×20 and UID+SAK 0×08), the card&#39;s UID identifier and two SAK values, that is, value 0×20 corresponding to the 14443-4 standard and, for example, value 0×08 indicating a MIFARE communication of level SL1. The sending causes a collision detection by the reader (block  41 , DETECT COLLISION). 
         [0048]    Advantage may be taken from the fact that the reader initiates the transaction and that the reader known which application the reader hosts. In particular, the reader knows whether the application that the reader launches is an EMV application or a MIFARE application. Thus, the reader&#39;s anticollision process starts eliminating the card (actually, the application) that the reader does not host. 
         [0049]    If, as in the shown example, the reader is a MIFARE reader, the reader detects, from the UID identifier and SAK 0×20, an EMV card, and from SAK 0×08, a MIFARE Classic card. The reader then selects (block  43 , 14443-3) the 14443-3 mode and sends a SL1 security level command (Send SL1 Cmd). Thus, even though the reader is a MIFARE Plus reader, the reader sends a control signal according to the 14443-3 protocol. If the card faces a MIFARE Classic terminal, the latter transmits according to the 144443-3 protocol and the selection of the MIFARE application on the card side poses no problem. 
         [0050]    If the reader is an EMV reader, the reader detects that there are a plurality of cards in the field and returns to a polling mode. This is the usual process of reaction of an EMV reader to the presence of two cards in the field. Accordingly, this causes a disconnection on the card side. When the reader transmits again, the card causes no further collision and sends the UID identifier and SAK value 0×20. An EMV communication is then created with the 14443-4 protocol. Thus, the above-described operation does not adversely affect the card operation with other readers. 
         [0051]    The SAK values sent by the card depend on the cards MIFARE security level and on the card type (in particular on the size of its memory). Thus, typically, an EMV and MIFARE Classic card takes SAK values 0×28 for a 2K card (2 kilo-bytes) and 0×38 for a 4K card. A MIFARE Classic-only card takes values 0×08 for a 2K card and 0×18 for a 4K card. An EMV and MIFARE Classic+ card takes SAK values 0×30 for a 2K card and 0×31 for a 4K card. A MIFARE Classic+-only card takes SAK values 0×10 for a 2K card and 0×11 for a 4K card. An EMV-only card (single-application) has a SAK value of 0×20. 
         [0052]    To implement the above-described embodiment, the card is programmed to avoid sensing a single SAK value representative of the card&#39;s multi-application characteristic, but, in case of a change with respect to the previous anticollision request, answers as if the card was two different cards. 
         [0053]    According to an alternative embodiment of the above mode, in the case where the card detects a SL3-level command, the card only answers, during the next anticollision, with SAK value 0×08 to identify as a MIFARE Classic card and no longer as a MIFARE Plus card. 
         [0054]    The above-described embodiments are implemented on the card side and transparent to the reader (no modification on the reader side is necessary). The cards thus formed (programmed) are thus compatible with existing readers. 
         [0055]    Various embodiments have been described. Various alterations and modifications will occur to those skilled in the art. In particular, although the embodiments have been described in relation with a microcircuit card, they are compatible with an implementation in any proximity communication device where similar problems are posed, for example, a cell phone equipped with a NFC router operating in card mode. Further, although the embodiments have been more specifically described in relation with an example of application to MIFARE and EMV bank transactions, they transpose to other applications where similar problems are posed. Further, the practical implementation of the described embodiments is within the abilities of those skilled in the art based on the functional indications given hereabove and by using or by programming circuits usual per se. In particular, a contactless integrated communication circuit to which these embodiments apply generally comprises at least one microprocessor, one or a plurality of volatile and non-volatile memory units, a proximity communication interface and, often, other circuits according to the hosted applications. 
         [0056]    Such alterations, modifications, and improvements are intended to be part of this disclosure, and are intended to be within the spirit and the scope of the present disclosure. Accordingly, the foregoing description is by way of example only and is not intended to be limiting. 
         [0057]    Some embodiments of the method  400  may perform other acts not shown in  FIG. 4 , may not perform all of the acts shown in  FIG. 4 , or may perform the acts of  FIG. 4  in a different order. 
         [0058]    Some embodiments may take the form of or comprise computer program products. For example, according to one embodiment there is provided a computer readable medium comprising a computer program adapted to perform one or more of the methods or functions described above. The medium may be a physical storage medium, such as for example a Read Only Memory (ROM) chip, or a disk such as a Digital Versatile Disk (DVD-ROM), Compact Disk (CD-ROM), a hard disk, a memory, a network, or a portable media article to be read by an appropriate drive or via an appropriate connection, including as encoded in one or more barcodes or other related codes stored on one or more such computer-readable mediums and being readable by an appropriate reader device. 
         [0059]    Furthermore, in some embodiments, some or all of the methods and/or functionality may be implemented or provided in other manners, such as at least partially in firmware and/or hardware, including, but not limited to, one or more application-specific integrated circuits (ASICs), digital signal processors, discrete circuitry, logic gates, standard integrated circuits, controllers (e.g., by executing appropriate instructions, and including microcontrollers and/or embedded controllers), field-programmable gate arrays (FPGAs), complex programmable logic devices (CPLDs), etc., as well as devices that employ RFID technology, and various combinations thereof. 
         [0060]    The various embodiments described above can be combined to provide further embodiments. Aspects of the embodiments can be modified, if necessary to employ concepts of the various patents, applications and publications to provide yet further embodiments. 
         [0061]    These and other changes can be made to the embodiments in light of the above-detailed description. In general, in the following claims, the terms used should not be construed to limit the claims to the specific embodiments disclosed in the specification and the claims, but should be construed to include all possible embodiments along with the full scope of equivalents to which such claims are entitled. Accordingly, the claims are not limited by the disclosure.