Ramparts: A programmer-friendly system for building homomorphic encryption applications

David W. Archer, José Manuel Calderón Trilla, Jason Dagit, Alex J. Malozemoff, Yuriy Polyakov, Kurt Rohloff, Gerard Ryan

Research output: Chapter in Book/Report/Conference proceedingConference contribution

7 Scopus citations

Abstract

Homomorphic Encryption (HE) is an emerging technology that enables computing on data while the data is encrypted. A major challenge with homomorphic encryption is that it takes extensive expert knowledge to design meaningful and useful programs that are constructed from atomic HE operations. We present Ramparts to address this challenge. Ramparts provides an environment for developing HE applications in Julia, a high-level language, the same way as “cleartext” applications are typically written in Julia. Ramparts makes the following three contributions. First, we use symbolic execution to automate the construction of an optimized computation circuit where both the circuit size and multiplicative depth are chosen by the compiler. Second, Ramparts automatically selects the HE parameters for the generated circuit, which is typically done manually by an HE expert. Third, Ramparts automatically selects the plaintext encoding for input values, and performs input and output data transformations. These three operations are not easily performed by programmers who are not HE experts. Thus, Ramparts makes HE more widely available and usable by the the population of programmers. We compare our approach with Cingulata, the only previously known system that automatically generates circuits for HE computations. The HE circuits generated by Ramparts are significantly more efficient than the circuits compiled by Cingulata. For instance, our runtimes for key generation/circuit compilation and all online operations are more than one order of magnitude lower for a sample image processing application used for performance evaluation in our study.

Original languageEnglish (US)
Title of host publicationWAHC 2019 - Proceedings of the 7th ACM Workshop on Encrypted Computing and Applied Homomorphic Cryptography
PublisherAssociation for Computing Machinery
Pages57-68
Number of pages12
ISBN (Electronic)9781450368292
DOIs
StatePublished - Nov 11 2019
Event7th Workshop on Encrypted Computing and Applied Homomorphic Cryptography, WAHC 2019, co-located with the 26th ACM Conference on Computer and Communications Security, CCS 2019 - London, United Kingdom
Duration: Nov 11 2019 → …

Publication series

NameProceedings of the ACM Conference on Computer and Communications Security
ISSN (Print)1543-7221

Conference

Conference7th Workshop on Encrypted Computing and Applied Homomorphic Cryptography, WAHC 2019, co-located with the 26th ACM Conference on Computer and Communications Security, CCS 2019
Country/TerritoryUnited Kingdom
CityLondon
Period11/11/19 → …

All Science Journal Classification (ASJC) codes

  • Software
  • Computer Networks and Communications

Keywords

  • Automatic arithmetic circuit generation
  • Homomorphic encryption
  • Lattice-based cryptography
  • Privacy
  • Usable security

Fingerprint

Dive into the research topics of 'Ramparts: A programmer-friendly system for building homomorphic encryption applications'. Together they form a unique fingerprint.

Cite this