Fully homomorphic encryption (FHE) allows computations over encrypted data.
This technique makes privacy-preserving cloud computing a reality. Users can
send their encrypted sensitive data to a cloud server, get encrypted results
returned and decrypt them, without worrying about data breaches.
This project report presents a homomorphic instruction set emulator,
CryptoEmu, that enables fully homomorphic computation over encrypted data. The
software-based instruction set emulator is built upon an open-source,
state-of-the-art homomorphic encryption library that supports gate-level
homomorphic evaluation. The instruction set architecture supports multiple
instructions that belong to the subset of ARMv8 instruction set architecture.
The instruction set emulator utilizes parallel computing techniques to emulate
every functional unit for minimum latency. This project report includes details
on design considerations, instruction set emulator architecture, and datapath
and control unit implementation. We evaluated and demonstrated the instruction
set emulator’s performance and scalability on a 48-core workstation. CryptoEmu
has shown a significant speedup in homomorphic computation performance when
compared with HELib, a state-of-the-art homomorphic encryption library.