EzPC: Programmable and Efficient Secure Two-Party Computation for Machine Learning presented at IEEEEuroS&P 2019

by Rahul Sharma, Divya Gupta, Aseem Rastogi, Nishanth Chandran, Shardul Tripathi,

Summary : We present EZPC, a secure two-party computation (2PC) framework that generates efficient 2PC protocols from high-level, easy-to-write programs. EZPC provides formal correctness and security guarantees while maintaining performance and scalability. Previous language frameworks, such as CBMCGC, ObliVM, SMCL, and Wysteria, generate protocols that use either arithmetic or boolean circuits exclusively. Our compiler is the first to generate protocols that combine both arithmetic and boolean circuits for better performance. We empirically demonstrate that the protocols generated by our framework match or outperform (up to 19x) recent works that provide hand-crafted protocols for various functionalities such as secure prediction and matrix factorization.