IP Library › Granted Patent US 10,735,193
Granted Patent B1
US 10,735,193 · App. 15/995,020 · Granted Aug 4, 2020

Decentralized encryption and decryption of blockchain data

Inventors: Michal Knas (Monson, MA); Jiby John (Suffield, CT); Krzysztof Gibadlo (Springfield, MA); Rick Ferry (Springfield, MA)
Assignee: Massachusetts Mutual Life Insurance Company
H04L9/0894H04L9/0861H04L63/0428
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,735,193
App. No.
15/995,020
Granted
Aug 4, 2020
Kind
B1
Abstract

Methods and systems disclosed herein generate a secure blockchain key for a user by generating a blockchain key comprising a string of alphanumerical and/or character values; generating one or more key segments by dividing the key string in to a number of sub-strings based on a first encryption method; encrypting each sub-string based on a second encryption method; determining a latest valid blockchain associated with the user; identifying a group of network nodes associated with the latest valid blockchain; selecting a number of network nodes from the identified group of network nodes; and instructing the selected network nodes to store the encrypted key segments.

Claims (36)

1. An encryption method comprising:

generating, by a server, a blockchain key configured to grant access to a set of data embedded within a blockchain, the blockchain key comprising a first string of alpha numerical and character values;

generating, by the server, a plurality of key segments by dividing, based on a first encryption method, the first string of alpha numerical and character values into a plurality of second strings, each second string comprising at least a portion of the first string of alpha numerical and character values;

encrypting, by the server, each key segment based on a second encryption method;

retrieving, by the server, a latest valid blockchain from a plurality of network nodes associated with the blockchain, the latest valid blockchain comprising one or more block instances comprising blockchain data and a corresponding cryptographic hash value, each block instance stored in a database associated with at least one of the plurality of network nodes;

generating, by the server, an instruction to store at least one of the plurality of the encrypted key segments; and

transmitting, by the server, the instruction and at least one encrypted key segment to at least one network node.

2. The method of claim 1 , further comprising:

generating, by the server, a key record in a system database configured to store a plurality of key records and comprising one or more data fields containing the plurality of key segments, the first encryption method, the second encryption method, and an address of the plurality of network nodes.

3. The method of claim 1 , wherein multiple copies of an encrypted key segment are stored on different network nodes.

4. The method of claim 1 , wherein the second encryption method is different for each encrypted key segment.

5. The method of claim 1 , wherein the second encryption method is predetermined by the server.

6. The method of claim 1 , wherein a number of key segments are determined based on a third encryption method.

7. The method of claim 1 , wherein the plurality of encrypted key segments are stored onto a subset of the plurality of network nodes.

8. The method of claim 1 , wherein a number key segments are determined based on a number of the plurality of network nodes.

9. The method of claim 1 , wherein a number network nodes storing at least on encrypted key segment is determined, by the server, at random.

10. The method of claim 1 , wherein the blockchain key is received, by the server, from a computing device.

11. A computer system for data encryption, the computer system comprising:

a plurality of network nodes, each network node configured to store a block instance of a blockchain;

a server communicatively coupled to each network node, the server configured to:

generate a blockchain key configured to provide access to a set of data associated with the blockchain, the blockchain key comprising a first string of alpha numerical and character values;

generate a plurality of key segments by dividing, based on a first encryption method, the first string of alpha numerical and character values into a plurality of second strings, each second string comprising at least a portion of the first string of alpha numerical and character values;

encrypt each key segment based on a second encryption method;

retrieve a latest valid blockchain from the plurality of network nodes associated with the blockchain, the latest valid blockchain comprising one or more block instances comprising blockchain data and a corresponding cryptographic hash value, each block instance stored in a database associated with at least one of the plurality of network nodes;

generate an instruction to store at least one of the plurality of the encrypted key segments; and

transmit the instruction and at least one encrypted key segment to at least one network node.

12. The system of claim 11 , wherein the server is further configured to:

generate a key record in a system database configured to store a plurality of key records and comprising one or more data fields containing the plurality of key segments, the first encryption method, the second encryption method, and an address of the plurality of network nodes.

13. The system of claim 11 , wherein multiple copies of an encrypted key segment are stored on different network nodes.

14. The system of claim 11 , wherein the second encryption method is different for each encrypted key segment.

15. The system of claim 11 , wherein the second encryption method is predetermined by the server.

16. The system of claim 11 , wherein a number of key segments are determined based on a third encryption method.

17. The system of claim 11 , wherein the plurality of encrypted key segments are stored onto a subset of the plurality of network nodes.

18. The system of claim 11 , wherein a number key segments are determined based on a number of the plurality of network nodes.

19. The system of claim 11 , wherein a number network nodes storing at least on encrypted key segment is determined, by the server, at random.

20. The system of claim 11 , wherein the blockchain key is received, by the server, from a computing device.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 4, 2018
From: KNAS, MICHAL; JOHN, JIBY; FERRY, RICK; GIBADLO, KRZYSZTOF
To: MASSACHUSETTS MUTUAL LIFE INSURANCE COMPANY
Reel/Frame 045983/0990 →
Continuity (1)
Provisional Application 62513868 · Jun 1, 2017
Cited By (9)
US 12,273,365 US 12,287,900 US 12,407,704 US 12,413,429 US 12,413,565 US 12,418,419 US 12,524,662 US 12,549,339 US 12,621,143