Paper 2022/322
SecFloat: Accurate Floating-Point meets Secure 2-Party Computation
Deevashwer Rathee, Anwesh Bhattacharya, Rahul Sharma, Divya Gupta, Nishanth Chandran, and Aseem Rastogi
Abstract
We build a library SecFloat for secure 2-party computation (2PC) of 32-bit single-precision floating-point operations and math functions. The existing functionalities used in cryptographic works are imprecise and the precise functionalities used in standard libraries are not crypto-friendly, i.e., they use operations that are cheap on CPUs but have exorbitant cost in 2PC. SecFloat bridges this gap with its novel crypto-friendly precise functionalities. Compared to the prior cryptographic libraries, SecFloat is up to six orders of magnitude more precise and up to two orders of magnitude more efficient. Furthermore, against a precise 2PC baseline, SecFloat is three orders of magnitude more efficient. The high precision of SecFloat leads to the first accurate implementation of secure inference. All prior works on secure inference of deep neural networks rely on ad hoc float-to-fixed converters. We evaluate a model where the fixed-point approximations used in privacy-preserving machine learning completely fail and floating-point is necessary. Thus, emphasizing the need for libraries like SecFloat.
Metadata
- Available format(s)
- Category
- Cryptographic protocols
- Publication info
- Published elsewhere. Major revision. IEEE Security and Privacy 2022
- Keywords
- secure two-party computationfloating-pointprivacy-preserving machine learningsecure inferenceprivacy-preserving proximity testing
- Contact author(s)
-
deevashwer @ berkeley edu
rahsha @ microsoft com
divya gupta @ microsoft com - History
- 2022-03-08: received
- Short URL
- https://ia.cr/2022/322
- License
-
CC BY
BibTeX
@misc{cryptoeprint:2022/322, author = {Deevashwer Rathee and Anwesh Bhattacharya and Rahul Sharma and Divya Gupta and Nishanth Chandran and Aseem Rastogi}, title = {{SecFloat}: Accurate Floating-Point meets Secure 2-Party Computation}, howpublished = {Cryptology {ePrint} Archive, Paper 2022/322}, year = {2022}, url = {https://eprint.iacr.org/2022/322} }