kirancodes.me
To Proof Maintenance & Beyond!

Program analysis for secure big data processing

Julian James Stephen, Savvas Savvides, Russell Seidel, Patrick Th. Eugster

Abstract

The ubiquitous nature of computers is driving a massive increase in the amount of data generated by humans and machines. Two natural consequences of this are the increased efforts to (a) derive meaningful information from accumulated data and (b) ensure that data is not used for unintended purposes. In the direction of analyzing massive amounts of data (a.), tools like MapReduce, Spark, Dryad and higher level scripting languages like Pig Latin and DryadLINQ have significantly improved corresponding tasks for software developers. The second, but equally important aspect of ensuring confidentiality (b.), has seen little support emerge for programmers: while advances in cryptographic techniques allow us to process directly on encrypted data, programmer-friendly and efficient ways of programming such data analysis jobs are still missing. This paper presents novel data flow analyses and program transformations for Pig Latin, that automatically enable the execution of corresponding scripts on encrypted data. We avoid fully homomorphic encryption because of its prohibitively high cost; instead, in some cases, we rely on a minimal set of operations performed by the client. We present the algorithms used for this translation, and empirically demonstrate the practical performance of our approach as well as improvements for programmers in terms of the effort required to preserve data confidentiality.

BibTeX
@inproceedings{Stephen-al:ASE14,
  author    = {Julian James Stephen and
               Savvas Savvides and
               Russell Seidel and
               Patrick Th. Eugster},
  title     = {Program analysis for secure big data processing},
  booktitle = {ASE},
  pages     = {277--288},
  publisher = {{ACM}},
  year      = {2014},
}

Related papers