ABSTRACT
Secure computation on private data has been an active area of research for many years and has received a renewed interest with the emergence of cloud computing. In recent years, substantial progress has been made with respect to the efficiency of the available techniques and several implementations have appeared. The available tools, however, lacked a convenient mechanism for implementing a general-purpose}program in a secure computation framework suitable for execution in not fully trusted environments. This work fulfills this gap and describes a system, called PICCO, for converting a program written in an extension of C into its distributed secure implementation and running it in a distributed environment. The C extension preserves all current features of the programming language and allows variables to be marked as private and be used in general-purpose computation. Secure distributed implementation of compiled programs is based on linear secret sharing, achieving efficiency and information-theoretical security. Our experiments also indicate that many programs can be evaluated very efficiently on private data using PICCO.
- Bison -- GNU parser generator. http://www.gnu.org/software/bison.Google Scholar
- Boost C++ libraries. http://www.boost.org.Google Scholar
- flex: The Fast Lexical Analyzer. http://flex.sourceforge.net.Google Scholar
- GENI: Global environment for network innovations. http://www.geni.net.Google Scholar
- GMP -- The GNU Multiple Precision Arithmetic Library. http://gmplib.org.Google Scholar
- OpenSSL: The open source toolkit for SSL/TLS. http://www.openssl.org.Google Scholar
- M. Aliasgari, M. Blanton, Y. Zhang, and A. Steele. Secure computation on floating point numbers. In NDSS, 2013.Google Scholar
- A. Ben-David, N. Nisan, and B. Pinkas. FairplayMP: A system for secure multi-party computation. In CCS, 2008. Google ScholarDigital Library
- M. Blanton. Empirical evaluation of secure two-party computation models. Technical Report TR 2005--58, CERIAS, Purdue University, 2005.Google Scholar
- D. Bogdanov, S. Laur, and J. Willemson. Sharemind: A framework for fast privacy-preserving computations. In ESORICS, pages 192--206, 2008. Google ScholarDigital Library
- D. Bogdanov, M. Niitsoo, T. Toft, and J. Willemson. High-performance secure multi-party computation for data mining applications. IJIS, 11(6):403--418, 2012.Google ScholarDigital Library
- J. Boyar and R. Peralta. A new combinational logic minimization technique with applications to cryptology. In Symposium on Experimental Algorithms, 2010. Google ScholarDigital Library
- J. Boyar and R. Peralta. A small depth-16 circuit for the AES S-box. In Information Security and Privacy Research, pages 287--298, 2012.Google ScholarCross Ref
- M. Burkhart, M. Strasser, D. Many, and X. Dimitropoulos. SEPIA: Privacy-preserving aggregation of multi-domain network events and statistics. In USENIX Security Symposium, pages 223--240, 2010. Google ScholarDigital Library
- R. Canetti. Security and composition of multiparty cryptographic protocols. Journal of Cryptology, 13(1):143--202, 2000.Google ScholarDigital Library
- O. Catrina and S. de Hoogh. Improved primitives for secure multiparty integer computation. In Security and Cryptography for Networks (SCN), pages 182--199, 2010. Google ScholarDigital Library
- O. Catrina and A. Saxena. Secure computation with fixed-point numbers. In FC, pages 35--50, 2010. Google ScholarDigital Library
- R. Cramer, I. Damgård, and Y. Ishai. Share conversion, pseudorandom secret-sharing and applications to secure computation. In TCC, pages 342--362, 2005. Google ScholarDigital Library
- I. Damgård, M. Geisler, and M. Krøigård. Asynchronous multiparty computation: Theory and implementation. In PKC, pages 160--179, 2009. Google ScholarDigital Library
- I. Damgård and M. Keller. Secure multiparty AES. In FC, pages 367--374, 2010. Google ScholarDigital Library
- I. Damgård, M. Keller, E. Larraia, C. Miles, and N. Smart. Implementing AES via an actively/covertly secure dishonest-majority MPC protocol. IACR Cryptology ePrint Archive Report 2012/262, 2012.Google Scholar
- I. Damgård and J. Nielsen. Scalable and unconditionally secure multiparty computation. In CRYPTO, 2007.Google ScholarCross Ref
- V. Dimakopoulos, E. Leontiadis, and G. Tzoumas. A portable C compiler for OpenMP V.2.0. In European Workshop on OpenMP (EWOMP), pages 5--11, 2003.Google Scholar
- M. Frigo, C. Leiserson, and K. Randall. The implementation of the Cilk-5 multithreaded language. In PLDI, pages 212--223, 1998. Google ScholarDigital Library
- M. Geisler. Cryptographic protocols: Theory and implementation. PhD thesis, Aarhus University, 2010.Google Scholar
- R. Gennaro, M. Rabin, and T. Rabin. Simplified VSS and fast-track multiparty computations with applications to threshold cryptography. In PODC, pages 101--111, 1998. Google ScholarDigital Library
- O. Goldreich. Towards a theory of software protection and simulation by oblivious RAMs. In STOC, 1987. Google ScholarDigital Library
- W. Henecka, S. Kogl, A.-R. Sadeghi, T. Schneider, and I. Wehrenberg. TASTY: Tool for Automating Secure Two-partY computations. In CCS, pages 451--462, 2010. Google ScholarDigital Library
- A. Holzer, M. Franz, S. Katzenbeisser, and H. Veith. Secure two-party computations in ANSI C. In CCS, 2012. Google ScholarDigital Library
- Y. Huang, D. Evans, J. Katz, and L. Malka. Faster secure two-party computation using garbled circuits. In USENIX Security Symposium, 2011. Google ScholarDigital Library
- R. Jagomägis. SecreC: A privacy-aware programming language with applications in data mining. Master's thesis, University of Tartu, 2010.Google Scholar
- F. Kerschbaum. Automatically optimizing secure computation. In CCS, pages 703--714, 2011. Google ScholarDigital Library
- J. Launchbury, I. Diatchki, T. DuBuisson, and A. Adams-Moran. Efficient lookup-table protocol in secure multiparty computation. In ICFP, pages 189--200, 2012. Google ScholarDigital Library
- S. Laur, R. Talviste, and J. Willemson. From oblivious AES to efficient and secure database join in the multiparty setting. In ACNS, pages 84--101, 2013. Google ScholarDigital Library
- D. Malkhi, N. Nisan, B. Pinkas, and Y. Sella. Fairplay -- a secure two-party computation system. In USENIX Security Symposium, pages 287--302, 2004. Google ScholarDigital Library
- B. Pinkas, T. Schneider, N. Smart, and S. Williams. Secure two-party computation is practical. In ASIACRYPT, 2009. Google ScholarDigital Library
- A. Schroepfer, F. Kerschbaum, and G. Mueller. L1 -- An intermediate language for mixed-protocol secure computation. In COMPSAC, pages 298--307, 2011. Google ScholarDigital Library
- A. Shamir. How to share a secret. Communications of the ACM, 22(11):612--613, 1979. Google ScholarDigital Library
Index Terms
- PICCO: a general-purpose compiler for private distributed computation
Recommendations
HyCC: Compilation of Hybrid Protocols for Practical Secure Computation
CCS '18: Proceedings of the 2018 ACM SIGSAC Conference on Computer and Communications SecurityWhile secure multi-party computation (MPC) is a vibrant research topic and a multitude of practical MPC applications have been presented recently, their development is still a tedious task that requires expert knowledge. Previous works have made first ...
A Domain-Specific Language for Low-Level Secure Multiparty Computation Protocols
CCS '15: Proceedings of the 22nd ACM SIGSAC Conference on Computer and Communications SecuritySharemind is an efficient framework for secure multiparty computations (SMC). Its efficiency is in part achieved through a large set of primitive, optimized SMC protocols that it makes available to applications built on its top. The size of this set has ...
Machine Independent AND and OR Parallel Execution of Logic Programs: Part II-Compiled Execution
In pt.I, we presented a binding environment for the ANDand OR parallel execution of logic programs. This environment was instrumental inrendering a compiler for the AND and OR parallel execution of logic programs machineindependent. In this paper, we ...
Comments