US 12,141,328 B1
Systems and methods for fund transfers via blockchain
Melinda Teresa Magerkurth, Utica, IL (US); Eric Bellas, Bloomington, IL (US); Jaime Skaggs, Chenoa, IL (US); Shawn M. Call, Bloomington, IL (US); Eric R. Moore, Heyworth, IL (US); Vicki King, Bloomington, IL (US); Burton J. Floyd, Mackinaw, IL (US); David Turrentine, Normal, IL (US); Steven T. Olson, Bloomington, IL (US); Timothy Caleb Wells, Bloomington, IL (US); Corin Rebekah Chapman, Bloomington, IL (US); Edward W. Breitweiser, Bloomington, IL (US); Robert Gomez, Bloomington, IL (US); and Shelia Cummings Smith, Bloomington, IL (US)
Assigned to STATE FARM MUTUAL AUTOMOBILE INSURANCE COMPANY, Bloomington, IL (US)
Filed by STATE FARM MUTUAL AUTOMOBILE INSURANCE COMPANY, Bloomington, IL (US)
Filed on Jan. 22, 2018, as Appl. No. 15/877,027.
Claims priority of provisional application 62/536,716, filed on Jul. 25, 2017.
Claims priority of provisional application 62/536,715, filed on Jul. 25, 2017.
Claims priority of provisional application 62/536,754, filed on Jul. 25, 2017.
Claims priority of provisional application 62/536,709, filed on Jul. 25, 2017.
Claims priority of provisional application 62/536,672, filed on Jul. 25, 2017.
Claims priority of provisional application 62/536,704, filed on Jul. 25, 2017.
Claims priority of provisional application 62/536,600, filed on Jul. 25, 2017.
Claims priority of provisional application 62/536,683, filed on Jul. 25, 2017.
Claims priority of provisional application 62/536,735, filed on Jul. 25, 2017.
Claims priority of provisional application 62/536,698, filed on Jul. 25, 2017.
Claims priority of provisional application 62/450,349, filed on Jan. 25, 2017.
This patent is subject to a terminal disclaimer.
Int. Cl. G06F 21/64 (2013.01); G06Q 20/38 (2012.01); G06Q 20/40 (2012.01); H04L 9/00 (2022.01)
CPC G06F 21/64 (2013.01) [G06Q 20/3827 (2013.01); G06Q 20/401 (2013.01); H04L 9/50 (2022.05); H04L 2209/56 (2013.01)] 10 Claims
OG exemplary drawing
 
1. A computer-implemented method for maintaining a blockchain of transactions relating to a plurality of smart contracts, the blockchain maintained by a plurality of nodes connected via a network, the method comprising:
receiving, at a first node of the plurality of nodes and from a particular node of the plurality of nodes, a transaction indicative of at least one settlement condition associated with a particular smart contract of the plurality of smart contracts;
verifying, by the first node, that a permission level associated with the particular node indicates that the particular node has permission to report the at least one settlement condition;
obtaining, by the first node from a blockchain management node of the plurality of nodes, a private key for the particular smart contract in response to the blockchain management node determining that the first node is authorized to view data maintained on the blockchain and associated with the particular smart contract;
compiling, by the first node, the transaction into a block of transactions;
distributing, by the first node, the block to the plurality of nodes to form a consensus on an update to the blockchain;
decrypting, by the first node, encrypted smart contract data included in the transaction using the private key for the particular smart contract;
routing, by the first node, the transaction to the particular smart contract;
automatically directing, by the first node, execution of an action the particular smart contract directs should be performed in response to the at least one settlement condition being satisfied, including generating a fund transfer transaction as indicated by the particular smart contract;
distributing, by the first node, the fund transfer transaction to the plurality of nodes to form a consensus on the fund transfer transaction;
in response to forming the consensus on the fund transfer transaction, detecting, by a second node of the plurality of nodes, the fund transfer transaction;
verifying, by the second node, that the fund transfer transaction includes the at least one settlement condition; and
executing, by the second node, the fund transfer transaction utilizing an electronic wire service interconnected to the second node.