This application claims the benefit, under 35 U.S.C. §365 of International Application PCT/EP2011/059948, filed Jun. 15, 2011, which was published in accordance with PCI Article 21(2) on Dec. 22, 2011 in English and which claims the benefit of French patent application No. 1054742, filed Jun. 15, 2010.
The invention relates to the general domain of user authentication notably via the entry of personal data such as a password. More particularly, the invention relates to a method and device for secured entry of personal data.
During the authentication of a user on a remote server using a browser, a web page presents fields for entry of a login and a password as well as a key to validate the entry of these items of personal data. The personal data are transmitted via the browser to the remote server. The remote server verifies the validity of data and thus authenticates the user. If the communication between the remote server and the browser is generally protected by encryption, the communication between the input peripheral device such as a keyboard or a mouse and the graphical user interface such as a browser is generally not secured. “Key-loggers” use this security weakness to spy on a user: they furtively record everything typed on the keyboard, the coordinates of a mouse click, the name of the running application, the URL of a browser, the date and time, then transmit this data to the author of the attack. Thus after analysis of the transmitted data, the author of the attack has access to the logins, passwords and other personal data that is usually well concealed. Other techniques of “key-loggers” use screen captures that enable the position of a mouse in a graphical window to be recorded. This capture is either continuous (which means filming the screen of the user), or triggered for example by a mouse click, which enables the quantity of data to be reduced while conserving their pertinence.
The key-loggers can be classed according to 3 categories:
Application methods exist to detect key-loggers but they do not enable hardware key-loggers or low level software key-loggers to be detected.
Other methods consist in encrypting communications between the keyboard and the user interface but these methods are inefficient in the light of hardware key loggers.
Finally, the use of a virtual keyboard enables the key-loggers to be bypassed as the user selects with a mouse the keys of the virtual keyboard to enter data. However, there are spy methods that carry out screen captures at each mouse click or that record the coordinates of the mouse click.
These methods present the technical problem of protection of personal data, such as logins and passwords, transmitted between an entry peripheral (such as a keyboard or a mouse) and a graphical user interface, particularly in relation to key-loggers, mouse click coordinates loggers or screen capture loggers.
The purpose of the invention is to overcome at least one of the disadvantages of the prior art by proposing a method for secured entry of personal data such that it comprises, for each item of personal data to be entered, a step of presentation of a virtual keyboard comprising keys and a first cursor, and a step of selection of a key corresponding to an item of personal data, remarkable in that the virtual keyboard also comprises at least one dummy cursor (501) and in that the position (502) on the virtual keyboard of the at least one dummy cursor (501) depends on the position of the first cursor (502).
According to a variant, the selection of a key is in accordance with the position of the first cursor on the key of the virtual keyboard during a time period greater than a first threshold.
Hence, the invention enables a password to be entered without using the keyboard and without clicking with the mouse rendering ineffective, the key-loggers, the mouse-click coordinate loggers or the screen captures triggered by the mouse-click.
According to a particularly advantageous aspect of the invention, the position of keys on the virtual keyboard presented for two successive items of personal information is the result of a random permutation.
According to another particularly advantageous aspect of the invention, it also comprises a step of presentation of a virtual keyboard after a period of inactivity of the first cursor greater than a second threshold, the position of the keys on the virtual keyboard presented after a period of inactivity of the first cursor being the result of a random permutation.
Thus, in these two highly advantageous modes of the invention, a screen capture of the virtual keyboard corresponding to each of the key positions is required by the author of the attack in order to find the password.
According to a particular characteristic of the invention, the movement on the virtual keyboard of the dummy cursor(s) depends on the movement of the first cursor and in particular randomly depending on the movement of the first cursor. According to a particular characteristic of the invention, the speed of the movement on the virtual keyboard of the dummy cursor(s) depends on the speed of the movement of the first cursor and in particular randomly depending on the speed of the movement of the first cursor.
Thus, in these highly advantageous modes of the invention, the screen capture of the virtual keyboard does not provide the author of the attack with the means to find the position of the first cursor on the virtual keyboard among the dummy cursors.
The invention also relates to a device for secured entry of personal data comprising a means for presentation of a virtual keyboard comprising keys and a first cursor, and a means for selection of a key corresponding to an item of personal information, remarkable in that the virtual keyboard also comprises at least one dummy cursor (501) and in that the position (502) on the virtual keyboard of the at least one dummy cursor (501) depends on the position of the first cursor (502).
The particular characteristics and advantages of the device for secured entry of personal data being the same as those of the method for secured entry of personal data, they are not repeated here.
The invention will be better understood and illustrated by means of embodiments and advantageous implementations, by no means limiting, with reference to the figures in the appendix, wherein:
The general principle of the invention is based on the use of a virtual keyboard and on the selection of keys on the virtual keyboard triggered by a timeout. In the case for example of a key-logger, the use of a virtual keyboard enables the use of a hardware keyboard to be overcome, thus rendering a key-logger ineffective. In addition, in the case of a more sophisticated spying device that records a screen capture as soon as a virtual keyboard is presented to a user as well as the coordinates of a mouse-click, the selection of keys on a virtual keyboard triggered by a timeout that is to say without a mouse-click, makes this device type ineffective.
In computing, a click is, by onomatopoeia, pressure followed by a quick release, exerted by the user on one of the buttons of a mouse, or more generally of a pointing device.
According to the method of the invention, a user will repeat the following steps for each number of the password to be entered:
According to variants, the keys are not selected in the following cases:
In these cases, the message shown in
The end of the entry of the password is validated by the selection of the “OK” key after the entry of 4 numbers composing the password. This selection is triggered, in accordance with a characteristic of the invention, if the curser is positioned over the “OK” key for a period greater than a threshold of one second. According to a variant, the selection of this key is possible by a click of the mouse over the key of the virtual keyboard or via the “Enter” key of the hardware keyboard.
In addition, to increase the difficulty of interception of data between a graphical interface and an entry peripheral, the position of keys on the virtual keyboard presented for each of the 4 numbers to be entered is modified. According to a preferred embodiment the position of keys is the result of a random permutation.
(0, 1, 2, 3, 4, 5, 6, 7, 8, 9)→σ0(0, 2, 9, 1, 3, 6, 5, 7, 4, 8)→σ1(1, 9, 0, 2, 8, 7, 5, 4, 3, 6)→σ2(8, 6, 3, 5, 1, 0, 7, 9, 4, 2)→σ3(2, 4, 6, 9, 8, 1, 5, 3, 7, 0)
In addition, according to a variant, dummy keys are presented on the keyboard, these keys (noted as _) are inserted into the random permutations. The method shown in
Thus, even if the spy device is capable of detecting Ie selection of keys on a virtual keyboard according to the invention, it will also need to capture 4 screens corresponding to each of the 4 successive positions of keys in order to be able to find the password from coordinates of the cursor on the virtual screen. Other variants implement periodic dynamic permutations. Thus if the real cursor remains inactive for a certain time for example over an inactive key or outside the window of the virtual keyboard, the position of keys on the virtual keyboard is advantageously dynamically permuted according to a new random permutation. Or again, after a period defined time period for example every minute, a new virtual keyboard is presented. Thus more than 4 captures will be necessary to find the password and the coordinates of selected keys must be analysed by association with one of the screen captures.
However, the improvements presented via these variants implementing a modification of the virtual keyboard may be insufficient faced with data interception devices on a graphical interface when these are adapted to perform a screen capture as soon as a virtual keyboard application is started then periodically for example every second.
According to a particular characteristic of the invention, the virtual keyboard also comprises at least one dummy cursor. These dummy cursors are placed over the keys of the virtual keyboard. Thus on a screen capture such as that shown in
The implementation of this variant requires the creation of dummy cursors identical to the real cursor in the virtual keyboard application. The cursors are represented on the screen by an icon. The use and management of a cursor icon displaced by a mouse in a software application is carried out according to two preferred modes. According to a first mode, the application uses the icon of the operating system typically the hand or the arrow in Windows. According to a second embodiment, the application uses its own icon that may be different to that of the cursor of the operating system. According to the first mode, the application recovers the icon of the real cursor to display dummy cursors. According to the second mode, the application exchanges the icon of the real cursor for the cursor of the application when the real cursor is placed in the graphical window of the virtual keyboard application. In addition, for a better security of the display of identical dummy and real cursors, the application periodically verifies, for example every 100 ms, that the icon of the real cursor is not modified by another application particularly by a password spying application. The dummy cursors would then be different from the real cursor and the password could be detected. If the virtual keyboard application detects a modification of the icon of the real keyboard, it stops.
According to an improvement, as soon as a user places the real cursor over a key of the virtual keyboard with a dummy cursor, the application deletes the dummy cursor so that 2 cursors are not present simultaneously over a key. When the user moves the real cursor from this key, the dummy cursor is again displayed by the application. According to another improvement, the position of dummy cursors is dissymmetric, that is to say they must not be positioned over a same line of the virtual keyboard, or on the same coordinates of keyboard keys, for example under the number 6 and to the left of the number 3 as represented in
According to another particular characteristic of the invention, the position on the virtual keyboard of the dummy cursor(s) depends on the position of the first cursor. Thus for a better protection of the entry of the password, the virtual keyboard shows mobile dummy cursors as opposed to static dummy cursors. When the real cursor is displaced over the keyboard, the dummy cursors are also displaced in different directions. When the real cursor is placed over a key, the dummy cursors are also placed over distinct keys. As the user is aware of the movement of the mouse, he is able to differentiate the real cursor from the dummy cursors. For instance, a user can perform a circle with his mouse and identified the real cursor as the cursor following a circle movement by opposition to dummy cursor displaced in different directions. According to an improvement, the movement over the virtual keyboard of the dummy cursor(s) depends on the movement of the first cursor, and in particular depends randomly on the movement of the first cursor.
According to an improvement, the speed of the movement of dummy cursors depends on the speed of the movement of the real cursor. The speed of dummy cursors and real cursor compared to the speed applied by the user to the mouse is another way for a user to differentiate real cursor from dummy cursors.
The particular characteristics and advantages of the device for secured entry of personal data being the same as those of the method for secured entry of personal data, they are not repeated here.
The device is not limited to the embodiment described in
Naturally, the invention is not limited to the embodiments previously described. In particular, the invention is compatible with a virtual keyboard comprising keys corresponding to alphanumeric characters and symbols.
According to another variant, another pointing device than the mouse is used among which can be cited a tactile screen, or the finger on a tactile pad.
Number | Date | Country | Kind |
---|---|---|---|
10 54742 | Jun 2010 | FR | national |
Filing Document | Filing Date | Country | Kind | 371c Date |
---|---|---|---|---|
PCT/EP2011/059948 | 6/15/2011 | WO | 00 | 12/14/2012 |
Publishing Document | Publishing Date | Country | Kind |
---|---|---|---|
WO2011/157754 | 12/22/2011 | WO | A |
Number | Name | Date | Kind |
---|---|---|---|
5168269 | Harlan | Dec 1992 | A |
5917472 | Perala | Jun 1999 | A |
6408391 | Huff et al. | Jun 2002 | B1 |
6563498 | Hirata et al. | May 2003 | B1 |
7143440 | Ginzberg | Nov 2006 | B2 |
7451133 | Yoaz et al. | Nov 2008 | B2 |
20020188872 | Willeby | Dec 2002 | A1 |
20020190946 | Metzger | Dec 2002 | A1 |
20040080529 | Wojcik | Apr 2004 | A1 |
20040111646 | Little | Jun 2004 | A1 |
20040257338 | Maille et al. | Dec 2004 | A1 |
20050131880 | Yoaz et al. | Jun 2005 | A1 |
20060164693 | Matsumoto et al. | Jul 2006 | A1 |
20060206919 | Montgomery et al. | Sep 2006 | A1 |
20060242421 | Hsu | Oct 2006 | A1 |
20070182714 | Pemmaraju | Aug 2007 | A1 |
20070209014 | Youmtoub | Sep 2007 | A1 |
20080098222 | Zilberman | Apr 2008 | A1 |
20080115078 | Girgaonkar | May 2008 | A1 |
20090006941 | Yoshida | Jan 2009 | A1 |
20090106825 | Cerruti et al. | Apr 2009 | A1 |
20090106827 | Cerruti et al. | Apr 2009 | A1 |
20100085313 | Rider | Apr 2010 | A1 |
20100315328 | Marcus et al. | Dec 2010 | A1 |
20110202493 | Li | Aug 2011 | A1 |
20130151967 | Kerr et al. | Jun 2013 | A1 |
Number | Date | Country |
---|---|---|
1298143 | Jun 2001 | CN |
1333495 | Jan 2002 | CN |
101183412 | May 2008 | CN |
2010423 | Jan 1990 | JP |
2001350590 | Dec 2001 | JP |
2006343873 | Dec 2006 | JP |
2007010557 | Aug 2007 | KR |
WO2004077194 | Sep 2004 | WO |
Entry |
---|
BeaverPants, Dec. 31, 2002, Real Time Forum, pp. 1-6. |
Sagiroglu et al, Keyloggers, IEEE, 2009, pp. 10-17. |
Olzak, Keystroke Logging, IEEE, Apr. 2008, pp. 1-13. |
Crossan et al, Head Tilting for Interaction in Mobile Contexts, ACM, Sep. 18, 2009, pp. 1-10. |
Voelter, Implementing Feature Variablity for Models and Code with Projectional Language Workbenches, ACM, 2010, pp. 41-48. |
“The Password Input Method which Used a Dummy Cursor” Research Disclosure Database No. 4551009, ISN 0374-4353, Mar. 2002. |
Number | Date | Country | |
---|---|---|---|
20130091583 A1 | Apr 2013 | US |