Authors:
Christopher Harth-Kitzerow
1
;
Georg Carle
1
;
Fan Fei
2
;
Andre Luckow
3
and
Johannes Klepsch
3
Affiliations:
1
Department of Informatics, Technical University of Munich, Garching, Germany
;
2
Faculty of Electrical Engineering and Computer Science, Leibniz University Hannover, Hannover, Germany
;
3
Group IT, The BMW Group, Munich, Germany
Keyword(s):
Secure Multiparty Computation, Garbled Circuits, Privacy Enhancing Technologies.
Abstract:
In this work, we introduce two schemes to construct reusable garbled circuits (RGCs) in the semi-honest
setting. Our completely reusable garbled circuit (CRGC) scheme allows the generator (party A) to construct
and send an obfuscated boolean circuit along with an encoded input to the evaluator (party B). In contrast to
Yao’s Garbled Circuit protocol, B can securely evaluate the same CRGC with an arbitrary number of inputs.
As a tradeoff, CRGCs predictably leak some input bits of A to B. We also propose a partially reusable garbled
circuit (PRGC) scheme that divides a circuit into reusable and non-reusable sections. PRGCs do not leak
input bits of A. We benchmark our CRGC implementation against the state-of-the-art garbled circuit libraries
EMP SH2PC and TinyGarble2. Using our framework, evaluating a CRGC is up to twenty times faster, albeit
with weaker privacy guarantees, than evaluating an equivalent garbled circuit constructed by the two existing
libraries. Our open-source library
can convert any C++ function to a CRGC at approx. 80 million gates per
second and repeatedly evaluate a CRGC at approx. 350 million gates per second. Additionally, a compressed
CRGC is approx. 75% smaller in file size than the unobfuscated boolean circuit.
(More)