IP Library Granted Patent US 11,405,367
Granted Patent B1
US 11,405,367 · App. 16/358,491 · Granted Aug 2, 2022

Secure computer peripheral devices

Inventors: Chengi Jimmy Kuo (Manhattan Beach, CA); Haik Mesropian (Glendale, CA); Petrus Johannes Viljoen (Manhattan Beach, CA); David Kane (Los Angeles, CA)
Assignee: NortonLifeLock Inc.
H04L63/0428G06F21/606G06F21/83G06F21/85H04L9/0861H04L9/30H04W12/04
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,405,367
App. No.
16/358,491
Granted
Aug 2, 2022
Kind
B1
Abstract

A method for improving security of peripheral devices is described. The method includes displaying, by a processor of a computing device, a code, receiving, by the processor, a user input after displaying the code, comparing, by the processor, the user input to the displayed code, and establishing, by the processor, secure communication between a peripheral device and a software application at the computing device based at least in part on a result of the comparing the user input to the displayed code.

Claims (56)

1. A method for improving security of peripheral devices, comprising:

identifying, by a processor of a computing device, execution of a software application at the computing device;

determining that the software application is a secure software application based at least in part on a list of secure software applications including the software application;

generating, by the software application at the computing device, a code, wherein generating the code is based at least in part on determining that the software application is a secure software application;

displaying, by the processor of the computing device, the code based at least in part on the generating;

receiving, by the processor, a user input after displaying the code;

comparing, by the processor, the user input to the displayed code;

determining, based at least in part on the comparing, that the user input and the displayed code match; and

establishing, by the processor, secure communications between a peripheral device and the software application at the computing device based at least in part on a result of the comparing the user input to the displayed code and determining that the user input and the displayed code match.

2. The method of claim 1 , wherein displaying the code further comprises:

displaying the code on a portion of a user interface of the software application displayed on a display of the computing device, instructing the peripheral device to display the code on a display of the peripheral device, sending the code to a designated remote device, or any combination thereof.

3. The method of claim 1 , wherein receiving the user input further comprises:

receiving the user input via the peripheral device.

4. The method of claim 1 , further comprising:

initiating the software application.

5. The method of claim 1 , further comprising:

listening, based at least in part on displaying the code, for the user input, wherein receiving the user input is based at least in part on the listening.

6. The method of claim 1 , wherein the peripheral device includes a universal serial bus (USB) peripheral device connected to the computing device.

7. The method of claim 1 , further comprising:

determining a non-secure software application gains focus of an operating system of the computing device; and

implementing default communications between the peripheral device and the computing device while the non-secure software application has the focus of the operating system, the default communications including unencrypted communications, the secure communications including encrypted communications.

8. A computing device configured for improving security of peripheral devices, comprising:

a processor;

memory in electronic communication with the processor; and

instructions stored in the memory, the instructions being executable by the processor to:

identify, by the processor of the computing device, execution of a software application at the computing device;

determine that the software application is a secure software application based at least in part on a list of secure software applications including the software application;

generate, by the software application, a code, wherein generating the code is based at least in part on determining that the software application is a secure software application;

display the code based at least in part on the generating;

receive a user input after displaying the code;

compare the user input to the displayed code;

determine, based at least in part on the comparing, that the user input and the displayed code match; and

establish secure communication between a peripheral device and the software application at the computing device based at least in part on a result of the comparing the user input to the displayed code and determining that the user input and the displayed code match.

9. The device of claim 8 , wherein the instructions executable by the processor to display the code are further executable by the processor to:

display the code on a portion of a user interface of the software application displayed on a display of the computing device, instruct the peripheral device to display the code on a display of the peripheral device, send the code to a designated remote device, or any combination thereof.

10. The device of claim 8 , wherein the instructions executable by the processor to receive the user input are further executable by the processor to:

receive the user input via the peripheral device.

11. The device of claim 8 , wherein the instructions are executable by the processor to:

initiate the software application.

12. The device of claim 8 , wherein the instructions are executable by the processor to:

listen, based at least in part on displaying the code, for the user input, wherein receiving the user input is based at least in part on the listening.

13. The device of claim 8 , wherein the peripheral device includes a universal serial bus (USB) peripheral device connected to the computing device.

14. The device of claim 8 , wherein the instructions are executable by the processor to:

determine a non-secure software application gains focus of an operating system of the computing device; and

implement default communications between the peripheral device and the computing device while the non-secure software application has the focus of the operating system, the default communications including unencrypted communications, the secure communications including encrypted communications.

15. A computer-program product for improving security of peripheral devices, the computer-program product comprising a non-transitory computer-readable medium storing instructions thereon, the instructions being executable by a processor of a computing device to:

identify, by the processor of the computing device, execution of a software application at the computing device;

determine that the software application is a secure software application based at least in part on a list of secure software applications including the software application;

generate, by the software application, a code, wherein generating the code is based at least in part on determining that the software application is a secure software application;

display the code based at least in part on the generating;

receive a user input after displaying the code;

compare the user input to the displayed code;

determine, based at least in part on the comparing, that the user input and the displayed code match; and

establish secure communication between a peripheral device and the software application at the computing device based at least in part on a result of the comparing the user input to the displayed code.

16. The computer-program product of claim 15 , wherein the instructions executable by the processor to display the code are further executable by the processor to:

display the code on a portion of a user interface of the software application displayed on a display of the computing device, instruct the peripheral device to display the code on a display of the peripheral device, send the code to a designated remote device, or any combination thereof.

Assignments (4)
NOTICE OF SUCCESSION OF AGENCY (REEL 050926 / FRAME 0560) Recorded Sep 13, 2022
From: JPMORGAN CHASE BANK, N.A.
To: BANK OF AMERICA, N.A., AS COLLATERAL AGENT
Reel/Frame 061422/0371 →
SECURITY AGREEMENT Recorded Sep 13, 2022
From: NORTONLIFELOCK INC.
To: BANK OF AMERICA, N.A., AS COLLATERAL AGENT
Reel/Frame 062220/0001 →
CHANGE OF NAME Recorded Jan 30, 2020
From: SYMANTEC CORPORATION
To: NORTONLIFELOCK INC.
Reel/Frame 051759/0845 →
SECURITY AGREEMENT Recorded Nov 4, 2019
From: SYMANTEC CORPORATION; BLUE COAT LLC; LIFELOCK, INC,; SYMANTEC OPERATING CORPORATION
To: JPMORGAN, N.A.
Reel/Frame 050926/0560 →