Chair of Network Architectures and Services Department of Informatics Technical University of Munich Performance of Secure Multiparty Computation Ludwig Dickmanns Thursday 11 th October, 2018 Chair of Network Architectures and Services Department of Informatics Technical University of Munich
Overview • Introduction to SMC • What is SMC? • A.C. Yao: Millionaires’ problem • A.C. Yao: General approach • Addition with secret-sharing • Test Setup • SMC framework FRESCO • Tested Application • • Testbed • Results • Amount of peers • Transmission rate • Network latency • Practical indications • Conclusion L. Dickmanns — Performance of SMC 2
Introduction to SMC What is SMC? [1] Secure multi-party computation (SMC): • Set of parties • Jointly calculated function • Input contribution by all parties • No input is revealed • No Trusted Thrid Party required L. Dickmanns — Performance of SMC 3
Introduction to SMC A.C. Yao: Millionaires’ problem [2] • Introduced in 1982 • Two millionaires (Alice & Bob) • Determine who is wealthier • Neither has to reveal the credit balance • Mathematical solution (no implementation due to lack in computational power) L. Dickmanns — Performance of SMC 4
Introduction to SMC A.C. Yao: General approach [2] • Introduced in 1982 • Set of m parties • Jointly calculated function ( f ( x 1 , ..., x m ) ) • All inputs stay private • Cheating detection (even if m-1 parties cheat) • Mathematical approach (no implementation due to lack in computational power) L. Dickmanns — Performance of SMC 5
Introduction to SMC SMC Example: Addition with secret-sharing [3] • n parties • Party i contributes input x i • Goals: • Calculate sum of all inputs • Keep inputs private • Protocol: • Input x i is split into n randomly sized shares ( x i 1 , ..., x i n ) by party i • Party j receives share j of each party ( x 1 j , ..., x n j ) • Party j calculates partial sum r j of received shares • Parties exchange partial sums • Complete sum can be calculated by each party L. Dickmanns — Performance of SMC 6
Test Setup SMC-Framework: FRESCO [4] • FRamework for Efficient Secure COmputation • Developed by Alexandra Institute (Denmark) • Open source (MIT license) • Prototypically in usage • Java • Runnable demos • https://github.com/aicis/fresco L. Dickmanns — Performance of SMC 7
Test Setup SMC-Framework: Tested Application • Adjusted FRESCO demo • 3-17 parties • Each party contributing an int array as input • Calculation: • Mean of all inputs • Standard deviation of all inputs L. Dickmanns — Performance of SMC 8
Test Setup Testbed • Lab at TUM • High bandwidth (1 GBit/s) • Low network latency • Up to 17 physical peers • Star topology L. Dickmanns — Performance of SMC 9
Results Evaluated parameters • Amount of peers: ⇒ Protocol invocations & batches ⇒ Execution time • Transmission rate: ⇒ Execution time • Network latency: ⇒ Execution time L. Dickmanns — Performance of SMC 10
Results Terminology: Protocols and Batches Protocol: • Defined in a protocol suite • Base functions of protocol suites (e.g. add, OR) • Applications are built with protocols Batch: • Contain a certain number of protocols • Protocols are evaluated in parallel L. Dickmanns — Performance of SMC 11
Results Amount of peers: Protocol invocations and batches · 10 4 2 1.75 1.5 1.25 1 • Increase in peers: 0.75 ⇒ Increase in protocols ⇒ Increase in batches 0.5 Protocol invocations • Both grow linearely 0.25 Batches • Batches slower 0 • Protocols faster 3 peers 4 peers 5 peers 6 peers 7 peers 8 peers 9 peers 10 peers 11 peers 12 peers 13 peers 14 peers 15 peers 16 peers 17 peers Figure 1: The amount of native protocol invocations and the number of batches in which they have been executed depending on the number of participating peers. L. Dickmanns — Performance of SMC 12
Results Amount of peers: Execution time 2 1.75 1.5 1.25 1 • Increase in peers: 0.75 ⇒ Increase in execution time 0.5 • Grows linearely 0.25 0 5 10 15 Figure 2: The execution time depending on the number of participating peers. L. Dickmanns — Performance of SMC 13
Results Transmission rate: Execution time 60 Execution time [s] 50 40 30 • 1000 MBit/s to 100 MBit/s: 20 ⇒ No significant change 10 • 100 MBit/s to 10 MBit/s: 0 ⇒ Small increase (~factor 2) 10 0 10 1 10 2 10 3 • 10 MBit/s to 1 MBit/s: Transmission rate [MBit] ⇒ Significant change (up to ~factor 6) 5 peers 3 peers 4 peers 6 peers 7 peers 8 peers Problematic combination: 9 peers 10 peers 11 peers 12 peers 13 peers 14 peers • Low Bandwidth 15 peers 16 peers 17 peers • High number of peers Figure 3: The execution time of the secure computation depending on the transmission rate. The shown case has no additional network latency. L. Dickmanns — Performance of SMC 14
Results Network latency: Execution time 200 Execution time [s] 175 150 125 100 75 • Default link latency of 0.18ms 50 • Added delays: 0ms, 10ms, 25ms, 50ms 25 • Behavior: Root function 0 0 20 40 • Greatest absolute increase in execution Network latency [ms] time 3 peers 4 peers 5 peers 7 peers 6 peers 8 peers Problematic combination: 9 peers 10 peers 11 peers • High network latency 12 peers 13 peers 14 peers 15 peers 16 peers 17 peers • High number of peers Figure 4: The execution time of the secure computation depending on the number of peers and on the network latency of the network. The latency highly influences computation time irrespective of the available transmission rate. L. Dickmanns — Performance of SMC 15
Parctical Indications Disadvantageous circumstances High number of peers: Example: • Increase in protocol invocations & batches Large scale mobile application • Increase in execution time • Large amount of peers Low bandwidth (<10MBit/s): • Possibly low bandwidth • Increase in execution time • EDGE: 384 KBit/s [5] • 3G: 7.2 MBit/s (HSPA) [5] • Combination with high number of peers • Possibly high network latency High network latency: • EDGE: 200-450ms [6] • Increase in execution time • 3G: 100-350ms [7] • Combination with high number of peers L. Dickmanns — Performance of SMC 16
Parctical Indications Advantageous circumstances Limited number of peers: • Limited protocol invocations & batches • Lower in execution time Example: Evaluation Testbed High bandwidth (>10MBit/s): • Limited amount of peers (17) • Lower in execution time • High bandwidth (1 GBit/s) • Combination with limited number of peers • Low network latency (0.18ms) Low network latency: • Lower in execution time • Combination with limited number of peers L. Dickmanns — Performance of SMC 17
Conclusion Summary - Feasibility of use-cases Possibly already feasible: Problematic at the moment: • Intranet applications • Internet application • Limited peers • Many peers • Medium bandwidth • High bandwidth • Medium latency • Low latency • Internet application • Mobile application • Limited peers (close to each other) • Many peers • High bandwidth • Low bandwidth • Low latency • High latency L. Dickmanns — Performance of SMC 18
Conclusion Outlook Factors increasing feasibility by use-case: • Mobile application: • Limit allowed number of peers • Higher 3G+/4G network coverage General factors: ⇒ Increase in bandwidth • Faster network infrastructure ⇒ Decrease in latency • Internet application: • New technologies • Limit allowed number of peers • Higher high-speed optical fiber coverage ⇒ Increase in bandwidth ⇒ Decrease in latency L. Dickmanns — Performance of SMC 19
Bibliography [1] Secure multi-party computation. https://en.wikipedia.org/wiki/Secure_multi-party_computation . [2] A.C. Yao. Protocols for secure computations. https://research.cs.wisc.edu/areas/sec/yao1982-ocr.pdf , 1982. [3] What is spdz? https://bristolcrypto.blogspot.com/2016/10/what-is-spdz-part-1-mpc-circuit.html . [4] FRamework for Efficient Secure COmputation (fresco). https://github.com/aicis/fresco . [5] Mobiles internet. https://de.wikipedia.org/wiki/Mobiles_Internet . [6] Alles zum thema edge. https://www.onlinekosten.de/mobiles-internet/edge/ . [7] 3g/4g ping/latency. https://www.evdoinfo.com/content/view/4818/64/ . L. Dickmanns — Performance of SMC 20
Recommend
More recommend