Secure storage of passwords

US11714914B2 · US · B2

Patent metadata
FieldValue
Publication numberUS-11714914-B2
Application numberUS-202217679459-A
CountryUS
Kind codeB2
Filing dateFeb 24, 2022
Priority dateNov 21, 2019
Publication dateAug 1, 2023
Grant dateAug 1, 2023

How to read this patent

A practical reading order for non-experts. Skip the full description unless you need deep technical detail.

  1. Title

    What the patent document calls the invention.

  2. Abstract

    A short plain-language summary of the technical disclosure.

  3. Assignees and inventors

    Who owns or filed the patent and who is credited as inventor.

  4. Key dates

    Filing, priority, publication, and grant dates set the timeline.

  5. First independent claim

    The legal scope of protection — read this for what is actually claimed.

  6. CPC / IPC classifications

    Technology tags used to group this patent with similar filings.

  7. Citations and related patents

    Prior art links and similar publications in this corpus.

Abstract

Official abstract text for this publication.

A device includes a memory and a processor. The processor is to execute the instruction to: receive, from a user device, a username of a user and a string; retrieve a first Message Authentication Code (MAC) and a salt from a database in response to receiving the username and the string; send the first MAC, the salt, and one or more parameters to a Hardware Security Module (HSM); receive, from the HSM, a message indicating whether the first MAC matches a second MAC that the HSM generates based on the one or more parameters and the salt. In addition, the processor to perform one of: authenticate the user when the message indicates that the first MAC matches the second MAC; or not authenticate the user when the message indicates that the first MAC does not match the second MAC.

First claim

Opening claim text (preview).

What is claimed is: 1. A device comprising: a processor configured to: generate a nonce; send, to a user device, the nonce and a public key; receive, from the user device, a username of a user and a string that includes a result of performing encryption, by the user device using the public key, of another string obtained by concatenating a plaintext password and the nonce; retrieve, by using the user name, a salt and a first Message Authentication Code (MAC) that a Hardware Security Module (HSM) previously generated using a secret key internal to the HSM; send the first MAC, the salt, and one or more parameters to the HSM; receive, from the HSM, a message indicating whether the first MAC matches a second MAC that the HSM generates based on the one or more parameters, the salt, and the secret key internal to the HSM; and perform an authentication of the user based on the message. 2. The device of claim 1 , wherein the device further comprises the HSM, and wherein when the HSM generates the second MAC, the HSM is configured to: apply the secret key to a result of concatenating the string and the salt. 3. The device of claim 1 , wherein the processor is further to: send the salt, the nonce, and the string to the HSM, wherein the HSM is configured to generate the first MAC based on the salt, the nonce, and the string. 4. The device of claim 3 , wherein when the HSM generates the first MAC, the HSM is configured to: apply a private key to the string to generate an output string comprising the plaintext password and the nonce; and use the output string to generate the first MAC. 5. The device of claim 1 , wherein the encryption comprises the Rivest-Shamir-Adleman (RSA) encryption. 6. The device of claim 1 , wherein the one or more parameters include the nonce and the string. 7. The device of claim 6 , wherein the device further comprises the HSM, and wherein when the HSM generates the second MAC, the HSM is configured to: decrypt the string using the secret key to obtain a resultant string; remove a portion corresponding to the nonce from the resultant string to obtain the plaintext password; concatenate the plaintext password with the salt to obtain a salted password; and use the salted password and a secret key to generate the second MAC. 8. The device of claim 1 , wherein the processor is further configured to: notify the user device whether the user is authenticated. 9. A method comprising: sending, to a user device, a nonce and a public key; receiving, from the user device, a username of a user and a string that includes a result of performing encryption, by the user device using the public key, of another string obtained by concatenating a plaintext password and the nonce; retrieving, by using the user name, a salt and a first Message Authentication Code (MAC) that a Hardware Security Module (HSM) previously generated using a secret key internal to the HSM; sending the first MAC, the salt, and one or more parameters to the HSM; receiving, from the HSM, a message indicating whether the first MAC matches a second MAC that the HSM generates based on the one or more parameters, the salt, and the secret key internal to the HSM; and performing, by a device, an authentication of the user based on the message. 10. The method of claim 9 , wherein the device comprises the HSM, and wherein when the HSM generates the second MAC, the HSM is configured to: apply the secret key to a result of concatenating the string and the salt. 11. The method of claim 9 , further comprising: sending the salt, the nonce, and the string to the HSM; generating, by the HSM, the first MAC based on the salt, the nonce, and the string. 12. The method of claim 11 , wherein generating the first MAC includes: applying a private key to the string to generate an output string comprising the plaintext password and the nonce; and using the output string to generate the first MAC. 13. The method of claim 9 , wherein the encryption comprises the Rivest-Shamir-Adleman (RSA) encryption. 14. The method of claim 9 , wherein the one or more parameters include the nonce and the string. 15. A non-transitory computer-readable medium, comprising computer-executable instructions, wherein when executed by a processor included in a device, the instructions cause the processor to: generate a nonce; send, to a user device, the nonce and a public key; receive, from the user device, a username of a user and a string that includes a result of performing encryption, by the user device using the public key, of another string obtained by concatenating a plaintext password and the nonce; retrieve, by using the user name, a salt and a first Message Authentication Code (MAC) that a Hardware Security Module (HSM) previously generated using a secret key internal to the HSM; send the first MAC, the salt, and one or more parameters to the HSM; receive, from the HSM, a message indicating whether the first MAC matches a second MAC that the HSM generates based on the one or more parameters, the salt, and the secret key internal to the HSM; and perform an authentication of the user based on the message. 16. The non-transitory computer-readable medium of claim 15 , wherein the one or more parameters include the nonce and the string. 17. The non-transitory computer readable medium of claim 15 , wherein the device comprises the HSM, and wherein when the HSM generates the second MAC, the HSM is configured to: apply the secret key to a result of concatenating the string and the salt. 18. The non-transitory computer-readable medium of claim 15 , wherein the instructions further cause the processor to: send the salt, the nonce, and the string to the HSM, wherein the HSM is configured to generate the first MAC based on the salt, the nonce, and the string. 19. The non-transitory computer-readable medium of claim 15 , wherein the encryption comprises the Rivest-Shamir-Adleman (RSA) encryption. 20. The non-transitory computer-readable medium of claim 15 , wherein the instructions further cause the processor to: notify the user device whether the user is authenticated.

Assignees

Inventors

Classifications

  • to a single file or object, e.g. in a secure envelope, encrypted and accessed using a key, or with access control rules appended to the object itself · CPC title

  • involving public key infrastructure [PKI] trust models (network architecture or network communication protocol for supporting authentication of entities using certificates in a packet data network H04L63/0823) · CPC title

  • using additional device, e.g. trusted platform module [TPM], smartcard, USB or hardware security module [HSM] · CPC title

  • involving the integer factorization problem, e.g. RSA or quadratic sieve [QS] schemes · CPC title

  • involving keyed hash functions, e.g. message authentication codes [MACs], CBC-MAC or HMAC · CPC title

Patent family

Related publications grouped by family.

External sources

Frequently asked questions

Answers are generated from the same data shown on this page.

What does patent US11714914B2 cover?
A device includes a memory and a processor. The processor is to execute the instruction to: receive, from a user device, a username of a user and a string; retrieve a first Message Authentication Code (MAC) and a salt from a database in response to receiving the username and the string; send the first MAC, the salt, and one or more parameters to a Hardware Security Module (HSM); receive, from t…
Who is the assignee on this patent?
Verizon Patent & Licensing Inc
What technology area does this patent fall under?
Primary CPC classification G06F21/6209. Mapped technology areas include Physics.
When was this patent published?
Publication date Tue Aug 01 2023 00:00:00 GMT+0000 (Coordinated Universal Time) (B2). Legal status and post-grant events are not shown on this page.
What related patents are in patentsdb?
We list 8 related publications on this page (citations in our corpus or others sharing the same primary CPC).