IP Library Granted Patent US 10,824,747
Granted Patent B1
US 10,824,747 · App. 15/876,953 · Granted Nov 3, 2020

Systems and methods for controlled access to policy data on blockchain

Inventors: Melinda Teresa Magerkurth (Utica, IL); Eric Bellas (Bloomington, IL); Jaime Skaggs (Chenoa, IL); Shawn M. Call (Bloomington, IL); Eric R. Moore (Heyworth, IL); Vicki King (Bloomington, IL); Burton J. Floyd (Mackinaw, IL); David Turrentine (Normal, IL); Steven T. Olson (Bloomington, IL); Timothy Caleb Wells (Bloomington, IL); Corin Rebekah Chapman (Bloomington, IL); Edward W. Breitweiser (Bloomington, IL); Robert Gomez (Bloomington, IL); Shelia Cummings Smith (Bloomington, IL)
Assignee: STATE FARM MUTUAL AUTOMOBILE INSURANCE COMPANY
G06F21/6209G06F21/602G06F21/604H04L9/0637H04L9/0861H04L9/3247H04L67/104
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 10,824,747
App. No.
15/876,953
Granted
Nov 3, 2020
Kind
B1
Abstract

Methods and systems for managing and/or processing a blockchain to maintain data security for confidential and/or personal data are provided. According to certain aspects, the disclosed data security techniques may enable access sharing functionality utilizing the blockchain. For example, access sharing may be utilized to share policy information. The policy information may be associated with a smart contract. Accordingly, the policy information may be encrypted using a public key for the smart contract and compiled into a block of the blockchain. In response to a request to provide access to the information to a particular node, the private key for the smart contract may be encrypted using the public key for the particular node and compiled into a block of the blockchain.

Claims (55)

1. A computer-implemented method of providing access to confidential data stored in a blockchain relating to a plurality of smart contracts, the method comprising:

detecting, by one or more processors, that a new smart contract has been created for inclusion in the plurality of smart contracts;

generating, by the one or more processors, a public key and a private key for the new smart contract;

encrypting, by the one or more processors, data associated with the new smart contract using the public key of the smart contract, the data associated with the new smart contract including information associated with a policy;

compiling, by the one or more processors, the encrypted data associated with the new smart contract into a first block of the blockchain; distributing, by the one or more processors, the first block to a plurality of nodes to form a consensus on a first update to the blockchain;

detecting, by the one or more processors, a request to provide a particular node access to the encrypted data associated with the new smart contract, the request indicating the particular node;

generating, by the one or more processors, a transaction indicating (i) the private key for the new smart contract, the private key for the new smart contract being encrypted using the public key for the particular node, and (ii) an identity of the particular node;

applying, by the one or more processors, a digital signature of a node associated with the one or more processors to the transaction, the digital signature being generated based upon a private key for the node associated with the one or more processors;

compiling, by the one or more processors, the transaction into a second block of transactions; and

distributing, by the one or more processors, the second block to the plurality of nodes to form a consensus on a second update to the blockchain.

2. The computer-implemented method of claim 1 , wherein the information associated with the policy includes an electronic medical record.

3. The computer-implemented method of claim 1 , wherein the information associated with the policy includes at least one of an insurance policy, a lab result, a form, or a confidential communication.

4. The computer-implemented method of claim 1 , wherein the particular node is associated with an attorney or an estate planner.

5. The computer-implemented method of claim 1 , wherein the second block includes encrypted data associated with the new smart contract.

6. The computer-implemented method of claim 1 , wherein generating the transaction comprises:

determining, by the one or more processors, a permission level associated with the particular node; and

generating, by the one or more processors, the transaction when the permission level indicates that the particular node is permitted to access the information associated with the policy.

7. The computer-implemented method of claim 1 , wherein detecting the request to provide access to the data further comprises:

receiving, at the one or more processors, the request from a requesting node;

determining, by the one or more processors, a permission level associated with the requesting node; and

generating, by the one or more processors, the transaction when the permission level indicates that the requesting node is permitted to request that other nodes receive access to the information associated with the policy.

8. The computer-implemented method of claim 1 , wherein detecting the request to provide access to the data further comprises:

generating, by the one or more processors, the request to provide access to the data associated upon being directed by the new smart contract.

9. A computer system for providing access to confidential data stored in a blockchain relating to a plurality of smart contracts, the computer system comprising: one or more processors; a communication module adapted to communicate with a plurality of nodes; a non-transitory program memory coupled to the one or more processors and storing executable instructions that, when executed by the one or more processors, cause the computer system to: detect that a new smart contract has been created for inclusion in the plurality of smart contracts;

generate a public key and a private key for the new smart contract; encrypt data associated with the new smart contract using the public key of the smart contract, the data associated with the new smart contract including information associated with a policy;

compile the encrypted data associated with the new smart contract into a first block of the blockchain; distribute, via the communication module, the first block to a plurality of nodes to form a consensus on a first update to the blockchain;

detect a request to provide a particular node access to the encrypted data associated with the new smart contract, the request indicating the particular node;

generate a transaction indicating (i) the private key for the new smart contract, the private key for the new smart contract being encrypted using the public key fir the particular node, and (ii) an identity of the particular node;

apply a digital signature of a node, to the transaction, the digital signature being generated based upon a private key for the node associated with the one or more processors;

compile the transaction into a second block of transactions; and

distribute, via the communication module, the second block to the plurality of nodes to form a consensus on a second update to the blockchain.

10. The computer system of claim 9 , wherein the information associated with the policy includes an electronic medical record.

11. The computer system of claim 9 , wherein the information associated with the policy includes at least one of an insurance policy, a lab result, a form, or a confidential communication.

12. The computer system of claim 9 , wherein the particular node is associated with an attorney or an estate planner.

13. The computer system of claim 9 , wherein the second block includes encrypted data associated with the new smart contract.

14. The computer system of claim 9 , wherein to generate the transaction, the instructions, when executed, cause the computer system to:

determine a permission level associated with the particular node; and

generate the transaction when the permission level indicates that the particular node is permitted to access the information associated with the policy.

15. The computer system of claim 9 , wherein to detect the request to provide access to the data, the instructions, when executed, cause the computer system to:

receive the request from a requesting node;

determine a permission level associated with the requesting node; and

generate the transaction when the permission level indicates that the requesting node is permitted to request that other nodes receive access to the information associated with the policy.

16. The computer system of claim 9 , wherein to detect the request to provide access to the data, the instructions, when executed, cause the computer system to:

generate the request to provide access to the data associated upon being directed by the new smart contract.

17. A non-transitory computer readable storage medium storing processor-executable instructions, that, when executed, cause one or more processors to:

detect that a new smart contract has been created;

generate a public key and a private key for the new smart contract;

encrypt data associated with the new smart contract using the public key of the smart contract, the data associated with the new smart contract including information associated with a policy;

compile the encrypted data associated with the new smart contract into a first block of a blockchain;

distribute the first block to a plurality of nodes to form a consensus on a first update to the blockchain;

detect a request to provide a particular node access to the encrypted data associated with the new smart contract, the request indicating the particular node;

generate a transaction indicating (i) the private key for the new smart contract, the private key for the new smart contract being encrypted using the public key liar the particular node, and (ii) an identity of the particular node;

apply a digital signature of a node, to the transaction, the digital signature being generated based upon a private key for the node associated with the one or more processors;

compile the transaction into a second block of transactions; and

distribute the second block to the plurality of nodes to form a consensus on a second update to the blockchain.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Sep 18, 2020
From: MAGERKURTH, MELINDA TERESA; BELLAS, ERIC; SKAGGS, JAIME; CALL, SHAWN M.; MOORE, ERIC R.; KING, VICKI; FLOYD, BURTON J.; TURRENTINE, DAVID; OLSON, STEVEN T.; WELLS, TIMOTHY CALEB; CHAPMAN, CORIN REBEKAH; BREITWEISER, EDWARD W.; GOMEZ, ROBERT; SMITH, SHELIA CUMMINGS
To: STATE FARM MUTUAL AUTOMOBILE INSURANCE COMPANY
Reel/Frame 053818/0459 →
Continuity (11)
Provisional Application 62536600 · Jul 25, 2017
Provisional Application 62536672 · Jul 25, 2017
Provisional Application 62536683 · Jul 25, 2017
Provisional Application 62536709 · Jul 25, 2017
Provisional Application 62536715 · Jul 25, 2017
Provisional Application 62536698 · Jul 25, 2017
Provisional Application 62536704 · Jul 25, 2017
Provisional Application 62536754 · Jul 25, 2017
Provisional Application 62536716 · Jul 25, 2017
Provisional Application 62536735 · Jul 25, 2017
Provisional Application 62450349 · Jan 25, 2017
Cited By (7)
US 12,235,979 US 12,380,232 US 12,386,989 US 12,466,065 US 12,500,752 US 12,566,871 US 12,706,762