IP Library Granted Patent US 8,607,350
Granted Patent B2
US 8,607,350 · App. 11/393,356 · Granted Dec 10, 2013

Sovereign information sharing service

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 8,607,350
App. No.
11/393,356
Granted
Dec 10, 2013
Kind
B2
Abstract

Embodiments herein provide a method, system, etc. for a sovereign information sharing service. More specifically, a method for secure distributed query processing comprises storing data tables from at least one data provider in at least one first computer comprising a sovereign server. Next, encrypted input and output of the data tables is performed between the server and a second computer. Following this, join operations are computed, comprising determining whether arbitrary join predicates yield matches within the data tables; and encrypted results of the join operations are output. The method minimizes possible information leakage from interaction between the server and the second computer by making observations and inferences from patterns of the outputting of the encrypted results.

Claims (47)

1. A computer-implemented method for secure distributed query processing, comprising:

storing data tables from at least one data provider in at least one first computer comprising a sovereign server;

performing encrypted input and output of said data tables between said server and a second computer;

computing join operations, comprising determining whether arbitrary join predicates yield matches within said data tables;

outputting encrypted results of said join operations,

where said data tables include database relations A, B, C and D,

where |A|=|C|, and |B|=|D|,

where A and C have identical schema, and B and D have identical schema,

where for any given maximum number of tuples from B that match a tuple from A, J AC , and J BD are ordered lists of server locations read and written by the sovereign server during the join of A with respect to C, and the joint of B with respect to D, respectively, and

where J AC and J BD are identically distributed.

2. The computer-implemented method according to claim 1 , further comprising performing additional CPU cycles to increase said processing time.

3. The computer-implemented method according to claim 1 , wherein said outputting of said encrypted results comprises outputting a size of said results that is independent of whether said arbitrary join predicates yield said matches.

4. The computer-implemented method according to claim 1 , wherein said outputting of said encrypted results comprises outputting decoys.

5. A computer-implemented method for secure distributed query processing, comprising:

performing encrypted input and output of data tables between a server and a secure computer;

performing queries of said data tables to produce results;

modifying said results by at least one of increasing a size of said results, and increasing a processing time of said results to produce modified results; and

outputting said modified results; and

where said data tables include database relations A, B, C and D,

where |A|=|C|, and |B|=|D|,

where A and C have identical schema, and B and D have identical schema,

where for any given maximum number of tuples from B that match a tuple from A, J AC , and J BD are ordered lists of server locations read and written by said server during the join of A with respect to C, and the joint of B with respect to D, respectively, and where J AC and J BD are identically distributed.

6. The computer-implemented method according to claim 5 , wherein said modifying of said results is independent of whether data matches corresponding to said queries exist within said data tables.

7. The computer-implemented method according to claim 5 , wherein said increasing of said size of said results comprises adding decoys to said results.

8. The computer-implemented method according to claim 5 , wherein said increasing of said processing time of said results comprises performing additional CPU cycles.

9. A system for secure distributed query processing, comprising:

at least one first computer comprising a sovereign server adapted to store data tables from at least one data provider; and

a second computer operatively connected to said first computer, wherein said second computer is adapted to perform encrypted input and output of said data tables with said first computer, compute join operations to determine whether arbitrary join predicates yield matches within said data tables, and output encrypted results of said join operations, and

where said data tables include database relations A, B, C and D,

where |A|=|C|, and |B|=|D|,

where A and C have identical schema, and B and D have identical schema,

where for any given maximum number of tuples from B that match a tuple from A, J AC , and J BD are ordered lists of server locations read and written by the sovereign server during the join of A with respect to C, and the joint of B with respect to D, respectively, and

where J AC and J BD are identically distributed.

10. The system according to claim 9 , wherein said size of said encrypted results is independent of whether said arbitrary join predicates yield said matches.

11. The system according to claim 9 , wherein said size of said encrypted results comprises decoys.

12. The system according to claim 9 , wherein said processing time is independent of whether said arbitrary join predicates yield said matches.

13. The system according to claim 9 , wherein said processing time comprises additional CPU cycles.

14. A system for secure distributed query processing, comprising:

a secure computer adapted to perform encrypted input and output of data tables with a server, perform queries of said data tables to produce results, modify said results to produce modified results, and output said modified results,

where said data tables include database relations A, B, C and D,

where |A|=|C|, and |B|=|D|,

where A and C have identical schema, and B and D have identical schema,

where for any given maximum number of tuples from B that match a tuple from A, J AC , and J BD are ordered lists of server locations read and written by said server during the join of A with respect to C, and the joint of B with respect to D, respectively, and

where J AC and J BD are identically distributed.

15. The system according to claim 14 , wherein said modified results are independent of whether data matches corresponding to said queries exist within said data tables.

16. The system according to claim 14 , wherein said modified results comprise decoys.

17. The system according to claim 14 , wherein said modified results comprise additional CPU cycles.

Assignments (2)
CONVEYOR IS ASSIGNING UNDIVIDED 50% INTEREST Recorded Jan 29, 2018
From: INTERNATIONAL BUSINESS MACHINES CORPORATION
To: SERVICENOW, INC.; INTERNATIONAL BUSINESS MACHINES CORPORATION
Reel/Frame 045185/0323 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Mar 30, 2006
From: AGRAWAL, RAKESH; ASONOV, DMITRI; KANTARCIOGLU, MURAT; LI, YAPING
To: INTERNATIONAL BUSINESS MACHINES CORPORATION
Reel/Frame 017761/0095 →