Paper 2017/1157
ARM2GC: Succinct Garbled Processor for Secure Computation
Ebrahim M Songhori, M Sadegh Riazi, Siam U Hussain, Ahmad-Reza Sadeghi, and Farinaz Koushanfar
Abstract
We present ARM2GC, a novel secure computation framework based on Yao’s Garbled Circuit (GC) protocol and the ARM processor. It allows users to develop privacy-preserving applications using standard high-level programming languages (e.g., C) and compile them using off-the-shelf ARM compilers (e.g., gcc-arm). The main enabler of this framework is the introduction of Skip-Gate, an algorithm that dynamically omits the communication and encryption cost of the gates whose outputs are independent of the private data. SkipGate greatly enhances the performance of ARM2GC by omitting costs of the gates associated with the instructions of the compiled binary, which is known by both parties involved in the computation. Our evaluation on benchmark functions demonstrates that ARM2GC not only outperforms the current GC frameworks that support high-level languages, it also achieves efficiency comparable to the best prior solutions based on hardware description languages. Moreover, in contrast to previous high-level frameworks with domain-specific languages and customized compilers, ARM2GC relies on standard ARM compiler which is rigorously verified and supports programs written in the standard syntax.
Note: Update results and add comparison to newer related work
Metadata
- Available format(s)
- Publication info
- Preprint. MINOR revision.
- Keywords
- cryptographic protocolsPrivacy-Preserving ComputationYao’s Garbled CircuitSecure ProcessorARM
- Contact author(s)
- siamumar @ ucsd edu
- History
- 2019-02-06: last of 2 revisions
- 2017-11-29: received
- See all versions
- Short URL
- https://ia.cr/2017/1157
- License
-
CC BY
BibTeX
@misc{cryptoeprint:2017/1157, author = {Ebrahim M Songhori and M Sadegh Riazi and Siam U Hussain and Ahmad-Reza Sadeghi and Farinaz Koushanfar}, title = {{ARM2GC}: Succinct Garbled Processor for Secure Computation}, howpublished = {Cryptology {ePrint} Archive, Paper 2017/1157}, year = {2017}, url = {https://eprint.iacr.org/2017/1157} }