Valiant β s Universal Circuit is Practical Γgnes Kiss Thomas Schneider TU Darmstadt Eurocrypt 2016 May 11, 2016
Universal Circuit (UC) There is a Boolean circuit ππ· of size O π log π for which it holds that for any Boolean function π of size π ππ· can be made to compute π. Leslie G. Valiant 1976 π ππ· 2
Universal Circuit (UC) There is a Boolean circuit ππ· of size O π log π for which it holds that for any Boolean function π of size π there exists a programming π such that for any input π¦: ππ· π, π¦ = π π¦ . π¦ π¦ π Leslie G. Valiant 1976 π(π¦) ππ·(π, π¦) 2
UC Applications Verifiable Program obfuscation computation Attribute-based Private function encryption evaluation 3
Secure Function Evaluation π π§ π¦ π(π¦, π§) 4
Secure Function Evaluation π§ π¦ SFE π π(π¦, π§) 4
Secure Function Evaluation π§ π¦ SFE π π(π¦, π§) 4
Secure Function Evaluation SFE π§ π¦ π π(π¦, π§) 4
Secure Function Evaluation Boolean circuit π§ π¦ π(π¦, π§) π· βͺ Yaoβs Garbled Circuit Protocol βͺ Goldreich-Micali-Wigderson Protocol 4
Private Function Evaluation PFE π π¦ π(π¦) π(π¦) 5
Private Function Evaluation PFE π· π£, π€, π π¦ π(π¦) π(π¦) 5
Private Function Evaluation ππ· π£,π€,π π π¦ ππ·(π, π¦) ππ·(π, π¦) π(π¦) π(π¦) 5
PFE Applications Software diagnostics Medical diagnostics Private search Private databases queries 6
UC Construction C (size: π = π£ + π€ + π ) 7
UC Construction C (size: π = π£ + π€ + π ) UC Generation 7
UC Construction C (size: π = π£ + π€ + π ) UC Generation Programming bits p Universal Circuit UC 7
Existing UC Constructions [Val76] [KS08] O(π log 2 π) O(π log π) Size O(π) O(π log π) Depth Implemented [Val76] L. G. Valiant: Universal circuits (preliminary report). In STOC 1976. [KS08] V. Kolesnikov, T. Schneider: A practical universal circuit construction and secure evaluation of private functions. In FC 2008 . 8
Valiantβs UC Construction π G ENERATION Universal Graph UG Universal Circuit UC [Val76] L. G. Valiant: Universal circuits (preliminary report). In STOC 1976. 9
Valiantβs UC Construction C size β€ π π P ROGRAMMING G ENERATION Universal Graph UG Universal Circuit UC C [Val76] L. G. Valiant: Universal circuits (preliminary report). In STOC 1976. 9
Valiantβs UC Construction C size β€ π π P ROGRAMMING G ENERATION Graph G C Universal Graph UG Universal Circuit UC C G C [Val76] L. G. Valiant: Universal circuits (preliminary report). In STOC 1976. 9
Valiantβs UC Construction C size β€ π π P ROGRAMMING G ENERATION Graph G C Universal Graph UG Edge-embedding E Universal Circuit UC [Val76] L. G. Valiant: Universal circuits (preliminary report). In STOC 1976. G C 9
Valiantβs UC Construction C size β€ π π P ROGRAMMING G ENERATION Graph G C Universal Graph UG Edge-embedding E Universal Circuit UC [Val76] L. G. Valiant: Universal circuits (preliminary report). In STOC 1976. G C 9
Valiantβs UC Construction C size β€ π π P ROGRAMMING G ENERATION Graph G C Universal Graph UG Edge-embedding E Universal Circuit UC [Val76] L. G. Valiant: Universal circuits (preliminary report). In STOC 1976. G C 9
Valiantβs UC Construction C size β€ π π P ROGRAMMING G ENERATION Graph G C Universal Graph UG Edge-embedding E Universal Circuit UC [Val76] L. G. Valiant: Universal circuits (preliminary report). In STOC 1976. G C 9
Valiantβs UC Construction C size β€ π π P ROGRAMMING G ENERATION Graph G C Universal Graph UG Edge-embedding E Universal Circuit UC [Val76] L. G. Valiant: Universal circuits (preliminary report). In STOC 1976. G C 9
Valiantβs UC Construction C size β€ π π P ROGRAMMING G ENERATION Graph G C Universal Graph UG Edge-embedding E Programming bits p Universal Circuit UC [Val76] L. G. Valiant: Universal circuits (preliminary report). In STOC 1976. 9
Valiantβs UC Construction C size β€ π π P ROGRAMMING G ENERATION Graph G C Universal Graph UG Edge-embedding E Programming bits p Universal Circuit UC [Val76] L. G. Valiant: Universal circuits (preliminary report). In STOC 1976. 9
Our Contributions Valiantβs universal circuit is practical. Refined size of UC compiler Embedding construction algorithm 10
UG Embedding Algorithm P ROGRAMMING Graph G C Universal Graph UG Edge-embedding E 11
Recursive UG Construction ππ» π 2 1 ππ» ππ» π 2 π 2 ... 12
Recursive UG Construction ππ» π 2 1 ππ» ππ» π 2 π 2 11 ππ» 12 22 21 ππ» ππ» ππ» π 4 π 4 π 4 π 4 ... ... ... ... ... 12
Recursive UG Construction ππ» π 2 1 ππ» ππ» π 2 π 2 11 ππ» 12 21 22 ππ» ππ» ππ» π 4 π 4 π 4 π 4 111 ππ» 221 ππ» 211 ππ» 121 ππ» 112 222 212 ππ» 122 ππ» ππ» ππ» π 8 π 8 π 8 π 8 π 8 π 8 π 8 π 8 12
Recursive UG Construction ππ» π 2 1 ππ» ππ» π 2 π 2 11 ππ» 12 21 22 ππ» ππ» ππ» π 4 π 4 π 4 π 4 111 ππ» 221 ππ» 211 ππ» 121 ππ» 112 222 212 ππ» 122 ππ» ππ» ππ» π 8 π 8 π 8 π 8 π 8 π 8 π 8 π 8 12
Edge-Embedding G C 13
Edge-Embedding H 1 H 2 G C 13
Edge-Embedding H 1 H 2 G C G 1 G 2 13
Edge-Embedding H 1 H 2 G C G 1 G 2 H 11 H 12 H 21 H 22 13
Edge-Embedding H 1 H 2 H 11 H 12 H 21 H 22 13
Edge-Embedding H 1 H 2 H 11 H 12 H 21 H 22 G 11 G 12 G 21 G 22 13
Edge-Embedding H 1 H 2 H 11 H 12 H 21 H 22 H 122 H 211 H 212 H 221 H 222 H 111 H 121 H 112 13
Edge-Embedding H 1 H 2 H 11 H 12 H 21 H 22 H 122 H 211 H 212 H 221 H 222 H 111 H 121 H 112 13
Edge-Embedding H 1 H 2 H 11 H 12 H 21 H 22 H 122 H 211 H 212 H 221 H 222 H 111 H 121 H 112 13
Edge-Embedding G C H 1 H 2 H 11 H 12 H 21 H 22 H 122 H 211 H 212 H 221 H 222 H 111 H 121 H 112 14
Recursive UG Construction ππ» π 2 1 ππ» ππ» π 2 π 2 11 ππ» 12 21 22 ππ» ππ» ππ» π 4 π 4 π 4 π 4 111 ππ» 221 ππ» 211 ππ» 121 ππ» 112 222 212 ππ» 122 ππ» ππ» ππ» π 8 π 8 π 8 π 8 π 8 π 8 π 8 π 8 15
Our Contributions Valiantβs universal circuit is practical. Embedding UC compiler Refined size of algorithm construction 16
Size of Universal Graph Size of the universal graph Our upper bound Our lower bound Exact number of nodes πβ2 + 5 πβ2 πΊ π = 2πΊ , if π is even 2 2 πβ1 πβ3 + 5 πβ3 πΊ π = πΊ + πΊ + 3 , if π is odd 2 2 2 Size of original graph 17
Size of Universal Graph Size of the universal graph Our upper bound: 2.5π log 2 π β 9π + 5 log 2 π + 10 Our lower bound : 2.5π log 2 π β 4π + 2.5 log 2 π + 5 Exact number of nodes Size of original graph 17
Deviation of Estimated Size and Exact Size Devination in percentage 2.5π log 2 π β 6.5π + 3.75 log 2 π + 7.5 πβ2 + 5 πβ2 πΊ π = 2πΊ , if π is even 2 2 πβ1 πβ3 + 5 πβ3 πΊ π = πΊ + πΊ + 3 , if π is odd 2 2 2 Size of original graph 18
Size of the UC Constructions [KS08] Size of the universal circuit 2860 Number of gates 19
Revised size of the UC Constructions Size of the universal circuit 2860 1070 Number of gates 19
PFE Comparison β Symmetric-Key Operations [KS08] construction Valiantβs construction (revised) Symmetric-key operations [MS13] OT-based protocol 7 103 19 656 27 429 43 874 (DES) (AES) (MD5) (MULT32) 20
PFE Comparison β Symmetric-Key Operations [KS08] construction Valiantβs construction (revised) Symmetric-key operations [MS13] OT-based protocol 7 103 19 656 27 429 43 874 (DES) (AES) (MD5) (MULT32) (size) [MS13]: P. Mohassel, S. S. Sadeghian. How to hide circuits in MPC an efficient framework for private function evaluation. In Eurocrypt 2013 . 20
Our Contributions Valiantβs universal circuit is practical. Embedding Refined size of UC compiler algorithm construction 21
UC Implementation π SHDL C 0 [MNPS04] D. Malkhi, N. Nisan, B. Pinkas, Y. Sella. Fairplay-Secure Two-Party Computation System. In USENIX Security Symposium 2004 . 22
UC Implementation C size β€ π π C 0 3 1 ID 2 1 2 3 22
UC Implementation C size β€ π π C 0 Graph G C C G C 22
UC Implementation π C size β€ π π C 0 Graph G C Universal Graph UG 22
UC Implementation π C size β€ π π C 0 UC Compiler Graph G C Universal Graph UG Edge-embedding E 22
Recommend
More recommend