Data exchange between an electronic payment terminal and a maintenance tool through a USB link

The invention relates to an electronic payment terminal (30) comprising a first USB connection port (13) comprising at least one first wire (D+″) for data transfer. The payment terminal comprises, furthermore, a first resistor (24) linking the first wire to a first source (VDD) of a first potential and a switch (38) between the first wire and the first resistor or between the first resistor and the first source.

FIELD OF THE INVENTION

The present invention relates to the data exchange between an electronic payment terminal and a maintenance tool via a USB (Universal Serial Bus) connection.

DISCUSSION OF PRIOR ART

More and more electronic payment terminals can exchange data with an external system, for example, a computer, via a USB connection. As an example, an electronic payment terminal may be connected to a computer via a USB connection so that the terminal transmits data, for example associated with the payment operations performed by the terminal, to the computer.

It is desirable to be able to use the USB connection of the electronic payment terminal to perform maintenance operations. A maintenance operation comprises, for example, loading software into a memory of the payment terminal, updating software already stored in the payment terminal, etc.

The security level generally required in the field of payment operations imposes the impossibility for a maintenance operation to be performed during the normal operation of the electronic payment terminal. For this purpose, a conventional solution comprises providing, at the terminal level, a selection switch enabling switching from a normal operating mode in which a maintenance operation is forbidden to a maintenance mode in which a maintenance operation can be performed. Thereby, if a computer connected to the payment terminal attempts to perform a maintenance operation while the terminal is in the normal operating mode, the terminal will refuse to exchange data with the computer.

However, the security level provided by such a solution may be insufficient. Indeed, the selection switch may be fraudulently actuated to select the maintenance mode. The electronic payment terminal may then be connected to a conventional computer by the USB connection to perform a fraudulent operation in the maintenance mode.

SUMMARY OF THE INVENTION

An aspect of the present invention aims at an electronic payment terminal capable of preventing a data exchange with a conventional computer over a USB connection in a maintenance mode.

According to another object, the electronic payment terminal is capable of performing at least partly automatically the switching between the normal operating mode and the maintenance mode.

Another aspect aims at a maintenance system which, when the electronic payment terminal is in the maintenance mode, is capable of exchanging data with the terminal over the USB connection.

Another aspect aims at a method for exchanging data between the electronic payment terminal and the maintenance system over the USB connection.

For this purpose, it provides an electronic payment terminal comprising a first USB connection terminal comprising at least one first data transfer wire. The payment terminal further comprises a first resistor connecting the first wire to a first source of a first voltage and a switch between the first wire and the first resistor or between the first resistor and the first source.

According to an embodiment, the terminal comprises a control circuit capable of turning on the switch in a first operating mode and of turning off the switch in a second operating mode. The terminal is intended to be connected, by the first USB connection terminal, to a first system in the first operating mode and to a second system in the second operating mode. The first and second systems are capable of initiating a data exchange with the terminal. The first system comprises a second wire intended to be connected to the first wire and a second resistor connecting the second wire to a second source of a second voltage strictly smaller than the first voltage. The second system comprises a third wire intended to be connected to the first wire and a third resistor connecting the third wire to a third source of a third voltage strictly greater than the second voltage.

The present invention also provides a system comprising at least one second USB connection terminal comprising at least one fourth data transfer wire. The system comprises a circuit capable of repeatedly transmitting, over the second USB connection terminal, an identification request to start a data exchange by the second connection terminal as long as a response signal has not been received from the second connection terminal.

According to an embodiment, the system is intended to be connected to a terminal such as defined previously.

According to an embodiment, the system comprises a fourth source of a fourth voltage, a fifth source of a fifth voltage strictly greater than the fourth voltage and a fourth resistor connecting the fourth wire to the fifth source.

The present invention also provides a method for exchanging data between an electronic payment terminal and a first system or a second system. The terminal comprises a USB connection terminal comprising at least one first data transfer wire. The terminal further comprises a first resistor connecting the first wire to a first source of a first voltage, and a switch between the first wire and the first resistor or between the first resistor and the first source. The first and second systems are capable of initiating a data exchange with the terminal. The first system comprises a second wire intended to be connected to the first wire and a second resistor connecting the second wire to a second source of a second voltage strictly smaller than the first voltage. The second system comprises a third wire intended to be connected to the first wire and a third resistor connecting the third wire to a third source of a third voltage strictly greater than the second voltage. The method comprises the steps of having the terminal turn off the switch to allow for a data exchange between the terminal and the second system; and having the terminal turn on the switch to allow for a data exchange between the terminal and the first system.

According to an embodiment, the method comprises having the terminal, when the terminal is powered on, turn off the switch for a given time period and then turn on the switch if during said time period, a data exchange has not occurred between the terminal and the second system.

According to an embodiment, the method comprises having the terminal not respond to requests issued by the second system when the switch is on.

According to an embodiment, the method comprises having the second system repeatedly transmit, at least partly over the third wire, an identification request to start a data exchange with the terminal as long as the second system receives no response from the terminal.

DETAILED DESCRIPTION

For clarity, the same elements have been designated with the same reference numerals in the different drawings. Only those elements necessary to the understanding of the present invention are shown in the drawings and will be described hereafter.

FIG. 1conventionally shows an electronic payment terminal10(TPE) connected to a computer12(PC). Terminal10comprises a USB connection terminal13in which is connected one end of a USB cable14. Computer12comprises a USB connection terminal15receiving the opposite end of USB cable14. Conventionally, electronic payment terminal10enables performing payment operations, for example, via a smart card, a magnetic card, a check, etc.

As described in USB standard 2.0, USB cable14comprises four conductive wires or conductive lines. Conductive wire VBUSis used for the transmission of a high reference voltage, generally of a few volts. Conductive wire VGNDis used for the transmission of a low reference voltage, generally the ground of computer12. Conductive wires D+ and D− are used for the transmission of the useful signal. Computer12comprises a communication unit16(USB Host), which will be called host unit16in the following description. Connection terminal15comprises four wires VBUS′, D+′, D−′, and VGND′ which respectively prolong wires VBUS, D+, D−, and VGNDdown to host unit16. Terminal10comprises a communication unit18(USB device), which will be called peripheral unit in the following description. Connection terminal13comprises four wires VBUS″, D+″, D−″, and VGND″ which respectively prolong wires VBUS, D+, D−, and VGNDdown to peripheral unit18. Units16and18are capable of exchanging data via USB cable14, for example, according to the data exchange protocol described in USB standard 2.0. In particular, the data exchange is initiated by host unit16.

Conventionally, resistors20,22(generally called pull-down resistors) connecting wires D+′ and D−′ to ground GND are provided at the level of computer12. On the side of terminal10and, generally, on the side of any peripheral device capable of being connected to a computer by a USB connection, a resistor24(generally called pull-up resistor) which connects wire D+″ (or, as a variation, wire D−″) to a source VDD of a high voltage generally of a few volts, is provided. Pull-up resistance24is smaller, generally by one order of magnitude, than pull-down resistances20,22. Source VDD may correspond to wire VBUS″.

When terminal10is not connected to computer12, wires D+, D+′, D−, and D−′ are substantially maintained at the potential of ground GND via resistors20,22on the side of computer12. When terminal10is connected to computer12by USB cable14, host unit16detects the presence of terminal10by the elevation of the voltage of wires D+′, D+, D+″ due to resistor24on the side of terminal10, which connects wire D+″ to source VDD. Host unit16then initiates a data exchange with terminal10, generally by the sending of an identification request to terminal10to obtain the operating parameters of the terminal (for example, request Getdescriptor defined by USB standard 2.0). In the absence of a response from terminal10, host unit16transmits twice again the identification request. If terminal10still does not answer, host unit16considers that peripheral unit18is out of order and the communication is interrupted.

Terminal10comprises a selection unit25(SW) capable of providing an operating mode selection signal S to peripheral unit18. Selection unit25may be a mechanical switch. According to the value of signal S transmitted by selection unit25, peripheral unit18operates in a normal operating mode or in a maintenance mode. In each of these modes, peripheral unit18is capable of exchanging data over USB connection14according to a specific protocol and especially expects to receive requests of a specific type.

To avoid the possibility for a maintenance operation to be performed by a conventional computer to allow for the switching between the normal operating mode and the maintenance mode to be at least partly automatically performed by the terminal, it is provided to modify the structure of the terminal so that a maintenance operation can only be performed by a specific maintenance tool having a structure different from that of a conventional computer. Further, the exchange protocol between the maintenance tool and the terminal is modified with respect to the conventional exchange protocol described in USB standard 2.0.

More specifically, in the maintenance mode, the terminal is provided to be capable of temporarily “removing” the pull-up resistor to avoid elevating the voltage of wires D+′, D+, D+″ when the terminal is connected to the maintenance tool (or to a computer) by a USB connection. Further, the maintenance tool is provided to permanently send an identification request until it receives a response from the terminal. Thereby, the terminal detects the presence of the maintenance tool by the reception of an identification request, rather than having the maintenance tool detect the presence of the terminal by an elevation of the voltage of wires D+′, D+, D+″. In normal operating mode, the terminal is capable of “placing back” the pull-up resistor to enable a conventional data exchange according to the conventional USB standard.

FIG. 2shows an embodiment of electronic payment terminal30(TPE) and of maintenance tool32(Tool). The elements common with terminal10and computer12shown inFIG. 1are designated with the same reference numerals. Terminal30comprises a communication unit34(USB Device), called peripheral unit, operating similarly to unit18except for certain points which will be described hereafter. Similarly, maintenance tool32(Tool) comprises a communication unit36(USB Host), called host unit, operating similarly to unit16except that the communication protocol implemented by unit36differs by certain points from the conventional communication protocol implemented by unit16.

Terminal30comprises a switch38arranged, for example, between resistor24and the source of reference voltage VDD. Switch38is controlled by a signal C, provided by peripheral unit34. Maintenance tool32comprises a resistor40of pull-up type connecting wire D+′ to a source of a high reference voltage VCC. Source VCC may correspond to wire VBUS′. Tool32further comprises pull-down resistor22connecting wire D−′ to ground GND, resistor20connecting wire D+′ to ground being absent. Resistors40,22ensure a proper biasing of wires D+′ and D−′ to enable transmission of data over USB connection14.

In the normal operating mode, peripheral unit34controls the turning-on of switch38so that terminal30can operate similarly to terminal10shown inFIG. 1. In particular, terminal30can then be conventionally connected to a computer by USB connection14.

In the maintenance mode, peripheral unit34controls the turning-off of switch38. In this case, if terminal30is connected to a conventional computer, such as computer12ofFIG. 1, computer12cannot detect the presence of terminal30since wires D+′ and D−′ remain grounded. No data exchange can then occur.

FIG. 3illustrates the steps of an example of an operating process of terminal30.

At step50, terminal30is powered on. Peripheral unit34controls the turning-off of switch38. Terminal30is then in the maintenance mode. The method carries on at step52.

At step52, terminal30waits for the reception of a request from maintenance tool32. If, at the end of a determined time period, no data exchange occurs between terminal30and maintenance tool32, the method carries on at step54.

At step54, peripheral unit34controls the turning-on of switch38. Terminal30then is in the normal operating mode. Once terminal30is in the normal operating mode, it is necessary, to perform a maintenance operation, to power off and back on terminal30.

At step52, if terminal30receives a request from maintenance tool32, the method carries on at step56.

At step56, a maintenance operation takes place. When it is completed, the method carries on at step54where terminal30switches to the normal operating mode.

At step52, when terminal30is connected to maintenance tool32by USB connection14, maintenance tool32is not able to detect the presence of terminal30since wire D+′ is at a high voltage via pull-up resistor40independently from the presence or the absence of terminal30. Thereby, if the conventional USB data exchange protocol was used, host unit36would believe to have detected the presence of terminal30as soon as it is powered on and would immediately transmit the identification request three times and, due to the fact that it would be very unlikely for terminal30to be present at this time, host unit36would prevent any subsequent data exchange. To be able to perform a data exchange, it is necessary to modify the initial steps of the USB protocol implemented by host unit36. For this purpose, host unit36is provided to uninterruptedly transmit an identification request until it receives a response from terminal30. Thereby, when terminal30is in the maintenance mode, peripheral unit34detects the presence of maintenance tool30by the reception of an identification request transmitted by wires D+ and D−. Peripheral unit34can then respond to host unit36and the data exchange may carry on conventionally at step56. If terminal30is in the normal operating mode, it is sufficient for it not to respond to the identification request of host unit36to prevent a maintenance operation from occurring.

According to a variation, maintenance tool32may be autonomous or itself connected to a computer.

Specific embodiments of the present invention have been described. Various alterations and modifications will occur to those skilled in the art. In particular, although the present invention has been described for the maintenance of an electronic payment terminal, it should be clear that the present invention may apply to any type of operations performed with an electronic payment terminal for which the use of a specific tool is desired to be imposed rather than that of a conventional computer. Such is the case, for example, for a diagnosis operation.