Distributed confidential contextual querying
First Claim
1. A method supporting distributed querying by a first computer of information residing on a second computer, the method comprising:
- constructing a data set on the second computer to encapsulate querying the information residing on the second computer with queries utilizing a set of query input terms, the data set encoding an answer for each of a plurality of combinations of query input term values, wherein said constructing the data set on the second computer comprises;
calculating a query hash value as a one-way hashing function of the set of query input terms for each of a plurality of unique combinations of query input term values in the information residing on the second computer;
for each of the plurality of unique combinations of query input term values, also calculating an answer value as a function of a set of terms in the information residing on the second computer and a logical rule; and
forming the data set as a plurality of pairs of the query hash value and the answer value for respective of the unique combinations of query input term values;
transmitting the data set from the second computer to the first computer; and
evaluating a query having values for the set of query input terms on the first computer using the data set to yield the query'"'"'s answer.
2 Assignments
0 Petitions
Accused Products
Abstract
For distributed querying of confidential information, a querying data structure is constructed from the confidential information on the computer at which the confidential information resides. The querying data structure opaquely encapsulates queries on the confidential information as a set of query hashes and answer pairs. The querying data structure is distributed to other computers where the distributed query processing is to be performed. The query is performed on such other computers by hashing the query terms, using the resulting query hash as a look up index to the associated answer in the querying data structure, and acting on the answer. A strictly one-way hash is used to prevent recovery of the original inputs to the query hashes in the query data structure by reverse hash.
-
Citations
16 Claims
-
1. A method supporting distributed querying by a first computer of information residing on a second computer, the method comprising:
-
constructing a data set on the second computer to encapsulate querying the information residing on the second computer with queries utilizing a set of query input terms, the data set encoding an answer for each of a plurality of combinations of query input term values, wherein said constructing the data set on the second computer comprises;
calculating a query hash value as a one-way hashing function of the set of query input terms for each of a plurality of unique combinations of query input term values in the information residing on the second computer;
for each of the plurality of unique combinations of query input term values, also calculating an answer value as a function of a set of terms in the information residing on the second computer and a logical rule; and
forming the data set as a plurality of pairs of the query hash value and the answer value for respective of the unique combinations of query input term values;
transmitting the data set from the second computer to the first computer; and
evaluating a query having values for the set of query input terms on the first computer using the data set to yield the query'"'"'s answer. - View Dependent Claims (2, 3, 4, 5, 6)
-
-
7. One or more computer-readable media having computer-executable instructions for performing a method supporting distributed querying by a first computer of information residing on a second computer, the method comprising:
-
constructing a data set on the second computer to encapsulate querying the information residing on the second computer with queries utilizing a set of query input terms, the data set encoding an answer for each of a plurality of combinations of query input term values, wherein said constructing the data set on the second computer comprises;
calculating a query hash value as a one-way hashing function of the set of query input terms for each of a plurality of unique combinations of query input term values in the information residing on the second computer;
for each of the plurality of unique combinations of query input term values, also calculating an answer value as a function of a set of terms in the information residing on the second computer and a logical rule; and
forming the data set as a plurality of pairs of the query hash value and the answer value for respective of the unique combinations of query input term values;
transmitting the data set from the second computer to the first computer; and
evaluating a query having values for the set of query input terms on the first computer using the data set to yield the query'"'"'s answer. - View Dependent Claims (8, 9, 10, 11)
-
-
12. An apparatus supporting distributed querying by a first computer of information residing on a second computer, the apparatus comprising:
-
means for constructing a data set on the second computer to encapsulate querying the information residing on the second computer with queries utilizing a set of query input terms, the data set encoding an answer for each of a plurality of combinations of query input term values, wherein said constructing the data set on the second computer comprises;
means for calculating a query hash value as a one-way hashing function of the set of query input terms for each of a plurality of unique combinations of query input term values in the information residing on the second computer;
for each of the plurality of unique combinations of query input term values, means for also calculating an answer value as a function of a set of terms in the information residing on the second computer and a logical rule; and
means for forming the data set as a plurality of pairs of the query hash value and the answer value for respective of the unique combinations of query input term values;
means for transmitting the data set from the second computer to the first computer; and
means for evaluating a query having values for the set of query input terms on the first computer using the data set to yield the query'"'"'s answer. - View Dependent Claims (13, 14, 15, 16)
-
Specification