standard network flow problems with secure mul8party
play

Standard Network Flow problems with Secure Mul8party - PowerPoint PPT Presentation

Standard Network Flow problems with Secure Mul8party Computa8on Abdelrahaman Aly C.O.R.E. - Universit catholique de Louvain 1 Outlines The Problem


  1. Standard ¡Network ¡Flow ¡problems ¡ with ¡Secure ¡Mul8party ¡Computa8on ¡ Abdelrahaman ¡Aly ¡ C.O.R.E. ¡-­‑ ¡Université ¡catholique ¡de ¡Louvain ¡ 1 ¡

  2. Outlines ¡ The ¡Problem ¡ Example ¡ Applicability ¡ Goals ¡ Results ¡ Environment ¡ Minimum-­‑cost ¡flow ¡ Minimum ¡mean ¡cycle ¡ Secure ¡Solu8ons ¡ Environment ¡ Computa8onal ¡ Phases ¡ Experimenta8on ¡ Execu8on ¡Times ¡ Ra8o ¡Analysis ¡ Future ¡Work ¡ Some ¡alterna8ves.. ¡ 2 ¡

  3. Problem ¡ WAN ¡Network ¡ Paribas ¡ Dexia ¡ EU ¡Agency ¡ 3 ¡

  4. Problem ¡ WAN ¡Network ¡ Paribas ¡ Dexia ¡ EU ¡Agency ¡ ING ¡ CBS ¡ 4 ¡

  5. Problem ¡ WAN ¡Network ¡ Paribas ¡ Dexia ¡ EU ¡Agency ¡ ING ¡ CBS ¡ 5 ¡

  6. Problem ¡ WAN ¡Network ¡ Paribas ¡ Dexia ¡ EU ¡Agency ¡ ING ¡ CBS ¡ 6 ¡

  7. Problem ¡ WAN ¡Network ¡ Paribas ¡ Dexia ¡ EU ¡Agency ¡ ING ¡ CBS ¡ 7 ¡

  8. Problem ¡ Rou8ng ¡ Algorithms ¡ Latency ¡ Compute ¡New ¡ Heuris8cs ¡/ ¡ Traffic ¡Volumes ¡ Execute ¡ ¡ Rou8ng ¡Table ¡ Network ¡Flow ¡ Algorithms ¡to ¡ select ¡routes ¡ Distance ¡ 8 ¡

  9. Problem ¡ WAN ¡Network ¡ Paribas ¡ Dexia ¡ EU ¡Agency ¡ ING ¡ CBS ¡ 9 ¡

  10. Problem ¡ Example ¡ What ¡about ¡the ¡Maximum ¡ amount ¡of ¡traffic ¡we ¡can ¡ have ¡at ¡a ¡minimum ¡latency ¡in ¡ a ¡WAN.. ¡& ¡nobody ¡wants ¡to ¡ disclose ¡how ¡much ¡traffic ¡ they ¡tolerates ¡nor ¡the ¡latency ¡ of ¡their ¡systems? ¡ ¡ 10 ¡

  11. Problem ¡ Possible ¡Security ¡ Breaches! ¡ Leaked ¡ Informa8on! ¡ ¡ What ¡if ¡we ¡get ¡to ¡the ¡ same ¡result ¡without ¡ revealing ¡any ¡ compromising ¡ informa8on? ¡ 11 ¡

  12. Problem ¡ Benchmarking ¡ Networking ¡ Supply ¡Chain ¡ Problems ¡ 12 ¡

  13. Results ¡ Minimum ¡ Mean ¡Cycle ¡ Minimum-­‑ cost ¡Flow ¡ 13 ¡

  14. Results ¡-­‑ Environment ¡ • VIFF ¡Implementa8on ¡ • SEPIA ¡Implementa8on ¡ SMC ¡ • FairplayMP ¡Implementa8on ¡ • Sharemind ¡Implementa8on ¡ Arithme8c ¡ • Secure ¡Addi8ons ¡ Black ¡Box ¡ • Secure ¡Mul8plica8ons ¡ • Secure ¡Comparisons ¡ ABB ¡ Limited ¡ • Limited ¡CPU ¡Power ¡ Computer ¡ • Limited ¡Memory ¡Access ¡ ¡ Power ¡ 14 ¡

  15. Behavior ¡ considered ¡ Number ¡ Communica8ons ¡ Linear ¡Behavior ¡ of ¡ Players: ¡ Computa8ons ¡ Polynomial ¡ Behavior ¡ Comparisons ¡are ¡200x ¡more ¡expensive ¡in ¡ terms ¡of ¡performance ¡than ¡Mul8plica8ons ¡ We ¡have ¡to ¡minimize ¡the ¡use ¡of ¡comparisons! ¡ 15 ¡

  16. Minimum ¡Flow ¡ Original ¡Problem ¡ The ¡Problem: ¡ Input: ¡ ¡ ¡ ¡ ¡ ¡ ∑ • Directed ¡graph ¡G ¡=(V,E) ¡ min c ( v , w ) • f ( v , w ) s . t . • V ¡contains ¡n ¡ ver8ces ¡and ¡E ¡ m ¡arcs ¡ c ( v , w ) ∈ E • G ¡is ¡symmetric: ¡ ¡ f ( v , w ) ≤ u ( v , w ) ∀ ( v , w ) ∈ E ( v , w ) ∈ E iff ( w , v ) ∈ E • Integer ¡capaci8es: ¡ ¡ f ( v , w ) = − f ( w , v ) ∀ ( v , w ) ∈ E u ( v , w ) ∀ ( v , w ) ∈ E ∑ f ( v , w ) = 0 ∀ w ∈ V • Integer ¡costs: ¡ ¡ ¡ v ∈ E ( w ) • Costs ¡are ¡an8symmetric: ¡ ¡ c ( v , w ) = − c ( w , v ) ∀ ( v , w ) ∈ E ¡ ¡ 16 ¡

  17. Minimum-­‑cost ¡Flow ¡ Original ¡Problem ¡ Generali8es: ¡ Minimum-­‑cost ¡Flow ¡and ¡ Minimum ¡circula8on ¡cost ¡are ¡ equivalent ¡problems ¡ Known ¡ Algorithms ¡ Linear ¡Programing ¡ Cycle ¡canceling ¡ Minimum ¡mean ¡cycle ¡canceling ¡ 17 ¡

  18. Minimum-­‑cost ¡Flow ¡ Original ¡Algorithm ¡ DefiniFons: ¡ A ¡circula8on ¡is ¡minimum-­‑cost ¡if ¡and ¡only ¡if ¡there ¡are ¡no ¡nega8ve ¡ residual ¡cost ¡ Mean ¡Cycle-­‑Canceling ¡Algorithm: ¡ Begin: ¡ ¡establish ¡a ¡feasible ¡flow ¡in ¡the ¡network; ¡ ¡While ¡ ¡G(X) ¡contains ¡a ¡nega8ve ¡cycle ¡W ¡ do: ¡ ¡ Begin: ¡ ¡ ¡iden8fy ¡a ¡nega8ve ¡cycle ¡W; ¡ ¡ δ : = min{ r ij :( i , j ) ∈ W }; ¡ ¡ ¡augment ¡δ ¡units ¡of ¡flow ¡in ¡the ¡cycle ¡W ¡and ¡update ¡G(x); ¡ ¡ End; ¡ End; ¡ ¡ ¡ ¡ 18 ¡

  19. Minimum ¡Mean ¡Cycle ¡ Original ¡Problem ¡ Input : ¡ DefiniFons: ¡ ¡ • Directed ¡graph ¡G ¡=(V,E) ¡ m(σ): ¡Is ¡the ¡mean ¡of ¡any ¡ • V ¡contains ¡n ¡ ver8ces ¡and ¡E ¡ m ¡arcs ¡ sequence ¡of ¡edges. ¡ • G ¡is ¡strongly ¡connected ¡ C: ¡ is ¡the ¡set ¡of ¡all ¡directed ¡ • Integer ¡capaci8es: ¡ cycles ¡in ¡G. ¡ If ¡used ¡for ¡the ¡Min-­‑cost ¡Flow ¡ u ( v , w ) ∀ ( v , w ) ∈ E problem, ¡it ¡starts ¡in ¡the ¡source ¡ ¡ ¡ Problem : ¡ λ * = min C m ( C ) 19 ¡

  20. Minimum ¡Mean ¡Cycle ¡ Original ¡Solu8on ¡ Defini8ons: ¡ ¡ • k: ¡denotes ¡the ¡length ¡of ¡a ¡given ¡path ¡(from ¡0 ¡to ¡n) ¡ ¡ ¡ • The ¡ ¡func8on ¡d ¡is ¡defined ¡as ¡follows: ¡ d k ( j ) = min { i :( i , j ) ∈ A } { d k − 1 + c ij } Algorithm: ¡ λ * ( j ) = min j ∈ N max 0 ≤ k ≤ n − 1 [ d n ( j ) − d k ( j ) ] n − k 20 ¡

  21. 21 ¡

  22. 22 ¡

  23. 23 ¡

  24. 24 ¡

  25. Results ¡ The ¡bounds ¡ ¡are ¡given ¡considering ¡complete ¡graphs ¡only ¡ MMC ¡ O ( n 3 ) Original ¡polynomial ¡bound: ¡ O ( n 3 ) Smc ¡Comp. ¡Polynomial ¡bound: ¡ O ( n 5 ) Smc ¡Mult. ¡Polynomial ¡bound: ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ MMCC ¡ Original ¡polynomial ¡bound: ¡ O ( n 8 ) O ( n 8 ) Smc ¡Comp. ¡Polynomial ¡bound: ¡ O ( n 10 ) Smc ¡Mult. ¡Polynomial ¡bound: ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ 25 ¡

  26. Performance ¡ Evalua8on ¡ Python ¡ VIFF ¡ ¡ ¡ Plamorm ¡ Only ¡3 ¡and ¡4 ¡Par8es ¡ Intel ¡Xeon ¡ ¡16 ¡Cores ¡ 1 ¡ (2.9 ¡Ghz) ¡OS ¡X ¡ Machine: ¡ 42 ¡GB ¡RAM ¡ 4 ¡Nodes ¡ Complete ¡ to ¡10 ¡ Graphs ¡ s ¡ nodes ¡ Analyzed ¡ 26 ¡

  27. Performance ¡ Evalua8on ¡ Performance ¡Analysis ¡MMCC ¡per ¡phases ¡ Vertex ¡ Edges ¡ 3 ¡Players ¡ 4 ¡Players ¡ 4 ¡ 12 ¡ 17s ¡ 19s ¡ seconds ¡ 250 ¡ 200 ¡ 150 ¡ 3 ¡players ¡ 100 ¡ 4 ¡players ¡ 50 ¡ 0 ¡ 3 ¡ 4 ¡ 5 ¡ 6 ¡ 7 ¡ 8 ¡ 9 ¡ 10 ¡ nodes ¡ 27 ¡

  28. Performance ¡ Evalua8on ¡ Clean ¡ImplementaFon ¡ seconds ¡ 4.5 ¡ Performance ¡Analysis ¡MMCC ¡ 4 ¡ 3.5 ¡ 3 ¡ Vertex ¡ Edges ¡ Phases ¡ Total ¡ 2.5 ¡ 4 ¡ 12 ¡ 128 ¡ 0.020s ¡ 2 ¡ 1.5 ¡ 1 ¡ 0.5 ¡ 0 ¡ 3 ¡ 5 ¡ 7 ¡ 9 ¡ 11 ¡ 13 ¡ 15 ¡ nodes ¡ VIFF ¡ImplementaFon ¡ seconds ¡ Vertex ¡ Edges ¡ 3 ¡Players ¡ 4 ¡Players ¡ 35000000 ¡ 4 ¡ 12 ¡ 19618 ¡ 23037 ¡ 30000000 ¡ 25000000 ¡ 20000000 ¡ 3 ¡players ¡ 15000000 ¡ 4 ¡players ¡ 10000000 ¡ 5000000 ¡ 0 ¡ 3 ¡ 4 ¡ 5 ¡ 6 ¡ 7 ¡ 8 ¡ 9 ¡ 10 ¡ 28 ¡ nodes ¡

  29. Performance ¡ Evalua8on ¡ Clean ¡ImplementaFon ¡ Ra8o ¡Analysis ¡-­‑ ¡Minimum ¡Mean ¡Cycle ¡Canceling ¡ ra8o ¡ 70000000 ¡ Vertex ¡ Edges ¡ 3 ¡Players ¡ 4 ¡Players ¡ 60000000 ¡ 4 ¡ 12 ¡ 114643 ¡ 134626 ¡ 50000000 ¡ 40000000 ¡ 3 ¡players ¡ 30000000 ¡ 4 ¡players ¡ 20000000 ¡ 10000000 ¡ 0 ¡ 3 ¡ 4 ¡ 5 ¡ 6 ¡ 7 ¡ 8 ¡ 9 ¡ 10 ¡ nodes ¡ ra8o ¡ VIFF ¡ImplementaFon ¡ 3.5E+10 ¡ Vertex ¡ Edges ¡ 3 ¡Players ¡ 4 ¡Players ¡ 3E+10 ¡ 4 ¡ 12 ¡ 15069475 ¡ 17696250 ¡ 2.5E+10 ¡ 2E+10 ¡ 3 ¡players ¡ 1.5E+10 ¡ 4 ¡players ¡ 1E+10 ¡ 5E+09 ¡ 0 ¡ 3 ¡ 4 ¡ 5 ¡ 6 ¡ 7 ¡ 8 ¡ 9 ¡ 10 ¡ 29 ¡ nodes ¡

  30. Future ¡Work ¡ Improve ¡SMC ¡ Improve ¡the ¡Algorithms ¡ ¡ implementa8ons ¡ (Using ¡Top’s ¡Priority ¡Queue ¡ performance ¡migra8ng ¡to ¡ for ¡instance) ¡ other ¡plamorms ¡ Migrate ¡Current ¡subrou8nes ¡ implementa8ons ¡to ¡ ¡ applica8ons ¡like ¡the ¡ones ¡ presented ¡(i.e. ¡any ¡rou8ng ¡ algorithm) ¡ 30 ¡

Recommend


More recommend