IP Library › Granted Patent US 11,582,040
Granted Patent B2
US 11,582,040 · App. 16/757,703 · Granted Feb 14, 2023

Permissions from entities to access information

Inventors: Abilash Soundararajan (Bangalore, IN); Michael Reid Tennefoss (Santa Clara, CA)
Assignee: Hewlett Packard Enterprise Development LP
H04L9/3213H04L9/0825H04L9/0894H04L9/3247H04L9/50H04L2209/56
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,582,040
App. No.
16/757,703
Granted
Feb 14, 2023
Kind
B2
Abstract

In some examples, in response to a request from a client device for information relating to a transaction stored by a blockchain, a system identifies, using information stored in a distributed storage system that stores data for the blockchain, multiple data owner entities from which permissions are to be obtained for access of the information, and determines an authorization requirement for the information based on a smart contract. The system sends authorization information based on the authorization requirement to trigger a retrieval of authorization tokens from the identified data owner entities for access of the information, and sends the information to the client device in response to receiving the authorization tokens.

Claims (55)

1. A non-transitory machine-readable storage medium storing instructions that upon execution cause a system to:

in response to a request from a client device for information relating to a transaction stored by a blockchain,

identify, using information stored in a distributed storage system that stores data for the blockchain, multiple data owner entities from which permissions are to be obtained for access of the information, and

determine an authorization requirement for the information based on a smart contract;

identify a privilege level of a plurality of privilege levels for which the permissions are to be obtained;

send authorization information based on the authorization requirement to trigger a retrieval of authorization tokens from the identified data owner entities for access of the information, wherein the authorization tokens are for the identified privilege level; and

send the information to the client device in response to receiving the authorization tokens.

2. The non-transitory machine-readable storage medium of claim 1 , wherein the instructions upon execution cause the system to:

receive the authorization tokens from the identified data owner entities for access of the information; and

validate the authorization tokens,

wherein sending the information to the client device is in response to validating the authorization tokens.

3. The non-transitory machine-readable storage medium of claim 1 , wherein the instructions upon execution cause the system to further:

in response to the request from the client device, access the blockchain to determine a location where the information is stored; and

check with a resource server associated with the location to request identities of the data owner entities from which permissions are to be obtained for access of the information.

4. The non-transitory machine-readable storage medium of claim 1 , wherein identification of the data owner entities is based on determining which data owner entities digitally signed the information in the distributed storage system that stores respective information for blocks of the blockchain.

5. The non-transitory machine-readable storage medium of claim 1 , wherein the authorization requirement specifies that the permissions are to be obtained from the data owner entities before access of the information is granted to the client device.

6. The non-transitory machine-readable storage medium of claim 5 , wherein the smart contract specifies that access to information relating to a further transaction stored by the blockchain can be granted without first seeking permissions of data owner entities owning the information relating to the further transaction.

7. The non-transitory machine-readable storage medium of claim 1 , wherein identification of the data owner entities is based on tags associated with the information in the distributed storage system.

8. The non-transitory machine-readable storage medium of claim 1 , wherein identifying the privilege level is based on tags associated with information in the distributed storage system.

9. The non-transitory machine-readable storage medium of claim 1 , wherein the retrieval of the authorization tokens from the data owner entities is according to an authorization protocol that allows the data owner entities to delegate access to information owned by the data owner entities to another party.

10. The non-transitory machine-readable storage medium of claim 1 , wherein the instructions upon execution cause the system to further:

encrypt the information with a public key of the client device in response to validating the authorization tokens,

wherein the sending of the information to the client device comprises sending the encrypted information.

11. The non-transitory machine-readable storage medium of claim 1 , wherein the authorization tokens comprise context-based authorization tokens that restrict access according to any or a combination of the following contextual parameters: a specified time and date range, a location, or an identity of a client entity.

12. The non-transitory machine-readable storage medium of claim 1 , wherein the information relating to the transaction is stored in the distributed storage system encrypted with private keys of the entities, the distributed storage system storing respective information for blocks of the blockchain.

13. The non-transitory machine-readable storage medium of claim 1 , wherein the instructions upon execution cause the system to further:

collect payment from the client device as part of sending the information to the client device, the collecting of the payment based on interaction with a wallet application in the client device.

14. The non-transitory machine-readable storage medium of claim 1 , wherein the instructions upon execution cause the system to further:

collect payment from a given data owner entity in response to storing information owned by the given data owner entity with multiparty ownership and privilege levels in a distributed storage system.

15. The non-transitory machine-readable storage medium of claim 1 , wherein the instructions upon execution cause the system to log access of a piece of information in the distributed storage system by a client entity after authorization by respective data owner entities.

16. A resource server system comprising:

a processor; and

a non-transitory storage medium storing instructions executable on the processor to:

receive, from an authorization facilitator system, a first request seeking access to information relating to a transaction stored by a blockchain, the first request sent by the authorization facilitator system in response to the authorization facilitator system receiving a second request seeking access to the information from a client device;

determine an authorization requirement specified by entities that are owners of the information, wherein the authorization requirement is specified in a smart contract, and the authorization requirement identifies a plurality of levels of authorizations to be obtained for different categories of information;

based on the authorization requirement, send identities of the entities to the authorization facilitator system;

send, to the authorization facilitator system, authorization information for the plurality of levels of authorizations;

receive authorization tokens obtained from the entities in response to the identities of the entities sent to the authorization facilitator system, the authorization tokens indicating permissions granted by the entities; and

in response to validating the authorization tokens, send the information for receipt by the client device.

17. The resource server system of claim 16 , wherein the determining of the authorization requirement is based on a smart contract, and the determining of the entities is based on multiparty signing of tags associated with information in a distributed storage system.

18. A method comprising:

in response to a request from a client device for information relating to a transaction stored by a blockchain,

identifying, using information stored in a distributed storage system that stores data for the blockchain, multiple data owner entities from which permissions are to be obtained for access of the information, and

determining an authorization requirement for the information based on a smart contract;

identifying a privilege level of a plurality of privilege levels for which the permissions are to be obtained;

sending authorization information based on the authorization requirement to trigger a retrieval of authorization tokens from the identified data owner entities for access of the information, wherein the authorization tokens are for the identified privilege level; and

sending the information to the client device in response to receiving the authorization tokens.

19. The method of claim 18 , further comprising:

receiving the authorization tokens from the identified data owner entities for access of the information; and

validating the authorization tokens,

wherein sending the information to the client device is in response to validating the authorization tokens.

20. The method of claim 18 , further comprising:

in response to the request from the client device, accessing the blockchain to determine a location where the information is stored; and

checking with a resource server associated with the location to request identities of the data owner entities from which permissions are to be obtained for access of the information.

21. The method of claim 18 , wherein identification of the data owner entities is based on determining which data owner entities digitally signed the information in the distributed storage system that stores respective information for blocks of the blockchain.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 20, 2020
From: SOUNDARARAJAN, ABILASH; TENNEFOSS, MICHAEL REID
To: HEWLETT PACKARD ENTERPRISE DEVELOPMENT LP
Reel/Frame 052448/0071 →
Continuity (1)
Related Publication 20210203503A1 · Jul 1, 2021
Cited By (5)
US 12,273,448 US 12,455,979 US 12,470,927 US 12,526,155 US 12,737,348