# US 8,752,164 B2 · Language independent login

> Agents: this data is available as JSON from the patentgrep API and MCP server — see https://patentgrep.com/llms.txt

- Number: US 8,752,164 B2
- Document ID: US8752164B2
- Status: Granted
- Kind: B2
- Application number: 12/126,905
- Filed: 2008-05-25
- Published: 2009-07-09
- Granted: 2014-06-10
- Earliest claimed: 2007-06-08
- Assignees: International Business Machines Corporation
- Applicants: Oded Dubovsky; Itzhack Goldberg; Ido Levy; Ilan Shimony; Grant D. Williamson
- Inventors: Oded Dubovsky; Itzhack Goldberg; Ido Levy; Ilan Shimony; Grant D. Williamson
- Web page: https://patentgrep.com/patent/US8752164B2

## CPC

- G06F 21/36: by graphic or iconic representation
- G06F: ELECTRIC DIGITAL DATA PROCESSING (computer systems based on specific computational models G06N)

## Abstract

The present invention prevents illegitimate access to a user computing machine. A method in accordance with an embodiment includes: setting an authentication routine in the user computing machine; generating a virtual keyboard on the user computing machine; entering a user identification through the virtual keyboard, the user identification being entered according to a virtual keyboard form factor; comparing the entered user identification with a secure user identification previously stored in the user computing machine; and validating the user access to the user computing machine if a match occurs, otherwise denying access.

## Claims

### Claim 1

A method for preventing illegitimate access to a user computing machine comprising:
setting an authentication routine in the user computing machine;
generating a virtual keyboard on the user computing machine;
entering a user identification through the virtual keyboard, the user identification being entered according to a virtual keyboard form factor;
comparing the entered user identification with a secure user identification previously stored in the user computing machine; and
validating the user access to the user computing machine if a match occurs, otherwise denying access;
wherein the secure user identification is produced using a computation of a mathematical formula combined with a predefined sequence of a location of keys on the virtual keyboard, the mathematical formula indicating which row positions (RP) on the virtual keyboard are to be selected by the user, wherein the mathematical formula is based on a character (CH) and a number of rows (NbR) available on the virtual keyboard, wherein each selected row position (RP) is given by: RP=(CH modulo NbR)+1, and the predefined sequence indicating an intersecting column position in each selected row on the virtual keyboard to be selected by the user.

### Claim 2 (depends on 1)

The method of claim 1, wherein the virtual keyboard is randomly generated.

### Claim 3 (depends on 1)

The method of claim 1, wherein the virtual keyboard is displayed on a screen of the user computing machine.

### Claim 4 (depends on 1)

The method of claim 1, wherein the user identification is entered on the virtual keyboard using a mouse.

### Claim 5 (depends on 1)

The method of claim 1, wherein the user identification is entered on the virtual keyboard using scroll keys.

### Claim 6 (depends on 1)

The method of claim 1, further comprising an initial phase of configuring the authentication routine for at least one user on the computing machine, the configuration phase comprising:
customizing a layout of a virtual keyboard to determine a user arrangement of rows and columns;
generating the mathematical formula reflecting a row arrangement of the customized virtual keyboard layout;
defining the predefined sequence reflecting key assignments on columns of the customized virtual keyboard layout;
combining the mathematical formula with the predefined sequence to generate a user secure information in a symbolic representation; and
storing the symbolic representation of the user secure information.

### Claim 7 (depends on 1)

The method of claim 1, wherein the user computing machine is coupled to a server of a computer system network, and wherein the secure user identification is stored in the server.

### Claim 8

A computer system for performing a method for preventing illegitimate access to a user computing machine, the method comprising:
setting an authentication routine in the user computing machine;
generating, using the computer machine, a virtual keyboard on the user computing machine;
entering a user identification through the virtual keyboard, the user identification being entered according to a virtual keyboard form factor;
comparing, using the computer machine, the entered user identification with a secure user identification previously stored in the user computing machine; and
validating, using the computer machine, the user access to the user computing machine if a match occurs, otherwise denying access;
wherein the secure user identification is produced using a computation of a mathematical formula combined with a predefined sequence of a location of keys on the virtual keyboard, the mathematical formula indicating which row positions (RP) on the virtual keyboard are to be selected by the user, wherein the mathematical formula is based on a character (CH) and a number of rows (NbR) available on the virtual keyboard, wherein each selected row position (RP) is given by: RP=(CH modulo NbR)+1, and the predefined sequence indicating an intersecting column position in each selected row on the virtual keyboard to be selected by the user.

### Claim 9 (depends on 8)

The system of claim 8, wherein the virtual keyboard is randomly generated.

### Claim 10 (depends on 8)

The system of claim 8, wherein the virtual keyboard is displayed on a screen of the user computing machine.

### Claim 11 (depends on 8)

The system of claim 8, wherein the user identification is entered on the virtual keyboard using a mouse.

### Claim 12 (depends on 8)

The system of claim 8, wherein the user identification is entered on the virtual keyboard using scroll keys.

### Claim 13 (depends on 8)

The system of claim 8, the method further comprising initially configuring the authentication routine for at least one user on the computing machine, the configuring comprising:
customizing a layout of a virtual keyboard to determine a user arrangement of rows and columns;
generating the mathematical formula reflecting a row arrangement of the customized virtual keyboard layout;
defining the predefined sequence reflecting key assignments on columns of the customized virtual keyboard layout;
combining the mathematical formula with the predefined sequence to generate a user secure information in a symbolic representation; and
storing the symbolic representation of the user secure information.

### Claim 14 (depends on 8)

The system of claim 8, wherein the user computing machine is coupled to a server of a computer system network, and wherein the secure user identification is stored in the server.

### Claim 15

A computer program stored on a non-transitory computer readable medium, which when executed, prevents illegitimate access to a user computing machine, comprising program code for:
setting an authentication routine in the user computing machine;
generating a virtual keyboard on the user computing machine;
entering a user identification through the virtual keyboard, the user identification being entered according to a virtual keyboard form factor;
comparing the entered user identification with a secure user identification previously stored in the user computing machine; and
validating the user access to the user computing machine if a match occurs, otherwise denying access;
wherein the secure user identification is produced using a computation of a mathematical formula combined with a predefined sequence of a location of keys on the virtual keyboard, the mathematical formula indicating which row positions (RP) on the virtual keyboard are to be selected by the user, wherein the mathematical formula is based on a character (CH) and a number of rows (NbR) available on the virtual keyboard, wherein each selected row position (RP) is given by: RP=(CH modulo NbR)+1, and the predefined sequence indicating an intersecting column position in each selected row on the virtual keyboard to be selected by the user.
