Cornell University
Library
Cornell UniversityLibrary

eCommons

Help
Log In(current)
  1. Home
  2. Cornell University Graduate School
  3. Cornell Theses and Dissertations
  4. Compilers for Secure Computation

Compilers for Secure Computation

File(s)
Recto_cornellgrad_0058F_13914.pdf (1.14 MB)
Permanent Link(s)
https://doi.org/10.7298/x55g-r212
https://hdl.handle.net/1813/114742
Collections
Cornell Theses and Dissertations
Author
Recto, Rolph
Abstract

Sophisticated cryptographic mechanisms for secure computation, such as multi-party computation (MPC) and homomorphic encryption (HE), allow for computing over encrypted data. These mechanisms have the potential to be used in a vast array of applications, from joint computations between mutually distrusting parties to privacy-preserving offloading of computation to service providers. While scientific advances have brought the performance of these mechanisms closer into widespread practical use, they still remain the purview of experts because of their forbidding programming models. We argue that compilers are necessary to democratize secure computation: a compiler would allow developers can write applications without worrying about the complicated details of using cryptographic mechanisms such as MPC and HE. To this end, we present two compilers for secure computation. First, we present Viaduct, an extensible compiler that can target a variety of cryptographic mechanisms. Developers write Viaduct programs in a security-typed language that allow them to annotate data with high-level security policies; the compiler then uses these annotations to determine which cryptographic mechanism can most efficiently and securely execute program components. Second, we present Viaduct-HE, a compiler that targets homomorphic encryption schemes. Modern HE schemes afford great performance improvements through batching many data elements into a single ciphertext, but data layouts that take advantage of batching most efficiently can be very complicated. Developers write Viaduct-HE programs in a high-level, array-oriented language; the compiler then searches for efficient strategies to lay out data in ciphertexts.

Description
190 pages
Date Issued
2023-08
Keywords
compilers
•
cryptography
•
programming languages
•
secure computation
Committee Chair
Myers, Andrew
Committee Member
Markovits, Julia
Shi, Runting
Degree Discipline
Computer Science
Degree Name
Ph. D., Computer Science
Degree Level
Doctor of Philosophy
Rights
Attribution-NoDerivatives 4.0 International
Rights URI
https://creativecommons.org/licenses/by-nd/4.0/
Type
dissertation or thesis
Link(s) to Catalog Record
https://newcatalog.library.cornell.edu/catalog/16219545

Site Statistics | Help

About eCommons | Policies | Terms of use | Contact Us

copyright © 2002-2026 Cornell University Library | Privacy | Web Accessibility Assistance