EVA: An Encrypted Vector Arithmetic Language and Compiler for Efficient Homomorphic Computation

by   Roshan Dathathri, et al.

Fully-Homomorphic Encryption (FHE) offers powerful capabilities by enabling secure offloading of both storage and computation, and recent innovations in schemes and implementation have made it all the more attractive. At the same time, FHE is notoriously hard to use with a very constrained programming model, a very unusual performance profile, and many cryptographic constraints. Existing compilers for FHE either target simpler but less efficient FHE schemes or only support specific domains where they can rely on expert provided high-level runtimes to hide complications. This paper presents a new FHE language called Encrypted Vector Arithmetic (EVA), which includes an optimizing compiler that generates correct and secure FHE programs, while hiding all the complexities of the target FHE scheme. Bolstered by our optimizing compiler, programmers can develop efficient general purpose FHE applications directly in EVA. For example, we have developed image processing applications using EVA, with very few lines of code. EVA is designed to also work as an intermediate representation that can be a target for compiling higher-level domain-specific languages. To demonstrate this we have re-targeted CHET, an existing domain-specific compiler for neural network inference, onto EVA. Due to the novel optimizations in EVA, its programs are on average 5.3x faster than those generated by CHET. We believe EVA would enable a wider adoption of FHE by making it easier to develop FHE applications and domain-specific FHE compilers.


page 1

page 2

page 3

page 4


MotePy: A domain specific language for low-overhead machine learning and data processing

A domain specific language (DSL), named MotePy is presented. The DSL off...

CHET: Compiler and Runtime for Homomorphic Evaluation of Tensor Programs

Fully Homomorphic Encryption (FHE) refers to a set of encryption schemes...

A Formal Model for Secure Multiparty Computation

Although Secure Multiparty Computation (SMC) has seen considerable devel...

ARM2GC: Succinct Garbled Processor for Secure Computation

We present ARM2GC, a novel secure computation framework based on Yao's G...

HECO: Automatic Code Optimizations for Efficient Fully Homomorphic Encryption

In recent years, Fully Homomorphic Encryption (FHE) has undergone severa...

Domain-Specific Multi-Level IR Rewriting for GPU

Traditional compilers operate on a single generic intermediate represent...

nelli: a lightweight frontend for MLIR

Multi-Level Intermediate Representation (MLIR) is a novel compiler infra...

Please sign up or login with your details

Forgot password? Click here to reset