Blockchain data segregation
AssigneeInternational Business Machines Corporation
InventorsYacov Manevich, Dulce B. Ponceleon, Nitin Gaur, Petr Novotny
Life of this patent
Estimating the term…
Abstract
A node in a blockchain network may generate a key for a first ring, wherein the key unlocks a first collection of data, defining a second ring including a second node of a second organization, derive a second key for a second collection of data, wherein the first key and the second key access the second collection of data, and distributing the second key to the second node.
Claims17
A system comprising:
- a memory;
- and
- a processor in communication with the memory, the processor being configured to perform processes comprising:
- generating, by a first blockchain node of a first organization in a first ring, a first key for the first ring,
- wherein the first key unlocks a first collection of data stored on a blockchain,
- wherein a designation code for the first organization is used to generate the first key, and
- wherein the designation code for the first organization is stored on the blockchain;
- defining, by the first blockchain node, a second ring including a second blockchain node of a second organization;
- deriving, by the first blockchain node based on the first key, a second key for a second collection of data,
- wherein the first key and the second key access the second collection of data stored on the blockchain,
- wherein a second designation code for the second organization is used to generate the second key, and
- wherein the second designation code for the second organization is stored on the blockchain;
- distributing the second key to the second blockchain node;
- defining a third ring, including a third node of a third organization;
- deriving, based on the second key and a random number for the third node, a third key for a third collection of data;
- storing the random number on the blockchain;
- distributing the third key to the third node;
- retrieving, by the first blockchain node, the random number;
- deriving, by the first blockchain node, the third key using a pseudorandom function, the random number, and the first key;
- and
- decrypting, by the first blockchain node, the third data collection using the third key,
- wherein the first collection of data is not able to be accessed using either of the second key and the third key,
- wherein the second collection of data is not able to be accessed using the third key.
A method comprising:
- generating, by a first blockchain node of a first organization in a first ring, a first key for the first ring,
- wherein the first key unlocks a first collection of data stored on a blockchain,
- wherein a designation code for the first organization is used to generate the first key, and
- wherein the designation code for the first organization is stored on the blockchain;
- defining, by the first blockchain node, a second ring including a second blockchain node of a second organization;
- deriving, by the first blockchain node based on the first key, a second key for a second collection of data,
- wherein the first key and the second key access the second collection of data stored on the blockchain,
- wherein a second designation code for the second organization is used to generate the second key, and
- wherein the second designation code for the second organization is stored on the blockchain;
- distributing the second key to the second blockchain node;
- defining a third ring, including a third node of a third organization;
- deriving, based on the second key and a random number for the third node, a third key for a third collection of data;
- storing the random number on the blockchain;
- distributing the third key to the third node;
- retrieving, by the first blockchain node, the random number;
- deriving, by the first blockchain node, the third key using a pseudorandom function, the random number, and the first key;
- and
- decrypting, by the first blockchain node, the third data collection using the third key,
- wherein the first collection of data is not able to be accessed using either of the second key and the third key,
- wherein the second collection of data is not able to be accessed using the third key.
A computer program product comprising a computer readable storage medium having program instructions embodied therewith, the program instructions executable by a processor to cause the processors processor to perform a method, the method comprising:
- generating, by a first blockchain node of a first organization in a first ring, a first key for the first ring,
- wherein the first key unlocks a first collection of data stored on a blockchain,
- wherein a designation code for the first organization is used to generate the first key, and
- wherein the designation code for the first organization is stored on the blockchain;
- defining, by the first blockchain node, a second ring including a second blockchain node of a second organization;
- deriving, by the first blockchain node based on the first key, a second key for a second collection of data,
- wherein the first key and the second key access the second collection of data stored on the blockchain,
- wherein a second designation code for the second organization is used to generate the second key, and
- wherein the second designation code for the second organization is stored on the blockchain;
- and
- distributing the second key to the second blockchain node;
- defining a third ring, including a third node of a third organization;
- deriving, based on the second key and a random number for the third node, a third key for a third collection of data;
- storing the random number on the blockchain:
- distributing the third key to the third node;
- retrieving, by the first blockchain node, the random number;
- deriving, by the first blockchain node, the third key using a pseudorandom function, the random number, and the first key;
- and
- decrypting, by the first blockchain node, the third data collection using the third key,
- wherein the first collection of data is not able to be accessed using either of the second key and the third key,
- wherein the second collection of data is not able to be accessed using the third key.
Dependencies are inferred from the claim text.