Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                
skip to main content
10.1145/2508859.2516752acmconferencesArticle/Chapter ViewAbstractPublication PagesccsConference Proceedingsconference-collections
research-article

PICCO: a general-purpose compiler for private distributed computation

Published: 04 November 2013 Publication History

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.

References

[1]
Bison -- GNU parser generator. http://www.gnu.org/software/bison.
[2]
Boost C++ libraries. http://www.boost.org.
[3]
flex: The Fast Lexical Analyzer. http://flex.sourceforge.net.
[4]
GENI: Global environment for network innovations. http://www.geni.net.
[5]
GMP -- The GNU Multiple Precision Arithmetic Library. http://gmplib.org.
[6]
OpenSSL: The open source toolkit for SSL/TLS. http://www.openssl.org.
[7]
M. Aliasgari, M. Blanton, Y. Zhang, and A. Steele. Secure computation on floating point numbers. In NDSS, 2013.
[8]
A. Ben-David, N. Nisan, and B. Pinkas. FairplayMP: A system for secure multi-party computation. In CCS, 2008.
[9]
M. Blanton. Empirical evaluation of secure two-party computation models. Technical Report TR 2005--58, CERIAS, Purdue University, 2005.
[10]
D. Bogdanov, S. Laur, and J. Willemson. Sharemind: A framework for fast privacy-preserving computations. In ESORICS, pages 192--206, 2008.
[11]
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.
[12]
J. Boyar and R. Peralta. A new combinational logic minimization technique with applications to cryptology. In Symposium on Experimental Algorithms, 2010.
[13]
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.
[14]
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.
[15]
R. Canetti. Security and composition of multiparty cryptographic protocols. Journal of Cryptology, 13(1):143--202, 2000.
[16]
O. Catrina and S. de Hoogh. Improved primitives for secure multiparty integer computation. In Security and Cryptography for Networks (SCN), pages 182--199, 2010.
[17]
O. Catrina and A. Saxena. Secure computation with fixed-point numbers. In FC, pages 35--50, 2010.
[18]
R. Cramer, I. Damgård, and Y. Ishai. Share conversion, pseudorandom secret-sharing and applications to secure computation. In TCC, pages 342--362, 2005.
[19]
I. Damgård, M. Geisler, and M. Krøigård. Asynchronous multiparty computation: Theory and implementation. In PKC, pages 160--179, 2009.
[20]
I. Damgård and M. Keller. Secure multiparty AES. In FC, pages 367--374, 2010.
[21]
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.
[22]
I. Damgård and J. Nielsen. Scalable and unconditionally secure multiparty computation. In CRYPTO, 2007.
[23]
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.
[24]
M. Frigo, C. Leiserson, and K. Randall. The implementation of the Cilk-5 multithreaded language. In PLDI, pages 212--223, 1998.
[25]
M. Geisler. Cryptographic protocols: Theory and implementation. PhD thesis, Aarhus University, 2010.
[26]
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.
[27]
O. Goldreich. Towards a theory of software protection and simulation by oblivious RAMs. In STOC, 1987.
[28]
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.
[29]
A. Holzer, M. Franz, S. Katzenbeisser, and H. Veith. Secure two-party computations in ANSI C. In CCS, 2012.
[30]
Y. Huang, D. Evans, J. Katz, and L. Malka. Faster secure two-party computation using garbled circuits. In USENIX Security Symposium, 2011.
[31]
R. Jagomägis. SecreC: A privacy-aware programming language with applications in data mining. Master's thesis, University of Tartu, 2010.
[32]
F. Kerschbaum. Automatically optimizing secure computation. In CCS, pages 703--714, 2011.
[33]
J. Launchbury, I. Diatchki, T. DuBuisson, and A. Adams-Moran. Efficient lookup-table protocol in secure multiparty computation. In ICFP, pages 189--200, 2012.
[34]
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.
[35]
D. Malkhi, N. Nisan, B. Pinkas, and Y. Sella. Fairplay -- a secure two-party computation system. In USENIX Security Symposium, pages 287--302, 2004.
[36]
B. Pinkas, T. Schneider, N. Smart, and S. Williams. Secure two-party computation is practical. In ASIACRYPT, 2009.
[37]
A. Schroepfer, F. Kerschbaum, and G. Mueller. L1 -- An intermediate language for mixed-protocol secure computation. In COMPSAC, pages 298--307, 2011.
[38]
A. Shamir. How to share a secret. Communications of the ACM, 22(11):612--613, 1979.

Cited By

View all
  • (2024)Privacy-Enhancing Technologies in Biomedical Data ScienceAnnual Review of Biomedical Data Science10.1146/annurev-biodatasci-120423-1201077:1(317-343)Online publication date: 23-Aug-2024
  • (2024)Taypsi: Static Enforcement of Privacy Policies for Policy-Agnostic Oblivious ComputationProceedings of the ACM on Programming Languages10.1145/36498618:OOPSLA1(1407-1436)Online publication date: 29-Apr-2024
  • (2024)Privacy-Preserving DijkstraAdvances in Cryptology – CRYPTO 202410.1007/978-3-031-68400-5_3(74-110)Online publication date: 16-Aug-2024
  • Show More Cited By

Index Terms

  1. PICCO: a general-purpose compiler for private distributed computation

      Recommendations

      Comments

      Information & Contributors

      Information

      Published In

      cover image ACM Conferences
      CCS '13: Proceedings of the 2013 ACM SIGSAC conference on Computer & communications security
      November 2013
      1530 pages
      ISBN:9781450324779
      DOI:10.1145/2508859
      Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. Copyrights for components of this work owned by others than the author(s) must be honored. Abstracting with credit is permitted. To copy otherwise, or republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. Request permissions from [email protected].

      Sponsors

      Publisher

      Association for Computing Machinery

      New York, NY, United States

      Publication History

      Published: 04 November 2013

      Permissions

      Request permissions for this article.

      Check for updates

      Author Tags

      1. compiler
      2. general-purpose computation
      3. linear secret sharing
      4. parallel execution
      5. secure computation outsourcing
      6. secure multi-party computation
      7. source-to-source translator

      Qualifiers

      • Research-article

      Conference

      CCS'13
      Sponsor:

      Acceptance Rates

      CCS '13 Paper Acceptance Rate 105 of 530 submissions, 20%;
      Overall Acceptance Rate 1,261 of 6,999 submissions, 18%

      Upcoming Conference

      CCS '25

      Contributors

      Other Metrics

      Bibliometrics & Citations

      Bibliometrics

      Article Metrics

      • Downloads (Last 12 months)93
      • Downloads (Last 6 weeks)9
      Reflects downloads up to 18 Feb 2025

      Other Metrics

      Citations

      Cited By

      View all
      • (2024)Privacy-Enhancing Technologies in Biomedical Data ScienceAnnual Review of Biomedical Data Science10.1146/annurev-biodatasci-120423-1201077:1(317-343)Online publication date: 23-Aug-2024
      • (2024)Taypsi: Static Enforcement of Privacy Policies for Policy-Agnostic Oblivious ComputationProceedings of the ACM on Programming Languages10.1145/36498618:OOPSLA1(1407-1436)Online publication date: 29-Apr-2024
      • (2024)Privacy-Preserving DijkstraAdvances in Cryptology – CRYPTO 202410.1007/978-3-031-68400-5_3(74-110)Online publication date: 16-Aug-2024
      • (2023)Sequre: a high-performance framework for secure multiparty computation enables biomedical data sharingGenome Biology10.1186/s13059-022-02841-524:1Online publication date: 11-Jan-2023
      • (2023)COMBINE: COMpilation and Backend-INdependent vEctorization for Multi-Party ComputationProceedings of the 2023 ACM SIGSAC Conference on Computer and Communications Security10.1145/3576915.3623181(2531-2545)Online publication date: 15-Nov-2023
      • (2023)AutoReP: Automatic ReLU Replacement for Fast Private Network Inference2023 IEEE/CVF International Conference on Computer Vision (ICCV)10.1109/ICCV51070.2023.00478(5155-5165)Online publication date: 1-Oct-2023
      • (2023)Evaluating Defensive Countermeasures for Software-Based Hardware AbstractionE-Business and Telecommunications10.1007/978-3-031-36840-0_13(281-304)Online publication date: 22-Jul-2023
      • (2022)Efficiency and Accuracy Improvements of Secure Floating-Point Addition over Secret SharingIEICE Transactions on Fundamentals of Electronics, Communications and Computer Sciences10.1587/transfun.2021CIP0013E105.A:3(231-241)Online publication date: 1-Mar-2022
      • (2022)PPMLACProceedings of the 49th Annual International Symposium on Computer Architecture10.1145/3470496.3527392(87-101)Online publication date: 18-Jun-2022
      • (2022)CirC: Compiler infrastructure for proof systems, software verification, and more2022 IEEE Symposium on Security and Privacy (SP)10.1109/SP46214.2022.9833782(2248-2266)Online publication date: May-2022
      • Show More Cited By

      View Options

      Login options

      View options

      PDF

      View or Download as a PDF file.

      PDF

      eReader

      View online with eReader.

      eReader

      Figures

      Tables

      Media

      Share

      Share

      Share this Publication link

      Share on social media