Abstract
The outsourcing of numerical and scientific computations, as introduced in (Atallah et al., 2001) uses the following framework: A customer needs computations done but lacks the computational resources (computing power, appropriate software, or programming expertise) to do these locally. An external agent can do these computations. The outsourcing is secure if it is done without revealing to the external agent either the actual data or the actual answer to the computations. The idea is for the customer to do some carefully designed local preprocessing (disguising) of the problem and/or data before sending it to the agent, and also some local postprocessing (unveiling) of the answer returned to extract the true answer. In this paper we extend this concept to the case of more than one customer, introducing the notion of mutually secure outsourcing where two or more parties contribute their private data into the (disguised) common computation performed through the external agent; the customers are to know the result but not each other's private data, and the external agent should know neither the provate data nor the result. We review the framework for disguising scientific computations and discuss their applicability, costs, and levels of security. We also introduce techniques for the disguise of programs in general, not just those for scientific computations.
Note
Accepted for publication in Proc. International NAISO (Natural
Artificial Intelligence Systems Organization) Congress on Information
Science Innovations, Dubai, U.A.E.