IP Library › Granted Patent US 11,336,432
Granted Patent B2
US 11,336,432 · App. 16/879,606 · Granted May 17, 2022

System and method for blockchain-based device authentication based on a cryptographic challenge

Inventors: Prakash Sundaresan (Redmond, WA); Lionello G. Lunesu (Peng Chau, HK); Antoine Cote (Sheung Wan, HK)
Assignee: Workday, Inc.
H04L9/0637H04L9/14H04L9/30H04L9/3226H04L9/3239H04L9/3247H04L9/3265H04L9/3271H04L2209/38
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,336,432
App. No.
16/879,606
Granted
May 17, 2022
Kind
B2
Abstract

A system for blockchain-based authentication comprises an interface and a processor configured to (i) receive, by a first device, a command from a second device, where the first device is associated with a first trust certificate, (ii) receive a second trust certificate from the second device, (iii) communicate a cryptographic challenge using a public key of the second device to the second device, (iv) receive a response to the cryptographic challenge from the second device, (v) check whether the response matches with a predetermined correct response or not, and (vi) authenticate the second device and execute the commend received from the second device only if the response matches with the predetermined correct response.

Claims (54)

1. A processor implemented method for blockchain-based authentication, the method comprising:

receiving, by a first device, a command on behalf of a user linked to a user device to perform an action from a second device, wherein:

the first device is associated with a first trust certificate signed by the user device based on a user private key associated with the user on a blockchain;

the first trust certificate indicates that the user device trusts the first device to perform the action on behalf of the user;

the second device is associated with a second trust certificate signed by the user device based on the user private key associated with the user on the blockchain; and

the second trust certificate indicates the user device trusts the second device to send the command to the first device on behalf of the user;

receiving the second trust certificate from the second device, wherein the second trust certificate comprises a public key of the second device which is associated with a user public key of the user device; and

in response to receiving the command and the second trust certificate:

communicating a cryptographic challenge using the public key of the second device to the second device;

receiving a response to the cryptographic challenge from the second device;

checking, using the public key of the second device, whether the response matches with a predetermined correct response or not; and

authenticating the second device and executing the command received from the second device only if the response matches with the predetermined correct response.

2. The method of claim 1 , wherein the blockchain includes identity information associated with the user.

3. The method of claim 2 , wherein the identity information uniquely identifies the user.

4. The method of claim 3 , wherein the identity information comprises one or more of: a user's password, a biometric, and/or a PIN code.

5. The method of claim 1 , wherein the user private key cannot be extracted out of a hardware-based cryptographic processor by one or more of: a device manufacturer, an operating system manufacturer, a user, and/or a manager of an open identity network.

6. The method of claim 1 , wherein the cryptographic challenge comprises a random value.

7. The method of claim 1 , wherein the response to the cryptographic challenge from the second device comprises the cryptographic challenge encrypted with a private key of the second device.

8. The method of claim 1 , wherein the response to the cryptographic challenge from the second device comprises the cryptographic challenge encrypted with a private key of the second device.

9. The method of claim 1 , wherein the predetermined correct response comprises the cryptographic challenge.

10. A system for blockchain-based authentication, the system comprising:

an interface configured to:

receive, by a first device, a command on behalf of a user linked to a user device to perform an action from a second device, wherein:

the first device is associated with a first trust certificate signed by the user device based on a user private key associated with the user on a blockchain;

the first trust certificate indicates that the user device trusts the first device to perform the action on behalf of the user;

the second device is associated with a second trust certificate signed by the user device based on the user private key associated with the user on the blockchain; and

the second trust certificate indicates the user device trusts the second device to send the command to the first device on behalf of the user;

receive the second trust certificate from the second device, wherein the second trust certificate comprises a public key of the second device which is associated with a user public key of the user device; and

a processor configured to:

in response to receiving the command and the second trust certificate:

communicate a cryptographic challenge using the public key of the second device to the second device;

receive a response to the cryptographic challenge from the second device;

check, using the public key of the second device, whether the response matches with a predetermined correct response or not; and

authenticate the second device and execute the command received from the second device only if the response matches with the predetermined correct response.

11. The system of claim 10 , wherein the blockchain includes identity information associated with the user.

12. The system of claim 11 , wherein the identity information uniquely identifies the user.

13. The system of claim 11 , wherein the identity information comprises one or more of: a user's password, a biometric, and/or a PIN code.

14. The system of claim 10 , wherein the user private key cannot be extracted out of a hardware-based cryptographic processor by one or more of: a device manufacturer, an operating system manufacturer, a user, and/or a manager of an open identity network.

15. The system of claim 10 , wherein the cryptographic challenge comprises a random value.

16. The system of claim 10 , wherein the response to the cryptographic challenge from the second device comprises the cryptographic challenge encrypted with a private key of the second device.

17. The system of claim 10 , wherein the response to the cryptographic challenge from the second device comprises the cryptographic challenge encrypted with a private key of the second device.

18. The system of claim 10 , wherein the predetermined correct response comprises the cryptographic challenge.

19. A computer program product for blockchain-based authentication, the computer program product being embodied in a non-transitory computer readable storage medium and comprising computer instructions for:

receiving, by a first device, a command on behalf of a user linked to a user device to perform an action from a second device, wherein:

the first device is associated with a first trust certificate signed by the user device based on a user private key associated with the user on a blockchain;

the first trust certificate indicates that the user device trusts the first device to perform the action on behalf of the user;

the second device is associated with a second trust certificate signed by the user device based on the user private key associated with the user on the blockchain; and

the second trust certificate indicates the user device trusts the second device to send the command to the first device on behalf of the user;

receiving the second trust certificate from the second device, wherein the second trust certificate comprises a public key of the second device which is associated with a user public key of the user device; and

in response to receiving the command and the second trust certificate:

communicating a cryptographic challenge using the public key of the second device to the second device;

receiving a response to the cryptographic challenge from the second device;

checking, using the public key of the second device, whether the response matches with a predetermined correct response or not; and

authenticating the second device and executing the command received from the second device only if the response matches with the predetermined correct response.

Continuity (8)
Continuation 15973479 · May 7, 2018
Continuation In Part 15662417 · Jul 28, 2017
Continuation In Part 15961791 · Apr 24, 2018
Continuation In Part 15622417 · Jul 28, 2017
Provisional Application 62368875 · Jul 29, 2016
Provisional Application 62489772 · Apr 25, 2017
Provisional Application 62503107 · May 8, 2017
Related Publication 20200322131A1 · Oct 8, 2020