IP Library Granted Patent US 11,558,375
Granted Patent B1
US 11,558,375 · App. 16/716,156 · Granted Jan 17, 2023

Password protection with independent virtual keyboard

Inventors: Jing Cao (Nanjing, CN); Quan Yuan (Nanjing, CN); Bo Liu (Nanjing, CN)
Assignee: Trend Micro Incorporated
H04L63/0853G06F3/04886G06F21/31G06F21/34G06F21/42G06K7/1413G06K7/1417H04L9/32H04L9/3234H04L67/306
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 11,558,375
App. No.
16/716,156
Granted
Jan 17, 2023
Kind
B1
Abstract

A virtual keyboard rendered on a separate computing device is independent of the user's computer. A virtual keyboard displayed on the user's computer screen is blank without any alphanumeric characters. Another virtual keyboard displayed on the user's independent computing device has a randomly generated layout of alphanumeric characters on a keypad. The user enters a password by pressing the blank keys of the blank keyboard on his computer screen with reference to the other virtual keyboard. The position sequence of these entered keys is sent to an application on a remote server computer. The remote server computer shares a virtual keyboard having the randomly generated layout of characters with the independent computing device via an online or off-line technique. When online, an encoded image of the encrypted layout is sent to the client computer and displayed for scanning by the device. When off-line, both the application and the device generate the same random key sequence by using the same pseudo random number generator and the same seed value.

Claims (41)

1. In a client computer, a method of entering a user password, said method comprising:

inputting a user identifier for an electronic account of a user and sending said user identifier to an application of a server computer;

in response to said sending, receiving, from said application of said server computer, an encoded image representing an encrypted key sequence of alphanumeric characters having been encrypted with a public key of said user, said application generating a layout of said alphanumeric characters on a particular keyboard arrangement;

displaying said encoded image on said client computer such that it may be scanned by a camera of a mobile computing device;

scanning said encoded image by said mobile computing device and decoding said encoded image to produce said encrypted key sequence of alphanumeric characters;

decrypting said encrypted key sequence with a private key corresponding to said public key and displaying said key sequence of alphanumeric characters on a first virtual keyboard having said particular keyboard arrangement on said mobile computing device;

displaying blank keys on a second virtual keyboard having said particular keyboard arrangement on said client computer;

inputting a user selection of a plurality of said blank keys of said second virtual keyboard, said user selection forming a position sequence that represents a password of said electronic account of said user, wherein said first virtual keyboard on said mobile computing device is used as a reference but does not overlap with said second virtual keyboard on said client computer during said inputting; and

sending said position sequence to said application of said server computer, wherein said application obtains said password of said electronic account of said user from said position sequence, and wherein said client computer has no access to said password of said electronic account of said user via said input position sequence.

2. A method as recited in claim 1 wherein said encoded image is a barcode.

3. A method as recited in claim 1 wherein said encoded image is a two-dimensional barcode.

4. A method as recited in claim 1 further comprising:

mapping, by said application, said position sequence onto a decrypted encrypted key sequence to produce a user password of said account; and

logging in said client computer to said application on the basis of said input user identifier and said produced user password.

5. In a handheld mobile computing device, a method of displaying a virtual keyboard, said method comprising:

scanning with a camera of said handheld mobile computing device an encoded image on a screen of a client computer, said encoded image representing an encrypted key sequence of alphanumeric characters having been encrypted with a public key of a user in an application of a server computer, said application generating a layout of said alphanumeric characters on a particular keyboard arrangement;

decoding said encoded image to produce said encrypted key sequence of alphanumeric characters;

decrypting said encrypted key sequence with a private key corresponding to said public key to produce a key sequence of alphanumeric characters;

generating a first virtual keyboard having said particular keyboard arrangement and locating said key sequence in a predetermined order on keys of said first virtual keyboard;

displaying said first virtual keyboard having said key sequence of alphanumeric characters on said handheld mobile computing device; and

receiving input into a blank second virtual keyboard having said particular keyboard arrangement on said client computer a position sequence, wherein during said receiving said first virtual keyboard is used as a reference but does not overlay said blank second virtual keyboard, wherein said position sequence is sent to said application of said server computer, wherein a mapping of said position sequence onto said layout generates a password of an electronic account of a user of said client computer, and wherein said client computer has no access to said password corresponding to said electronic account of said user via said input position sequence.

6. A method as recited in claim 5 wherein said encoded image is a barcode.

7. A method as recited in claim 5 wherein said encoded image is a two-dimensional barcode.

8. A method as recited in claim 5 further comprising:

encrypting, by an application of a server computer, a random key sequence to produce said encrypted key sequence; and

encoding said encrypted key sequence and transmitting said encoded encrypted key sequence to said client computer.

9. In a server computer, a method of receiving a user password, said method comprising:

receiving a user identifier corresponding to electronic account of user over a network connection from a client computer;

retrieving a public key from a database using said user identifier;

generating a random sequence of alphanumeric characters, said random sequence representing a particular keyboard arrangement;

encrypting said random sequence with said public key and encoding said random sequence to produce an encoded image;

sending said encoded image to said client computer for display;

scanning said encoded image displayed on said client computer by a mobile computing device and decoding said encoded image to produce said encrypted key sequence of alphanumeric characters;

decrypting said encrypted key sequence with a private key corresponding to said public key and displaying said key sequence of alphanumeric characters on a first virtual keyboard having said particular keyboard arrangement on said mobile computing device;

displaying blank keys on a second virtual keyboard having said particular keyboard arrangement on said client computer, wherein said first virtual keyboard on said mobile computing device is used as a reference but does not overlap with said second virtual keyboard on said client computer during input of a position sequence on said client computer, said position sequence representing a password of an electronic account of said user;

receiving said position sequence from said client computer; and

determining said password of said electronic account by mapping said position sequence onto said random sequence of alphanumeric characters, and wherein said client computer has no access to said password corresponding to said electronic account of said user via said input position sequence.

10. A method as recited in claim 9 wherein said encoded image is a barcode.

11. A method as recited in claim 9 wherein said encoded image is a two-dimensional barcode.

12. A method as recited in claim 9 further comprising:

logging in said client computer to an application of said server computer on the basis of said input user identifier and said determined user password.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Feb 11, 2020
From: CAO, JING; YUAN, QUAN; LIU, BO
To: TREND MICRO INC,
Reel/Frame 051781/0898 →
Cited By (3)
US 12,367,323 US 12,547,701 US 12,591,314