TY - JOUR
AB - Encrypting data before sending it to the cloud ensures data confidentiality but requires the cloud to compute on encrypted data. Trusted execution environments, such as Intel SGX enclaves, promise to provide a secure environment in which data can be decrypted and then processed. However, vulnerabilities in the executed program give attackers ample opportunities to execute arbitrary code inside the enclave. This code can modify the dataflow of the program and leak secrets via SGX side channels. Fully homomorphic encryption would be an alternative to compute on encrypted data without data leaks. However, due to its high computational complexity, its applicability to general-purpose computing remains limited. Researchers have made several proposals for transforming programs to perform encrypted computations on less powerful encryption schemes. Yet current approaches do not support programs making control-flow decisions based on encrypted data.
We introduce the concept of
dataflow authentication
(DFAuth) to enable such programs. DFAuth prevents an adversary from arbitrarily deviating from the dataflow of a program. Our technique hence offers protections against the side-channel attacks described previously. We implemented two flavors of DFAuth, a Java bytecode-to-bytecode compiler, and an SGX enclave running a small and program-independent trusted code base. We applied DFAuth to a neural network performing machine learning on sensitive medical data and a smart charging scheduler for electric vehicles. Our transformation yields a neural network with encrypted weights, which can be evaluated on encrypted inputs in
\( 12.55 \,\mathrm{m}\mathrm{s} \)
. Our protected scheduler is capable of updating the encrypted charging plan in approximately 1.06 seconds.
AU - Fischer, Andreas
AU - Fuhry, Benny
AU - Kußmaul, Jörn
AU - Janneck, Jonas
AU - Kerschbaum, Florian
AU - Bodden, Eric
ID - 31844
IS - 3
JF - ACM Transactions on Privacy and Security
KW - Safety
KW - Risk
KW - Reliability and Quality
KW - General Computer Science
SN - 2471-2566
TI - Computation on Encrypted Data Using Dataflow Authentication
VL - 25
ER -