Private data processing
AssigneeMassachusetts Institute of Technology
InventorsMarten Van Dijk, Jing Chen, Srinivas Devadas
Life of this patent
Estimating the term…
Abstract
A method for processing one or more terms includes, at a first computation facility, computing an obfuscated numerical representation for each of the terms. The computed obfuscated representations are provided from the first facility to a second computation facility. A result of an arithmetic computation based on the provided obfuscated values is received at the first facility. This received result represents an obfuscation of a result of application of a first function to the terms. The received result is processed to determine the result of application of the first function to the terms.
Claims29
A method for processing one or more terms comprising:
- at a first computation facility, computing an obfuscated numerical representation for each of the terms;
- providing the computed obfuscated representations from the first facility to a second computation facility;
- receiving at the first entity a result of an arithmetic computation based on the provided obfuscated values representing an obfuscation of a result of application of a first function to the terms;
- and
- processing the received result to determine the result of application of the first function to the terms.
A method for determining presence of a desired identifier in a set of identifiers, the desired identifier and each in the set of identifiers being represented as a series of values from a domain of valid values, the method comprising:
- for each of the series of values of the desired identifier, computing a corresponding obfuscated representation of said value;
- providing the obfuscated representations of the values;
- receiving a numerical value computed based on the provided obfuscated representations and the representations of the identifiers in the set;
- and
- determining whether the desired identifier is present in the set of identifiers based on the received numerical value.
A method for determining presence of each of three or more desired identifiers in a set of identifiers, the method comprising:
- for each of the desired identifiers, computing a corresponding obfuscated representation of said desired identifier;
- providing the obfuscated representations of the identifiers;
- receiving a numerical value computed based on the provided obfuscated representations and the identifiers in the set;
- and
- determining whether all of the desired identifiers are present in the set of identifiers based on the received numerical value.
A data processing system comprising:
- a first computation facility configured to compute an obfuscated numerical representation for each of a set of one or more terms known to the first facility;
- and
- a second computation facility configured to receive the computed obfuscated representations from the first entity to a second facility and to compute a result of an arithmetic computation based on the received obfuscated values, the result representing an obfuscation of a result of application of a first function to the terms;
- and
- wherein the first computation facility is further configured to receive the result from the second facility and to process the result to determine the result of application of the first function to the terms.
Software stored on computer-readable media comprising instructions for causing a data processing system to:
- at a first computation facility, compute an obfuscated numerical representation for each of the terms;
- provide the computed obfuscated representations from the first facility to a second computation facility;
- receive at the first entity a result of an arithmetic computation based on the provided obfuscated values representing an obfuscation of a result of application of a first function to the terms;
- and
- process the received result to determine the result of application of the first function to the terms.
Dependencies are inferred from the claim text.