Distributed Algorithms Made Secure: A Graph Theoretic Approach

In the area of distributed graph algorithms a number of network's entities with local views solve some computational task by exchanging messages with their neighbors. Quite unfortunately, an inherent property of most existing distributed algorithms is that throughout the course of their execution, the nodes get to learn not only their own output but rather learn quite a lot on the inputs or outputs of many other entities. This leakage of information might be a major obstacle in settings where the output (or input) of network's individual is a private information. In this paper, we introduce a new framework for \emph{secure distributed graph algorithms} and provide the first \emph{general compiler} that takes any "natural" non-secure distributed algorithm that runs in rounds, and turns it into a secure algorithm that runs in rounds where is the maximum degree in the graph and is its diameter. The security of the compiled algorithm is information-theoretic but holds only against a semi-honest adversary that controls a single node in the network. This compiler is made possible due to a new combinatorial structure called \emph{private neighborhood trees}: a collection of trees , one for each vertex , such that each tree spans the neighbors of {\em without going through }. Intuitively, each tree allows all neighbors of to exchange a \emph{secret} that is hidden from , which is the basic graph infrastructure of the compiler. In a -private neighborhood trees each tree has depth at most and each edge appears in at most different trees. We show a construction of private neighborhood trees with and .
View on arXiv