computation for mali licious

Computation for Mali licious Adversaries and an Honest Majority Jun - PowerPoint PPT Presentation

Hig igh-Throughput Secure Three-Party Computation for Mali licious Adversaries and an Honest Majority Jun Furukawa*, Yehuda Lindell**, Ariel Nof** and Or Weinstein** *NEC corporation, Israel **Bar-Ilan University, Israel Eurocrypt 2017


  1. Hig igh-Throughput Secure Three-Party Computation for Mali licious Adversaries and an Honest Majority Jun Furukawa*, Yehuda Lindell**, Ariel Nof** and Or Weinstein** *NEC corporation, Israel **Bar-Ilan University, Israel Eurocrypt 2017

  2. Secure Three-Party Computation wit ith an Honest Majority 𝑦 1 𝑦 2 𝑔(𝑦 1 , 𝑦 2 , 𝑦 3 ) 𝑦 3

  3. Secure Three-Party Computation wit ith an Honest Majority 𝑦 1 𝑦 2 𝑔(𝑦 1 , 𝑦 2 , 𝑦 3 ) 𝑦 3

  4. Secure Three-Party Computation wit ith an Honest Majority 𝑦 1 𝑦 2 𝑔(𝑦 1 , 𝑦 2 , 𝑦 3 ) 𝑦 3 β€’ Functionality is represented by a Boolean circuit β€’ Security with abort

  5. High-Throughput Secure Three-Party Computation with an Honest Majority

  6. High-Throughput Secure Three-Party Computation with an Honest Majority 𝑒 𝑑𝑒𝑏𝑠𝑒 𝑒 π‘“π‘œπ‘’ f How much time it takes to compute a function?

  7. High-Throughput Secure Three-Party Computation with an Honest Majority 𝑒 𝑑𝑒𝑏𝑠𝑒 𝑒 π‘“π‘œπ‘’ f How much time it takes to compute a function? Latency

  8. High-Throughput Secure Three-Party Computation with an Honest Majority 1 𝑑𝑓𝑑 f f f f f f f f f 𝑒 𝑑𝑒𝑏𝑠𝑒 𝑒 π‘“π‘œπ‘’ f How much time it takes to How many functions can we compute a function? compute in one sec? Latency

  9. High-Throughput Secure Three-Party Computation with an Honest Majority 1 𝑑𝑓𝑑 f f f f f f f f f 𝑒 𝑑𝑒𝑏𝑠𝑒 𝑒 π‘“π‘œπ‘’ f How much time it takes to How many functions can we compute a function? compute in one sec? Latency Throughput

  10. Low Latency VS. High-Throughput High-Throughput Low Latency

  11. Low Latency VS. High-Throughput High-Throughput Low Latency β€’ Constant rounds of communication 𝑄 1 𝑄 2 β€œ the garbled-circuit approach ”

  12. Low Latency VS. High-Throughput High-Throughput Low Latency β€’ Low bandwidth β€’ Constant rounds of β€’ Simple Computations communication 𝑄 𝑄 1 1 𝑄 2 𝑄 2 β€œ the secret-sharing approach ” β€œ the garbled-circuit approach ”

  13. Low Latency VS. High-Throughput High-Throughput Low Latency β€’ Low bandwidth β€’ Constant rounds of β€’ Simple Computations communication 𝑄 𝑄 1 1 𝑄 2 𝑄 2 β€œ the secret-sharing approach ” β€œ the garbled-circuit approach ”

  14. The Starting Point: The Semi-honest protocol of [AFLNO16 16] β€’ Based on replicated secret sharing β€’ Requires 1 bit of communication sent by each party per AND gate. β€’ Speed: compute over 7 billion AND gates per second β€’ Concretely, over 1,300,000 AES operations per second

  15. From Semi-Honest to Malicious adversary ry β€’ Sharing the inputs β€’ Emulating the circuit β€’ Output Reconstruction

  16. From Semi-Honest to Malicious adversary ry How to force the corrupted party to share its β€’ Sharing the inputs inputs β€œ correctly ” ? How to verify AND gates were computed β€’ Emulating the circuit correctly? How to verify that the output was β€’ Output Reconstruction reconstructed correctly?

  17. From Semi-Honest to Malicious adversary ry How to force the corrupted party to share its β€’ Sharing the inputs inputs β€œ correctly ” ? How to verify AND gates were computed β€’ Emulating the circuit correctly? How to verify that the output was β€’ Output Reconstruction reconstructed correctly?

  18. Verification of AND Gates A β€œ multiplication triple ” is a triple of shares 𝑏 , 𝑐 , 𝑑 such that 𝑑 = 𝑏 β‹… 𝑐

  19. Verification of AND Gates A β€œ multiplication triple ” is a triple of shares 𝑏 , 𝑐 , 𝑑 such that 𝑑 = 𝑏 β‹… 𝑐 Let 𝑦 , 𝑧 , 𝑨 be a triple generated by computing an AND gate Let 𝑏 , 𝑐 , 𝑑 be a random triple

  20. Verification of AND Gates A β€œ multiplication triple ” is a triple of shares 𝑏 , 𝑐 , 𝑑 such that 𝑑 = 𝑏 β‹… 𝑐 Let 𝑦 , 𝑧 , 𝑨 be a triple generated by computing an AND gate Let 𝑏 , 𝑐 , 𝑑 be a random triple

  21. Verification of AND Gates A β€œ multiplication triple ” is a triple of shares 𝑏 , 𝑐 , 𝑑 such that 𝑑 = 𝑏 β‹… 𝑐 Let 𝑦 , 𝑧 , 𝑨 be a triple generated If 𝑏 , 𝑐 , 𝑑 is a β€œ valid ” triple, then we by computing an AND gate can use 𝑏 , 𝑐 , 𝑑 to detect cheating Let 𝑏 , 𝑐 , 𝑑 be a random triple in 𝑦 , 𝑧 , 𝑨 with probability 1.

  22. Verification of AND Gates A β€œ multiplication triple ” is a triple of shares 𝑏 , 𝑐 , 𝑑 such that 𝑑 = 𝑏 β‹… 𝑐 Let 𝑦 , 𝑧 , 𝑨 be a triple generated If 𝑏 , 𝑐 , 𝑑 is a β€œ valid ” triple, then we by computing an AND gate can use 𝑏 , 𝑐 , 𝑑 to detect cheating Let 𝑏 , 𝑐 , 𝑑 be a random triple in 𝑦 , 𝑧 , 𝑨 with probability 1. Sub-protocol β€œ triple verification without opening ” Communication: 2 bits per each party

  23. The Protocol On-line protocol 1. Share the inputs 2. Run the Semi-honest protocol 3. Verify all ANDs gates 4. Reconstruct Output 3 bits per AND gate

  24. The Protocol On-line protocol 1. Share the inputs 2. Run the Semi-honest protocol 3. Verify all ANDs gates Output 𝑢 triples 4. Reconstruct Output 3 bits per AND gate

  25. The Protocol Pre-processing protocol On-line protocol 1. Share the inputs 2. Run the Semi-honest protocol 3. Verify all ANDs gates Output 𝑢 triples 4. Reconstruct Output 3 bits per AND gate

  26. The Protocol Pre-processing protocol On-line protocol ? 1. Share the inputs 2. Run the Semi-honest protocol 3. Verify all ANDs gates Output 𝑢 triples 4. Reconstruct Output 3 bits per AND gate

  27. Generation of f Random Multiplication Triples β€’ 𝑏 , [𝑐] are generated without any interaction! β€’ [𝑑] is computed using the semi-honest protocol

  28. Generation of f Random Multiplication Triples β€’ 𝑏 , [𝑐] are generated without any interaction! 1 bit of communication! β€’ [𝑑] is computed using the semi-honest protocol

  29. Generation of f Random Multiplication Triples β€’ 𝑏 , [𝑐] are generated without any interaction! 1 bit of communication! β€’ [𝑑] is computed using the semi-honest protocol How to verify that the triple is valid?

  30. Generation of f Random Multiplication Triples . . .

  31. Generation of f Random Multiplication Triples Random permutation . . .

  32. Generation of f Random Multiplication Triples Random Open C permutation triples . . .

  33. Generation of f Random Multiplication Triples Random Open C permutation triples If one of the opened triples is incorrect, the honest parties will detect it and abort . . .

  34. Generation of f Random Multiplication Triples Random Open C permutation triples . . .

  35. Generation of f Random Multiplication Triples Split into N Random Open C buckets of permutation triples equal size 𝐢 1 𝛾 π‘’π‘ π‘—π‘žπ‘šπ‘“π‘‘ . . 𝐢 2 𝛾 π‘’π‘ π‘—π‘žπ‘šπ‘“π‘‘ . . . . 𝛾 π‘’π‘ π‘—π‘žπ‘šπ‘“π‘‘ 𝐢 𝑂

  36. Generation of f Random Multiplication Triples Verify the Split into N Random Open C first triple in buckets of permutation triples each bucket equal size using 𝜸 βˆ’ 𝟐 triples 𝐢 1 𝛾 π‘’π‘ π‘—π‘žπ‘šπ‘“π‘‘ . . 𝐢 2 𝛾 π‘’π‘ π‘—π‘žπ‘šπ‘“π‘‘ . . . . . . . 𝛾 π‘’π‘ π‘—π‘žπ‘šπ‘“π‘‘ 𝐢 𝑂

  37. Generation of f Random Multiplication Triples Verify the Split into N Random Open C first triple in buckets of permutation triples each bucket equal size using 𝜸 βˆ’ 𝟐 triples 𝐢 1 𝛾 π‘’π‘ π‘—π‘žπ‘šπ‘“π‘‘ . If one of the . buckets is β€œ mixed ” , 𝐢 2 𝛾 π‘’π‘ π‘—π‘žπ‘šπ‘“π‘‘ the honest parties . . . will detect it and . . abort . . 𝛾 π‘’π‘ π‘—π‘žπ‘šπ‘“π‘‘ 𝐢 𝑂

  38. Generation of f Random Multiplication Triples Verify the Split into N Random Open C first triple in buckets of permutation triples each bucket equal size using 𝜸 βˆ’ 𝟐 triples 𝐢 1 𝛾 π‘’π‘ π‘—π‘žπ‘šπ‘“π‘‘ . . 𝐢 2 𝛾 π‘’π‘ π‘—π‘žπ‘šπ‘“π‘‘ . . . . . . . 𝛾 π‘’π‘ π‘—π‘žπ‘šπ‘“π‘‘ 𝐢 𝑂

  39. Generation of f Random Multiplication Triples Verify the Split into N Random Open C first triple in buckets of permutation triples each bucket equal size using 𝜸 βˆ’ 𝟐 triples 𝐢 1 𝛾 π‘’π‘ π‘—π‘žπ‘šπ‘“π‘‘ . . 𝐢 2 𝛾 π‘’π‘ π‘—π‘žπ‘šπ‘“π‘‘ . . . . . . . 𝛾 π‘’π‘ π‘—π‘žπ‘šπ‘“π‘‘ 𝐢 𝑂

  40. Generation of f Random Multiplication Triples Verify the Split into N Random Open C first triple in buckets of permutation triples each bucket equal size using 𝜸 βˆ’ 𝟐 triples 𝐢 1 𝛾 π‘’π‘ π‘—π‘žπ‘šπ‘“π‘‘ . . 𝐢 2 𝛾 π‘’π‘ π‘—π‘žπ‘šπ‘“π‘‘ . . . . . . . 𝛾 π‘’π‘ π‘—π‘žπ‘šπ‘“π‘‘ 𝐢 𝑂

  41. Generation of f Random Multiplication Triples Verify the Split into N Random Open C first triple in buckets of permutation triples each bucket equal size using 𝜸 βˆ’ 𝟐 triples 𝐢 1 𝛾 π‘’π‘ π‘—π‘žπ‘šπ‘“π‘‘ . . 𝐢 2 𝛾 π‘’π‘ π‘—π‘žπ‘šπ‘“π‘‘ . . . . . . . 𝛾 π‘’π‘ π‘—π‘žπ‘šπ‘“π‘‘ 𝐢 𝑂

Recommend


More recommend