IP Library Granted Patent US 11,487,886
Granted Patent B2
US 11,487,886 · App. 16/402,627 · Granted Nov 1, 2022

Database private document sharing

Inventors: Vijender Koorella (Austin, TX); Pramod Verma (Herndon, VA); Richard Gunjal (Bangalore, IN); Ching-Yun Chao (Austin, TX); Jeronimo Irazabal (Buenos Aires, AR)
Assignee: International Business Machines Corporation
G06F21/602G06F16/93G06F21/6245H04L9/0637H04L9/0819H04L9/3239H04L67/104H04L9/50
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,487,886
App. No.
16/402,627
Granted
Nov 1, 2022
Kind
B2
Abstract

An example operation may include one or more of generating, by a first blockchain client, a transaction to a blockchain network to transfer a document, transferring over a private channel, by a second blockchain client, a first key to the first blockchain client, the private channel providing a point-to-point connection between the first and second blockchain clients, encrypting the document using a shared key, transferring, by the first blockchain client, the encrypted document over the private channel, generating, by the second blockchain client, a transaction to acknowledge receipt of the encrypted document, and transferring the shared key encrypted with the first key.

Claims (58)

1. A first blockchain client in a blockchain network comprising a plurality of blockchain nodes and a second blockchain client, the first blockchain client comprising:

a memory storing one or more instructions; and

a processor that when executing the one or more instructions configures the processor to:

generate and send a transaction to the plurality of blockchain nodes requesting to transfer a document to the second blockchain client,

receive a first key from the second blockchain client via a private channel between the first blockchain client and the second blockchain client in response to the plurality of blockchain nodes endorsing the transaction,

encrypt the document using a shared key,

transfer the encrypted document to the second blockchain client via the private channel,

receive an endorsed acknowledgment transaction from the plurality of blockchain nodes in response to the plurality of blockchain nodes receiving an acknowledgment transaction acknowledging receipt of the document from the second blockchain client,

send the shared key encrypted with the first key to one of:

the second blockchain client, or

the plurality of blockchain nodes; and

receive an endorsed encrypted key transaction from the plurality of blockchain nodes.

2. The first blockchain client of claim 1 , wherein the acknowledgment transaction comprises a hash of the encrypted document calculated by the second blockchain client.

3. The first blockchain client of claim 2 , wherein, when the processor is configured to send the shared key encrypted with the first key to the plurality of blockchain nodes, the processor is further configured to:

generate and send an encrypted key transaction comprising the shared key encrypted with the first key to the plurality of blockchain nodes.

4. The first blockchain client of claim 2 , wherein, when the processor is configured to send the shared key encrypted with the first key to the second blockchain client, the processor is further configured to:

send the shared key encrypted with the first key to the second blockchain client via the private channel.

5. The system of claim 1 , wherein, when the processor is configured to receive an endorsed encrypted key transaction from the plurality of blockchain nodes, the processor is further configured to:

receive the endorsed encrypted key transaction from the plurality of blockchain nodes generated based on a second acknowledgement received by the plurality of blockchain nodes from the second blockchain client.

6. The first blockchain client of claim 5 , wherein the second acknowledgement comprises a hash of the shared key encrypted with the first key.

7. The first blockchain client of claim 1 , wherein all transactions are recorded to a shared ledger of the blockchain network and provide information to resolve a dispute or a theft of personal information.

8. A method, comprising:

generating, by a first blockchain client in a blockchain network comprising a plurality of blockchain nodes and a second blockchain client, a transaction to the plurality of blockchain nodes requesting to transfer a document to the second blockchain client;

receiving, by the first blockchain client, a first key from the second blockchain client via a private channel between the first blockchain client and the second blockchain client in response to the plurality of blockchain nodes endorsing the transaction;

encrypting, by the first blockchain client, the document using a shared key;

transferring, by the first blockchain client, the encrypted document to the second blockchain client via the private channel;

receiving, by the first blockchain client, an endorsed acknowledgment transaction from the plurality of blockchain nodes in response to the plurality of blockchain nodes receiving an acknowledgment transaction acknowledging receipt of the document from the second blockchain client;

sending, by the first blockchain client, the shared key encrypted with the first key to one of:

the second blockchain client, or

the plurality of blockchain nodes; and

receiving, by the first blockchain client, an endorsed encrypted key transaction from the plurality of blockchain nodes.

9. The method of claim 8 , wherein the acknowledgment transaction comprises a hash of the encrypted document calculated by the second blockchain client.

10. The method of claim 9 , wherein the sending the shared key encrypted with the first key to the plurality of blockchain nodes further comprises:

generating and sending, by the first blockchain client, an encrypted key transaction comprising the shared key encrypted with the first key to the plurality of blockchain nodes.

11. The method of claim 9 , wherein the sending the shared key encrypted with the first key to the second blockchain client further comprises:

sending, by the first blockchain client, the shared key encrypted with the first key to the second blockchain client via the private channel.

12. The method of claim 8 , wherein the receiving an endorsed encrypted key transaction from the plurality of blockchain nodes further comprises:

receiving, by the first blockchain client, the endorsed encrypted key transaction from the plurality of blockchain nodes generated based on a second acknowledgement received by the plurality of blockchain nodes from the second blockchain client.

13. The method of claim 12 , wherein the second acknowledgement comprises a hash of the shared key encrypted with the first key.

14. The method of claim 8 , wherein all transactions are recorded to a shared ledger of the blockchain network and provide information to resolve a dispute or a theft of personal information.

15. A non-transitory computer readable medium comprising one or more instructions that when executed by a processor of a first blockchain client in a blockchain network comprising a plurality of blockchain nodes and a second blockchain client cause the processor to perform:

generating a transaction to the plurality of blockchain nodes requesting to transfer a document to the second blockchain client;

receiving a first key from the second blockchain client via a private channel between the first blockchain client and the second blockchain client in response to the plurality of blockchain nodes endorsing the transaction;

encrypting the document using a shared key;

transferring the encrypted document to the second blockchain client via the private channel;

receiving an endorsed acknowledgment transaction from the plurality of blockchain nodes in response to the plurality of blockchain nodes receiving an acknowledgment transaction acknowledging receipt of the document from the second blockchain client;

sending the shared key encrypted with the first key to one of:

the second blockchain client, or

the plurality of blockchain nodes; and

receiving an endorsed encrypted key transaction from the plurality of blockchain nodes.

16. The non-transitory computer readable medium of claim 15 , wherein the acknowledgment transaction comprises a hash of the encrypted document.

17. The non-transitory computer readable medium of claim 16 , wherein the sending the shared key encrypted with the first key to the plurality of blockchain nodes further comprises:

generating and sending an encrypted key transaction comprising the shared key encrypted with the first key to the plurality of blockchain nodes.

18. The non-transitory computer readable medium of claim 16 , wherein the sending the shared key encrypted with the first key to the second blockchain client further comprises:

sending the shared key encrypted with the first key to the second blockchain client via the private channel.

19. The non-transitory computer readable medium of claim 15 , wherein the receiving an endorsed encrypted key transaction from the plurality of blockchain nodes further comprises:

receiving the endorsed encrypted key transaction from the plurality of blockchain nodes generated based on a second acknowledgement received by the plurality of blockchain nodes from the second blockchain client.

20. The non-transitory computer readable medium of claim 19 , wherein the second acknowledgement comprises a hash of the shared key encrypted with the first key.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded May 3, 2019
From: KOORELLA, VIJENDER; VERMA, PRAMOD; GUNJAL, RICHARD; CHAO, CHING-YUN; IRAZABAL, JERONIMO
To: INTERNATIONAL BUSINESS MACHINES CORPORATION
Reel/Frame 049073/0077 →
Continuity (1)
Related Publication 20200349261A1 · Nov 5, 2020
Cited By (5)
US 12,277,552 US 12,412,171 US 12,489,648 US 12,511,652 US 12,732,389