Abstract:
A card reader payment terminal including an electronic circuit including at least one printed circuit board, to which are connected electronic components, including a microcontroller designed to control different peripherals, where the microcontroller is connected to an associated microprocessor, where the card reader payment terminal is configured to receive a smart card comprising the associated microprocessor, where the associated microprocessor comprises a connector compatible with the standardized connector of smart cards for connection with the microcontroller, where the microcontroller and the associated microprocessor operate in parallel for executing a task, and where the associated microprocessor is adapted to calculate a security operation.

Description:
CROSS-REFERENCE TO RELATED APPLICATIONS 
     This application is a continuation of U.S. patent application Ser. No. 10/479,647, entitled: “ELECTRONIC PAYMENT TERMINAL, SMART CARD ADAPTED TO SUCH A TERMINAL AND METHOD FOR LOADING A SECRET KEY IN SUCH A TERMINAL”, and filed on Dec. 1, 2003. Further, U.S. patent application Ser. No. 10/479,647 claims benefit of PCT Application No. PCT/FRO2/01766 filed on May 27, 2002, which claims priority to French Patent application FR 01/07204 filed on May 31, 2001. 
    
    
     FIELD OF INVENTION 
     This invention relates to a card reader electronic payment device that is also called a payment terminal. It further relates to a smart card designed to be integrated into the electronic circuit of the said terminal. This invention also covers a method for downloading confidential data into such a terminal. 
     BACKGROUND 
     Today, there are many payment card reader terminals, most of which have an electronic circuit that manages the operating of the device, which is made up of a printed circuit board on which a number of electronic components are soldered, including microcontrollers. 
     Conventional payment devices with bankcard readers include terminals that are generally portable, wired or wireless, which operate alone or with a base. 
     The functions that are allocated to the base and the terminal may vary from one embodiment to the next. The base is generally connected to a payment centre via the public switched telephone network and transmits messages to bank servers in response to the messages received from the terminal. The base also acts as the recharging station for charging the electricity accumulator in the terminal. Besides, the base may also be used to print transaction tickets. 
     The portable terminal therefore includes at least one payment card reader, a data input keypad, a display screen, power supply, particularly in the form of a rechargeable accumulator and an electronic control circuit in the form of a printed circuit board that includes a main microcontroller comprising a micro-processor and different input and output interfaces. The main microcontroller is particularly responsible for the operating of the terminal and also that of the various peripheral devices. 
     Systems are also known where such portable devices are fitted with one or more miniature smart card readers that meet the requirements of standard GSM 11.11, which miniature smart cards are also commonly called SAM (Secure Access Module) cards. These SAM cards have an input/output pad that meets the requirements of standard ISO (Cnet) applicable to smart cards. Because such SAM cards are very small, they can be easily installed in portable electronic devices, particularly card reader payment terminals. 
     The use of such SAM cards in payment terminals is currently dedicated to the execution of specific tasks such as identification operations, password verification or managing electronic purse financial applications that use confidential data and proprietary algorithms that the managing organisations do not wish to publish and are therefore incorporated directly into the electronic circuit of the terminal. 
     These SAM cards used by portable terminals such as payment terminals or mobile phones therefore contain confidential information and are issued by operators (banks etc.) to fully identified users (merchants etc.), who are then required to insert them in the terminals to execute specific applications with the devices, such as debiting and crediting electronic purse cards. 
     Cards and terminals are therefore produced and developed totally separately. Terminals fitted with SAM card readers consider the SAM cards as peripheral devices and the microcontroller of the terminal is configured to converse with the cards in accordance with predetermined protocols and complete predefined tasks that are generally limited to transferring data or commands between the smart cards and the payment cards. 
     SUMMARY 
     This invention is aimed at using the infrastructure of terminals with SAM card readers to modify the design of the electronic circuit of terminals. 
     According to the invention, the tasks that are generally completed by a single microprocessor in the terminal are distributed over several microprocessors operating in parallel, where at least one of the microprocessors is integrated into a support that meets the SAM card format, i.e. standard GSM 11.11. 
    
    
     
       BRIEF DESCRIPTION OF THE DRAWINGS 
       The aims, aspects and benefits of this invention will become easier to understand with the description given below of a mode of embodiment of the invention, described as a non-limitative example, with reference to the drawings. 
         FIG. 1  is a schematic perspective view of a payment device in accordance with the invention. 
         FIG. 2  is a schematic perspective view of the underside of the device represented in  FIG. 1 . 
         FIG. 3  is a block diagram of the electronic circuit fitted on payment devices in accordance with the invention. 
     
    
    
     To simplify the description, only those elements that are needed to understand the invention have been represented. Besides, the elements bear the same references from one figure to the next. 
     DETAILED DESCRIPTION 
       FIG. 1  shows a bank card reader payment device. The device is made up of a portable terminal  1  with means to read payment cards, including both smart cards and/or magnetic stripe cards. 
     Portable terminal  1  is known to have at least one insertion slot  2  for inserting ICC payment cards with electronic chips, which slot works along with reading means that have not been represented. 
     Terminal  1  also includes means (not illustrated) for reading cards with magnetic stripes. The terminal further includes a data input keypad KB and a display screen DU. 
     Terminal  1  also conventionally includes a power supply, in the form of a rechargeable accumulator, an electronic control circuit, in the form of a printed circuit board on which is connected at least one microcontroller and means to transmit and receive radio frequency messages along with antenna  5 . 
     The above list of the equipment in terminal  1  is not limitative in this invention. Payment terminal  1  may also include means to print a transaction ticket. Likewise, the terminal may be wired and not include means to transmit and receive radio frequency messages. Similarly, the terminal may work along with a fixed base. Such a base could, for example, act as the battery charger, the printer if there is no printer on the terminal or the connection to the public switched telephone network. Whether it does so by means of a radio telecommunication network or through the public switched telephone network, the terminal needs to access bank servers to obtain authorisations and to transfer the financial transactions completed. 
     The underside of terminal  1  is represented in  FIG. 2  and includes slots guarded by a removable cover  6  for plugging in miniature smart cards that meet the requirements of standard GSM 11.11, i.e. SAM smart cards. 
     With reference to  FIG. 3 , the electronic circuit of the terminal is schematically made up of a printed circuit board on which the electronic components required for the terminal to operate are soldered, particularly a main microcontroller UC, which may be a microcontroller developed specially for the terminal (ASIC). Microcontroller UC is associated with a non-volatile programme EEPROM memory and a RAM data memory and also input/output interfaces that are used by the various electronic components, particularly the radio frequency transmitter/receiver module RFI, the display screen DU and the keypad KB. Main microcontroller UC is also connected, through an appropriate interface SCI, to different smart card readers, one of which is connected to a micro smart card MIC, the role of which will be detailed below. The microcontroller can thus be connected by means of interface SCI, in addition to card MIC, to a SAM card and a ICC payment card. The integrated circuit board may also contain a secure microcontroller SUC to which are connected keypad KB and graphic display DU. 
     Secure microcontroller SUC is generally present when the terminal is required to read magnetic stripe cards and/or protect the confidentiality of the secret identification code, also called PIN code, which is entered by the user. The main functions of the secure microcontroller SUC in that case are to scramble the signals transmitted in order to keep the data entered on keypad KB from being detected by simply analysing the signals going into microcontroller UC. Secure microcontroller SUC also contains secret bank card keys and secret key encryption algorithms in order to securely transmit the PIN code through the telecommunication network to the bank servers, which have the same keys. When it is present, secure microcontroller SUC is directly connected to the main microcontroller through a communication bus. 
     The function of the SAM card that may be present in the terminal is to manage specific proprietary applications such as an electronic purse application. The electronic purse payment card is then directly debited or credited by means of the SAM card with special and secret algorithms and mechanisms that are the exclusive property of the organisation that manages the application. In that case, terminal  1  and particularly its electronic circuit have a merely transparent role, which is limited to exchanging data, particularly the commands prepared by the SAM card between the payment card, the keypad, the display and the SAM card. 
     Micro smart card MIC that defines an arithmetic coprocessor mainly includes a microprocessor IC, a ROM type memory with the card operating system, non-volatile memory of the EEPROM type and a RAM memory for processing data to be received from main microcontroller UC. 
     According to the invention, several software applications are loaded into the program memories of micro smart card MIC. 
     These applications incorporated into micro smart card MIC are designed to relieve main microcontroller UC for the implementation of algorithms that may require a large calculation capability, particularly during encryption and decryption, using RSA type algorithms. 
     One of the programs loaded in card MIC may be dedicated to calculations for authenticating the public key of the payment card when a public key authentication system of the PKI type (Public Key Infrastructure) of payment cards is in use. 
     Such systems are also known by the name DDA (Dynamic Data Authentication). The system is based on an encryption method of the asymmetrical type, such as for example the RSA algorithm, named after its inventors Rivest, Shamir and Adleman, based on modular exponentiation. The principle of such asymmetrical encryption methods is to have two keys for encryption and decryption. The decryption key cannot be inferred from the encryption key or vice versa. One key is made public (Public Key), whilst the other is kept confidential and is called the Private Key. 
     The DDA system therefore consists in using a single certification authority, payment card management organisations (Visa, MasterCard etc.) and banks or financial institutions that issue payment cards to end users. Each of these entities has an asymmetrical encryption algorithm, and therefore a Public Key, PCA, PI and PIC respectively and a Private Key, SCA, SI and SIC respectively. Each genuine payment card is given two authentication certificates, where public keys PI and PIC of the corresponding card management organisation and bank are certified with the private key SCA of the certifying authority and the private key of the card management organisation SI and the secret key of the issuing bank SIC. 
     In order to verify if a card inserted in a terminal is genuine, the terminal asks the card to submit the key PI certified by key SCA. The terminal has the key PCA for verifying the authenticity of the signature and inferring the authenticity of key PI. The terminal then asks for key PIC certified by key SI. As in the previous stage, the terminal has key PI and can verify the authenticity of the signature and infer that of key PIC. 
     The terminal then only needs to verify that the signature sent by the payment card in the form of a number N taken randomly and the certificate matches the number N encrypted with secret key SIC. 
     The terminal has key PIC and can therefore determine the authenticity of the signature by decrypting the certificate and verifying that the result is indeed N. 
     The data supplied by payment card ICC to card MIC go through the microcontroller and card MIC takes charge of using the asymmetrical encryption algorithm for each of the aforementioned stages, which are therefore collected in a single processing operation. 
     Public key PCA is either introduced from the start in the card or introduced later on, e.g. by downloading. 
     In accordance with the invention, the performance of the aforementioned cascaded arithmetic calculations that are to be made by the terminal to authenticate an ICC payment card in accordance with the DDA method is transferred to card MIC. In that way, the calculations are optimised, particularly through the use of hard-wired logic integrated circuits that shorten calculation times. 
     Public key PCA and the algorithms used by the DDA method are freely communicated to the manufacturers of terminals and are therefore loaded in card MIC, preferably when it is manufactured or when terminal  1  is initialised. 
     Another possible application that is easy to implement is the encryption of the PIN code entered by the user and transmitted to the ICC smart card. For enhanced security, the PIN code should be transferred to the card in encrypted form and not in clear form. In this case, the PIN code goes through card MIC, which encrypts it with public key PIC and number N sent by the card during authentication and sends it on. Only the card that has N and secret key SIC can then infer the user&#39;s PIN code from the message received. 
     Another application that can be implemented easily is terminal customisation. For some applications, particularly for operating magnetic cards, the terminal must be given specific information such as the confidential codes required, particularly for secret key encryption operations of the DES (Data Encryption System) type. That is because before each transaction, magnetic cards require an online authorisation request that means that the secret PIN code of the user needs to be transmitted. The PIN code is encrypted by secure processor SUC containing secret key Ks supplied by the bank or the card management organisation. The PIN password entered by the user is encrypted by secret key Ks and transmitted by an appropriate telecommunications network to an authorisation server that also has key Ks and can find the PIN code of the user and issue the requested authorisation. 
     The loading of secret key Ks into secure processor SUC of terminal  1  is a long and complex operation, particularly because of the security requirements. The operation is generally performed by banks with specialised tools that are capable of loading data or programs into the secure microcontrollers SUC of terminals. 
     The downloading of key Ks can be made simpler by using smart card MIC. To that end, card MIC has an appropriate program. The progress of the program has been schematically described below. Card MIC is given a private key  51  and a public key P 1  when it is designed. These keys may for instance be owned by the manufacturer of the terminal or of card MIC. Card MIC logs on to the appropriate bank server, which also has a private key P 1  and a public key P 2 . Card MIC generates a random number M 1  with appropriate means for generating random numbers. That number M 1  is encrypted with public key P 2  and sent in the encrypted form to the bank server. That server has key S 2  for calculating number M 1 . 
     In its turn, the server generates number M 2  and sends it in encrypted form with public key P 1 . Card MIC can then find M 2  with the help of its secret key  51 . The terminal—through card MIC—and the server are thus the only ones who know the combination of M 1  and M 2 , which combination can then constitute a secret key TMK, which is sent to microcontroller SUC in encrypted form on the basis of a key known to card MIC and microcontroller SUC. The bank server can then securely transmit secret key Ks to microcontroller SUC by encrypting it with a DES algorithm and key TMK. 
     As a variant of embodiment, card MIC could encrypt number M 1  with its private key  51  and the bank server could then decrypt M 1  as it has public key P 1 . In this variant, no keys are needed for the authorisation. 
     As another variant of embodiment, an initial authentication stage could be added when the terminal logs on to the bank server for downloading the secret key. 
     That facility to remotely download secret keys in a fully reliable and secure fashion means that key Ks which is used by microcontroller SUC to transmit the PIN codes can be changed regularly for greater security. 
     The communication of the secret key based on M 1  and M 2  between card MIC and microprocessor SUC can be achieved by using key  51 , which is first loaded into microprocessor SUC. 
     This invention relating to the use of at least one micro smart card MIC in combination with central microprocessor UC particularly relates to the implementation in a given terminal of additional calculation methods, which may be arithmetic or otherwise. These means incorporated into micro smart card MIC are particularly designed to reinforce the calculation capability of microcontroller UC of the printed circuit board of the terminal. These means are also adapted for customising the terminal as described above. 
     The use of a micro smart card MIC as a coprocessor associated with main microcontroller UC of the terminal offers several benefits, particularly improved performance as compared to terminals that only have a single microcontroller UC, as the number of iterations is greater. Also, it offers greater ease for upgrading terminal performance (changing micro smart card MIC is simpler than changing mother board UC). Besides, the overall security of the terminal is heightened, because the very design of smart cards makes them more difficult to break into, as compared to conventional electronic cards. 
     Of course, the mode of embodiment illustrated is only given as an example and is absolutely not limitative of all the solutions that can be implemented with the help of this invention. 
     In particular, card MIC could be rendered impossible to remove directly, by providing a slot inside the terminal housing, which is not accessible from the outside. Likewise, card MIC could be soldered onto the printed circuit board.