Annual Computer Security Applications Conference (ACSAC) 2016

Full Program »

T4. Practical Homomorphic Encryption

Tuesday, 6 December 2016
08:30 - 12:00

Salon 5

One of the first major breakthroughs of computer science in the 21st century is the demonstration of public-key Fully Homomorphic Encryption (FHE). FHE allows sensitive data to be encrypted such that arbitrary programs can be securely run over the encrypted data where the output, when decrypted, is equivalent to the result of running the original algorithm on the unencrypted data. Unfortunately, FHE was not practical when it was discovered - it was several orders of magnitude too inefficient to be economically feasible. This tutorial will review advances in FHE, from theory, implementation and application perspectives. In particular, the tutorial will focus on how homomorphic can be used in practice, with a focus with building on top of existing homomorphic encryption software implementations. We will particularly focus on how to design data structures and algorithms that lead to efficient and secure computing on encrypted data in real software.


·  General knowledge of computer science with assumed basic knowledge of cryptography, such as the notions of public key cryptography.


  1. Introduction.
    1. Review Goals of Course
  2. Encryption Basics
    1. Public Key Encryption
    2. Lattice-based Encryption
    3. Homomorphic Encryption
    4. Ring Learning With Errors
  3. Homomorphic Computation
    1. Circuit Computation Model
    2. Circuit Constructions
    3. Circuit Depth
  4. Plaintext and Polynomial Data Representations
    1. Encoding Data into Plaintext
    2. Data Structures for Circuit Execution
    3.  “If” statements are a big no-no.
  5. Parameters
    1. Parameter Selection for Security
    2. Parameter Selection for Correctness
    3. Parameter Selection for Efficiency
    4. Engineering Tradeoffs in Parameterization
  6. Making it work
    1. Software libraries
    2. Hardware acceleration
    3. Parallelization
    4. Working examples

About the Instructor:

Prof. Kurt Rohloff is an Associate Professor of Computer Science at the New Jersey Institute of Technology (NJIT). He is a former Senior Scientist in the distributed computing group at Raytheon BBN Technologies and post-doc in the Coordinated Science Laboratory (CSL) at the University of Illinois, Urbana-Champaign. He received the Bachelor’s degree in Electrical Engineer from the Georgia Institute of Technology, and his MS and PhD degrees from the University of Michigan in Ann Arbor. His areas of expertise are applied cryptography, high assurance software, parallel computing and control theory.

Prof. Rohloff served as the PI of the DARPA-funded SIPHER team which developed and applied implementations of homomorphic encryption schemes in hardware and software. His team showed some of the first demonstrated practical applications of homomorphic encryption, such as end-to-end encrypted VoIP teleconferencing on commodity smartphones. His FHE implementation research has achieved 5+ orders of magnitude improvement in FHE runtime. He is currently PI of a DARPA-funded SafeWare team that is prototyping lattice-based program obfuscation schemes and an NSA-funded activity developing an open-source general lattice encryption library.


Powered by OpenConf®
Copyright©2002-2016 Zakon Group LLC