IP Library Granted Patent US 11,361,068
Granted Patent B2
US 11,361,068 · App. 16/698,859 · Granted Jun 14, 2022

Securing passwords by using dummy characters

Inventors: Parminder Singh Sethi (Ludhiana, IN); Lakshmi Saroja Nalam (Bangalore, IN)
Assignee: Dell Products L.P.
G06F21/46H04L63/083
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,361,068
App. No.
16/698,859
Granted
Jun 14, 2022
Kind
B2
Abstract

Various systems and methods are provided for using dummy characters to provide enhanced security of a user's login credentials. The functionality disclosed herein provides specific steps for the creation, evaluation, storage, and use of such dummy characters in conjunction with a user's login credentials. Dummy characters can be thought of as characters that are not part of a user's actual password, but which are mixed in and around the actual characters when the password is being entered, in order to protect a user's true password from prying eyes and nefarious actors. Dummy characters can be associated with a specific user and/or a specific device or devices associated with a specific user. The functionality provided herein prevents a nefarious actor from simply repeating an entire password string (including the dummy characters) on a device that is not associated with the user whose credentials the nefarious actor is attempting to misappropriate.

Claims (137)

1. A method comprising:

receiving a password and dummy characters associated with the password;

evaluating the dummy characters, wherein

evaluating the dummy characters comprises

for each of the dummy characters, identifying a list of characters on an input device that surround the respective dummy character on the input device, in order to create a plurality of lists of surrounding characters;

determining a logical intersection of the plurality of lists with each other, in order to identify a list of preferred dummy characters;

identifying a list of most commonly used characters with respect to an application associated with the password;

identifying one or more strong dummy characters for the password, wherein

the one or more strong dummy characters are identified by determining a logical intersection of the list of preferred dummy characters and the list of most commonly used characters;

identifying one or more medium-strength dummy characters for the password, wherein

the one or more medium-strength dummy characters are identified by determining a logical union of the list of preferred dummy characters and the list of most commonly used characters; and

identifying one or more weak dummy characters for the password, wherein

the one or more weak dummy characters are identified by identifying one or more characters that are not among the strong dummy characters or the medium-strength dummy characters;

storing the password and the dummy characters in a non-volatile memory;

receiving a login request, wherein

the login request comprises a password string;

processing the login request, wherein

processing the login request comprises

retrieving the password and the dummy characters from the non-volatile memory,

removing the dummy characters from the password string to create a modified password string, and

comparing the modified password string to the password to determine whether to approve the login request.

2. The method of claim 1 , wherein

evaluating the dummy characters further comprises determining whether any of the dummy characters are used in the password; and

in response to a determination that at least one of the dummy characters are used in the password, notifying a user that the dummy characters and the password are an invalid combination.

3. The method of claim 1 , wherein

evaluating the dummy characters further comprises determining whether each of the dummy characters is one of the one or more strong dummy characters, one of the one or more medium-strength dummy characters, or one of the one or more weak dummy characters.

4. The method of claim 1 , wherein

the one or more dummy characters are associated with a user of the input device, wherein the user is identified, at least in part, by a unique user identifier (“UUID”) value;

the storing further comprises storing the UUID associated with the one or more dummy characters; and

the retrieving the password and the dummy characters from the non-volatile memory is based, at least in part, on the UUID value.

5. The method of claim 1 , wherein

evaluating the dummy characters further comprises

determining whether each of the dummy characters is one of the one or more weak dummy characters; and

in response to determining that any of the dummy characters is one of the one or more

weak dummy characters, suggesting one or more replacement dummy characters, wherein

each replacement dummy character is a strong dummy character or a medium-strength dummy character.

6. The method of claim 1 wherein

evaluating the dummy characters further comprises

determining whether each of the dummy characters is one of the one or more strong dummy characters, one of the one or more medium-strength dummy characters, or one of the one or more weak dummy characters; and

in response to determining that any of the dummy characters is one of the one or more

weak dummy characters, providing a notification to a user, wherein

the notification requests the user to change the weak dummy character.

7. The method of claim 1 , wherein

the one or more dummy characters are associated with a specific device, wherein

the specific device is identified, at least in part, by a first unique device identification (“UDID”) value;

the storing further comprises storing the first UDID associated with the one or more dummy characters;

the login request further comprises information identifying a user device upon which the login request was entered, wherein

the user device is identified, at least in part, by a second unique device identification (“UDID”) value; and

the retrieving the password and the dummy characters from the non-volatile memory is based, at least in part, on the second UUID value.

8. A computing device comprising:

a touchscreen display device;

one or more processors; and

one or more non-transitory computer-readable storage media to store instructions executable by the one or more processors to perform operations comprising:

receiving a password and dummy characters associated with the password;

evaluating the dummy characters, wherein

evaluating the dummy characters comprises

for each of the dummy characters, identifying a list of characters on an input device that surround the respective dummy character on the input device, in order to create a plurality of lists of surrounding characters;

determining a logical intersection of the plurality of lists with each other, in order to identify a list of preferred dummy characters;

identifying a list of most commonly used characters with respect to an application associated with the password;

identifying one or more strong dummy characters for the password, wherein

the one or more strong dummy characters are identified by determining a logical intersection of the list of preferred dummy characters and the list of most commonly used characters;

identifying one or more medium-strength dummy characters for the password, wherein

the one or more medium-strength dummy characters are identified by determining a logical union of the list of preferred dummy characters and the list of most commonly used characters; and

identifying one or more weak dummy characters for the password, wherein

the one or more weak dummy characters are identified by identifying one or more characters that are not among the strong dummy characters or the medium-strength dummy characters;

storing the password and the dummy characters in a non-volatile memory;

receiving a login request, wherein

the login request comprises a password string;

processing the login request, wherein

processing the login request comprises

retrieving the password and the dummy characters from the non-volatile memory,

removing the dummy characters from the password string to create a modified password string, and

comparing the modified password string to the password to determine whether to approve the login request.

9. The computing device of claim 8 , wherein

evaluating the dummy characters further comprises determining whether any of the dummy characters are used in the password; and

in response to a determination that at least one of the dummy characters are used in the password, notifying a user that the dummy characters and the password are an invalid combination.

10. The computing device of claim 8 , wherein

evaluating the dummy characters further comprises determining whether each of the dummy characters is one of the one or more strong dummy characters, one of the one or more medium-strength dummy characters, or one of the one or more weak dummy characters.

11. The computing device of claim 8 , wherein

identifying the list of characters that surround the respective dummy character further comprises

selecting only characters that are immediately adjacent to a key corresponding to the respective dummy character on the input device.

12. The computing device of claim 8 , wherein

evaluating the dummy characters further comprises

determining whether each of the dummy characters is one of the one or more weak dummy characters; and

in response to determining that any of the dummy characters is one of the one or more

weak dummy characters, suggesting one or more replacement dummy characters, wherein

each replacement dummy character is a strong dummy character or a medium-strength dummy character.

13. The computing device of claim 8 , wherein

evaluating the dummy characters further comprises

determining whether each of the dummy characters is one of the one or more strong dummy characters, one of the one or more medium-strength dummy characters, or one of the one or more weak dummy characters; and

in response to determining that any of the dummy characters is one of the one or more weak dummy characters, providing a notification to a user, wherein

the notification requests the user to change the weak dummy character.

14. The computing device of claim 8 , wherein

the one or more dummy characters are associated with a specific device, wherein

the specific device is identified, at least in part, by a first unique device identification (“UDID”) value;

the storing further comprises storing the first UDID associated with the one or more dummy characters;

the login request further comprises information identifying a user device upon which the login request was entered, wherein

the user device is identified, at least in part, by a second unique device identification (“UDID”) value; and

the retrieving the password and the dummy characters from the non-volatile memory is based, at least in part, on the second UUID value.

15. One or more non-transitory computer-readable storage media to store instructions executable by one or more processors to perform operations comprising:

receiving a password and dummy characters associated with the password;

evaluating the dummy characters, wherein

evaluating the dummy characters comprises

for each of the dummy characters, identifying a list of characters on an input device that surround the respective dummy character on the input device, in order to create a plurality of lists of surrounding characters;

determining a logical intersection of the plurality of lists with each other, in order to identify a list of preferred dummy characters;

identifying a list of most commonly used characters with respect to an application associated with the password;

identifying one or more strong dummy characters for the password, wherein

the one or more strong dummy characters are identified by determining a logical intersection of the list of preferred dummy characters and the list of most commonly used characters;

identifying one or more medium-strength dummy characters for the password, wherein

the one or more medium-strength dummy characters are identified by determining a logical union of the list of preferred dummy characters and the list of most commonly used characters; and

identifying one or more weak dummy characters for the password, wherein

the one or more weak dummy characters are identified by identifying one or more characters that are not among the strong dummy characters or the medium-strength dummy characters;

storing the password and the dummy characters in a non-volatile memory;

receiving a login request, wherein

the login request comprises a password string;

processing the login request, wherein

processing the login request comprises

retrieving the password and the dummy characters from the non-volatile memory,

removing the dummy characters from the password string to create a modified password string, and

comparing the modified password string to the password to determine whether to approve the login request.

16. The one or more non-transitory computer-readable storage media of claim 15 , wherein

evaluating the dummy characters further comprises determining whether any of the dummy characters are used in the password; and

in response to a determination that at least one of the dummy characters are used in the password, notifying a user that the dummy characters and the password are an invalid combination.

17. The one or more non-transitory computer-readable storage media of claim 15 , wherein

evaluating the dummy characters further comprises determining whether each of the dummy characters is one of the one or more strong dummy characters, one of the one or more medium-strength dummy characters, or one of the one or more weak dummy characters.

18. The one or more non-transitory computer-readable storage media of claim 15 , wherein

identifying the list of characters that surround the respective dummy character further comprises

selecting only characters that are immediately adjacent to a key corresponding to the respective dummy character on the input device.

19. The one or more non-transitory computer-readable storage media of claim 15 , wherein

the one or more dummy characters are associated with a user of the input device, wherein the user is identified, at least in part, by a unique user identifier (“UUID”) value;

the storing further comprises storing the UUID associated with the one or more dummy characters; and

the retrieving the password and the dummy characters from the non-volatile memory is based, at least in part, on the UUID value.

20. The one or more non-transitory computer-readable storage media of claim 15 , wherein

evaluating the dummy characters further comprises

determining whether each of the dummy characters is one of the one or more strong dummy characters, one of the one or more medium-strength dummy characters, or one of the one or more weak dummy characters; and

in response to determining that any of the dummy characters is one of the one or more weak dummy characters, providing a notification to a user, wherein

the notification requests the user to change the weak dummy character.

Assignments (9)
RELEASE OF SECURITY INTEREST IN PATENTS PREVIOUSLY RECORDED AT REEL/FRAME (052216/0758) Recorded Jun 23, 2022
From: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
To: DELL PRODUCTS L.P.; EMC IP HOLDING COMPANY LLC
Reel/Frame 060438/0680 →
RELEASE OF SECURITY INTEREST IN PATENTS PREVIOUSLY RECORDED AT REEL/FRAME (053311/0169) Recorded Jun 23, 2022
From: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
To: DELL PRODUCTS L.P.; EMC CORPORATION; EMC IP HOLDING COMPANY LLC
Reel/Frame 060438/0742 →
RELEASE OF SECURITY INTEREST IN PATENTS PREVIOUSLY RECORDED AT REEL/FRAME (053546/0001) Recorded Jun 23, 2022
From: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
To: DELL MARKETING L.P. (ON BEHALF OF ITSELF AND AS SUCCESSOR-IN-INTEREST TO CREDANT TECHNOLOGIES, INC.); DELL INTERNATIONAL L.L.C.; DELL PRODUCTS L.P.; DELL USA L.P.; EMC CORPORATION; DELL MARKETING CORPORATION (SUCCESSOR-IN-INTEREST TO FORCE10 NETWORKS, INC. AND WYSE TECHNOLOGY L.L.C.); EMC IP HOLDING COMPANY LLC
Reel/Frame 071642/0001 →
RELEASE OF SECURITY INTEREST AF REEL 052243 FRAME 0773 Recorded Nov 2, 2021
From: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH
To: DELL PRODUCTS L.P.; EMC IP HOLDING COMPANY LLC
Reel/Frame 058001/0152 →
SECURITY INTEREST Recorded Jun 5, 2020
From: DELL PRODUCTS L.P.; EMC CORPORATION; EMC IP HOLDING COMPANY LLC
To: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS COLLATERAL AGENT
Reel/Frame 053311/0169 →
SECURITY AGREEMENT Recorded Apr 22, 2020
From: CREDANT TECHNOLOGIES INC.; DELL INTERNATIONAL L.L.C.; DELL MARKETING L.P.; DELL PRODUCTS L.P.; DELL USA L.P.; EMC CORPORATION; FORCE10 NETWORKS, INC.; WYSE TECHNOLOGY L.L.C.; EMC IP HOLDING COMPANY LLC
To: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A.
Reel/Frame 053546/0001 →
SECURITY AGREEMENT Recorded Mar 26, 2020
From: DELL PRODUCTS L.P.; EMC IP HOLDING COMPANY LLC
To: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH
Reel/Frame 052243/0773 →
PATENT SECURITY AGREEMENT (NOTES) Recorded Mar 24, 2020
From: DELL PRODUCTS L.P.; EMC IP HOLDING COMPANY LLC
To: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS COLLATERAL AGENT
Reel/Frame 052216/0758 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Dec 2, 2019
From: SETHI, PARMINDER SINGH; NALAM, LAKSHMI SAROJA
To: DELL PRODUCTS L. P.
Reel/Frame 051152/0438 →