IP Library › Granted Patent US 10,824,759
Granted Patent B1
US 10,824,759 · App. 15/877,122 · Granted Nov 3, 2020

Systems and methods for verifying agent sales data via 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/6245H04L9/0637H04L9/0825H04L67/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,759
App. No.
15/877,122
Filed
Jan 22, 2018
Granted
Nov 3, 2020
Kind
B1
Art Unit
2432
USPC
726/26
Abstract

Methods and systems for processing a blockchain comprising a plurality of immutable sales records corresponding to sales made by agents of an entity are provided. According to certain aspects, a transaction request indicating a sale made by an agent of the entity may be received at a first node. A block including a sales record indicating the sale made by the agent may be added to a blockchain and transmitted to another node for validation. The first node may add the block to a copy of the blockchain, where the block may be identified by a hash value that references a previous block in the blockchain that includes at least one additional sales record.

Claims (62)

1. A computer-implemented method of processing a blockchain comprising a plurality of immutable sales records corresponding to sales made by agents of an entity, the blockchain maintained by a plurality of nodes connected via a network, each of the plurality of nodes maintaining a respective copy of the blockchain, the method comprising:

receiving, at a processor of a first node of the plurality of nodes, a transaction request initiated by a requesting node and indicating a sale made by an agent of the entity;

verifying the transaction request by verifying an identity of the requesting node, wherein verifying the identity of the requesting node includes:

querying, by the processor of the first node, a permissions database to determine a permission level associated with the requesting node, and

determining, based on the permission level, that the requesting node has permission to submit the transaction request;

generating, by the processor of the first node, a new block to add to the blockchain;

responsive to determining that the requesting node has permission to submit the transaction request, adding a sales record indicating the sale made by the agent of the entity to the new block;

transmitting, via the network by the processor of the first node, the new block to at least a second node of the plurality of nodes;

receiving, at the processor of the first node, an indication that the block is validated by one of the plurality of nodes using a cryptographic computation; and

adding, by the processor of the first node, the block to a copy of the blockchain maintained by the first node, the block identified by a hash value that references a previous block in the blockchain, the previous block including at least one additional sales record indicating at least one additional sale made by at least one agent of the entity.

2. The computer-implemented method of claim 1 , wherein verifying the transaction request comprises:

accessing a consensus rule associated with the transaction request and shared by the plurality of nodes, the consensus rule indicating a set of authorized sources; and

verifying the transaction request based on determining that the requesting node is included in the set of authorized sources.

3. The computer-implemented method of claim 1 , wherein verifying the transaction request comprises:

determining, by the processor, that an existing block of the copy of the blockchain maintained by the first node indicates the identity of the requesting node.

4. The computer-implemented method of claim 1 , wherein verifying the transaction request comprises:

receiving, via the network from at least a portion of the plurality of nodes, an indication that the transaction request is verified.

5. The computer-implemented method of claim 1 , wherein verifying the transaction request comprises:

verifying that the requesting node is in good standing with the entity.

6. The computer-implemented method of claim 1 , wherein the transaction request includes a digital signature associated with the requesting node, and wherein verifying the transaction request comprises:

authenticating the requesting node using the digital signature.

7. The computer-implemented method of claim 1 , wherein verifying the transaction request comprises:

adding the transaction request to a queue of pending transactions; and

detecting that at least one of the nodes of the plurality of nodes verified the identity of the requesting node.

8. The computer-implemented method of claim 1 , wherein transmitting the block to at least the second node of the plurality of nodes comprises:

transmitting, via the network, the new block to at least the second node, wherein the second node transmits the block to at least a third node of the plurality of nodes.

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

generating, by the processor of the first node, a public key and a private key for the first node.

10. A system for processing a blockchain comprising a plurality of immutable sales records corresponding to sales made by agents of an entity, the blockchain maintained by a plurality of nodes connected via a network, the system comprising:

a first node of the plurality of nodes, the first node configured to maintain a first copy of the blockchain;

a second node of the plurality of nodes, the second node connected to the first node via the network and configured to maintain a second copy of the blockchain;

a first processor implemented in the first node and configured to:

receive a transaction request initiated by a requesting node and indicating a sale made by an agent of the entity,

verify the transaction request by verifying an identity of the requesting node, wherein verifying the identity of the requesting node includes:

querying a permissions database to determine a permission level associated with the requesting node, and

determining, based on the permission level, that the requesting node has permission to submit the transaction request,

generate a new block to add to the blockchain;

responsive to determining that the requesting node has permission to submit the transaction request, add a sales record indicating the sale made by the agent of the entity, and

transmit, via the network, the new block to at least the second node; and

a second processor implemented in the second node and configured to:

receive, via the network, the block from the first node,

validate the block using a cryptographic computation,

transmit, to the first node via the network, an indication that the block is validated, and

add the block to the second copy of the blockchain, the block identified by a hash value that references a previous block in the blockchain, the previous block including at least one additional sales record indicating at least one additional sale made by at least one agent of the entity.

11. The system of claim 10 , wherein to verify the transaction request, the first processor is configured to:

access a consensus rule associated with the transaction request and shared by the plurality of nodes, the consensus rule indicating a set of authorized sources, and

verify the transaction request based on determining that the requesting node is included in the set of authorized sources.

12. The system of claim 10 , wherein to verify the transaction request, the first processor is configured to:

determine that an existing block of the copy of the blockchain maintained by the first node indicates the identity of the requesting node.

13. The system of claim 10 , wherein to verify the transaction request, the first processor is configured to:

receive, via the network from at least a portion of the plurality of nodes, an indication that the transaction request is verified.

14. The system of claim 10 , wherein to verify the transaction request, the first processor is configured to:

verify that the requesting node is in good standing with the entity.

15. The system of claim 10 , wherein the transaction request includes a digital signature associated with the requesting node, and wherein to verify the transaction request, the first processor is configured to:

authenticate the requesting node using the digital signature.

16. The system of claim 10 , wherein to verify the transaction request, the first processor is configured to:

add the transaction request to a queue of pending transactions, and

detect that at least one of the nodes of the plurality of nodes verified the identity of the source.

17. The system of claim 10 , wherein to transmit the block to at least the second node of the plurality of nodes, the first processor is configured to:

transmit, via the network, the new block to at least the second node, wherein the second node transmits the block to at least a third node of the plurality of nodes.

18. The system of claim 10 , wherein the first processor is further configured to:

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

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 62536715 · Jul 25, 2017
Provisional Application 62536704 · Jul 25, 2017
Provisional Application 62536698 · Jul 25, 2017
Provisional Application 62536716 · Jul 25, 2017
Provisional Application 62536754 · Jul 25, 2017
Provisional Application 62536735 · Jul 25, 2017
Provisional Application 62536683 · Jul 25, 2017
Provisional Application 62536709 · Jul 25, 2017
Provisional Application 62450349 · Jan 25, 2017
Cited By (32)
US 12,210,984 US 12,217,197 US 12,223,797 US 12,235,979 US 12,243,389 US 12,249,210 US 12,254,427 US 12,277,839 US 12,322,243 US 12,340,656 US 12,341,883 US 12,346,976 US 12,361,783 US 12,380,232 US 12,386,989 US 12,400,154 US 12,412,120 US 12,412,131 US 12,412,132 US 12,462,908 US 12,494,109 US 12,499,437 US 12,500,780 US 12,524,820 US 12,547,991 US 12,548,080 US 12,549,369 US 12,566,871 US 12,586,073 US 12,651,275 US 12,659,158 US 12,675,827