IP Library Granted Patent US 11,914,728
Granted Patent B2
US 11,914,728 · App. 17/973,652 · Granted Feb 27, 2024

Systems and methods for controlled access to blockchain data

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/604G06F21/6245G06Q20/10G06Q20/102G06Q20/3825G06Q20/3827G06Q20/3829G06Q20/401G06Q20/4014G06Q40/08H04L9/0637H04L9/0825H04L9/0861H04L9/0894H04L9/14H04L9/30H04L9/3236H04L9/3247H04L63/0428H04L63/10H04L67/104G06Q10/10G06Q20/223G06Q2220/00G06Q2220/10H04L9/50H04L63/105H04L2209/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,914,728
App. No.
17/973,652
Granted
Feb 27, 2024
Kind
B2
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 file documents, share policy information, and/or comply with an audit. The data security techniques disclosed herein also enable the use of smart contracts to transfer funds associated with payment obligations and/or other forms of blockchain based payments, comply with anti-money laundering requirements, report industry data, validate interest payments and/or maintain agent sales data. Data security may be achieved through the use of public key/private key encryption techniques.

Claims (51)

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

receiving, from a requesting node, a request to provide access to encrypted data associated with a smart contract to a particular node of the blockchain;

determining, by the one or more processors, that permissions associated with the requesting node indicate that the requesting node is permitted to request access to the encrypted data associated with the smart contract;

querying, by the one or more processors, a database of public keys using an indication of the particular node to retrieve a public key for the particular node;

determining, by the one or more processors, that an access level associated with the particular node indicates that the particular node is permitted to access the encrypted data associated with the smart contract; and

in response to the determinations, transmitting, by the one or more processors, a private key for the smart contract to the particular node via a communication channel other than the blockchain.

2. The computer-implemented method of claim 1 , wherein determining the permissions associated with the requesting node comprises:

decrypting, using a public key for the requesting node, a digital signature included in the request by the requesting node to verify authenticity of the digital signature.

3. The computer-implemented method of claim 1 , further comprising:

receiving, at the one or more processors, a request from the particular node to become a node of the blockchain.

4. The computer-implemented method of claim 3 , further comprising:

generating, by the one or more processors, the public key and a private key for the particular node.

5. The computer-implemented method of claim 4 , further comprising:

sending, to the particular node, the private key for the particular node via a communication channel other than the blockchain.

6. The computer-implemented method of claim 3 , further comprising:

assigning, by the one or more processors, permissions for the particular node, the permissions being associated with one or more types of data the particular node is permitted to access.

7. A computer system for providing access to encrypted data stored in a blockchain relating to a plurality of smart contracts, the computer system comprising:

one or more processors;

one or more transceivers 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:

receive, from a requesting node, a request to provide access to encrypted data associated with a smart contract to a particular node of the blockchain;

query a database of public keys using an indication of the particular node to retrieve a public key for the particular node;

determine that permissions associated with the requesting node indicate that the requesting node is permitted to request access to the encrypted data associated with the smart contract;

determine that an access level associated with the particular node indicates that the particular node is permitted to access the encrypted data associated with the smart contract; and

in response to the determinations, transmit, via the one or more transceivers, the private key for the smart contract to the particular node via a communication channel other than the blockchain.

8. The computer system of claim 7 , wherein to determine the permissions associated with the requesting node, the instructions, when executed, cause the computer system to:

decrypt, using a public key for the requesting node, a digital signature included in the request by the requesting node to verify authenticity of the digital signature.

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

receive a request from the particular node to become a node of the blockchain.

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

generate the public key and a private key for the particular node.

11. The computer system of claim 10 , wherein the instructions, when executed, cause the computer system to:

send, to the particular node, the private key for the particular node via a communication channel other than the blockchain.

12. The computer system of claim 11 , wherein the instructions, when executed, cause the computer system to:

assign permissions for the particular node, the permissions being associated with one or more types of data the particular node is permitted to access.

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

receive, from a requesting node, a request to provide access to encrypted data associated with a smart contract to a particular node of a blockchain;

query a database of public keys using an indication of the particular node to retrieve a public key for the particular node;

determine that permissions associated with the requesting node indicate that the requesting node is permitted to request access to the encrypted data associated with the smart contract;

determine that an access level associated with the particular node indicates that the particular node is permitted to access the encrypted data associated with the smart contract; and

in response to the determinations, transmit the private key for the smart contract to the particular node via a communication channel other than the blockchain.

14. The non-transitory computer readable storage medium of claim 13 , wherein to determine the permissions associated with the requesting node, the instructions, when executed, cause the one or more processors to:

decrypt, using a public key for the requesting node, a digital signature included in the request by the requesting node to verify authenticity of the digital signature.

15. The non-transitory computer readable storage medium of claim 14 , wherein the instructions, when executed, cause the one or more processors to:

receive a request from the particular node to become a node of the blockchain.

16. The non-transitory computer readable storage medium of claim 15 , wherein the instructions, when executed, cause the one or more processors to:

generate the public key and a private key for the particular node.

17. The non-transitory computer readable storage medium of claim 16 , wherein the instructions, when executed, cause the one or more processors to:

send, to the particular node, the private key for the particular node via a communication channel other than the blockchain.

18. The non-transitory computer readable storage medium of claim 17 , wherein the instructions, when executed, cause the one or more processors to:

assign permissions for the particular node, the permissions being associated with one or more types of data the particular node is permitted to access.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Oct 26, 2022
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 061545/0539 →
Continuity (14)
Continuation 16915931 · Jun 29, 2020
Continuation 15876918 · Jan 22, 2018
Provisional Application 62536704 · Jul 25, 2017
Provisional Application 62536715 · Jul 25, 2017
Provisional Application 62536735 · Jul 25, 2017
Provisional Application 62536709 · Jul 25, 2017
Provisional Application 62536716 · Jul 25, 2017
Provisional Application 62536698 · Jul 25, 2017
Provisional Application 62536754 · Jul 25, 2017
Provisional Application 62536672 · Jul 25, 2017
Provisional Application 62536600 · Jul 25, 2017
Provisional Application 62536683 · Jul 25, 2017
Provisional Application 62450349 · Jan 25, 2017
Related Publication 20230039746A1 · Feb 9, 2023