440 likes | 521 Views
FIGHTING ADVERSARIES IN NETWORKS. Sidharth Jaggi (MIT). Michelle Effros Michael Langberg Tracey Ho. Muriel Médard Dina Katabi. Peter Sanders. Philip Chou Kamal Jain. Ludo Tolhuizen Sebastian Egner. Network Coding . . . what is it?.
E N D
FIGHTING ADVERSARIES IN NETWORKS Sidharth Jaggi (MIT) Michelle Effros Michael Langberg Tracey Ho Muriel Médard Dina Katabi Peter Sanders Philip Chou Kamal Jain Ludo Tolhuizen Sebastian Egner
Network Coding . . . what is it? “The core notion of network coding is to allow and encourage mixing of data at intermediate network nodes. “ (Network Coding Homepage)
Justifications - I s Throughput b1 b2 b1 b2 b1 b1+b2 b1 ? b2 b1 b1 b1+b2 b1+b2 t1 t2 [ACLY00] (b1,b2) b1 (b1,b2)
Gap Without Coding s [JSCEEJT05] . . . . . . Coding capacity = h Routing capacity≤2
Multicasting Webcasting t1 t2 s1 Network P2P networks s|S| t|T| Sensor networks
Background Upper bound for multicast capacity C, C ≤ min{Ci} t1 [ACLY00] - achievable! C1 [LYC02] - linear codes suffice!! C2 t2 [KM01] - “finite field” linear codes suffice!!! s Network C|T| t|T|
Background F(2m)-linear network [KM01] b1 b2 bm Source:- Group together `m’ bits, Every node:- Perform linear combinations over finite field F(2m) β1 β2 βk
Background t1 [ACLY00] - achievable! C1 [LYC02] - linear codes suffice!! C2 t2 [KM01] - “finite field” linear codes suffice!!! s Network [JCJ03],[SET03] - polynomial time code design!!!! C|T| [HKMKE03],[JCJ03] - random distributed code design!!!!! t|T|
Justifications - II s Robustness/Distributed design One link breaks t1 t2
Justifications - II s Robustness/Distributed design b1 b2 b1 b2 b1+b2 b1+2b2 b1 b2 (Finite field arithmetic) b1+b2 b1+b2 b1+2b2 t1 t2 (b1,b2) (b1,b2)
Random Robust Codes t1 C1 C = min{Ci} C2 t2 Original Network s C|T| t|T|
Random Robust Codes t1 C1' C' = min{Ci'} C2' t2 Faulty Network s If value of C' known to s, same code can achieve C' rate! (interior nodes oblivious) C|T|' t|T|
Random Robust Codes Choose random [ß] at each node Percolate overall transfer function down network With high probability, invertible Decentralized design
Justifications - III s Security Evil adversary hiding in network eavesdropping, injecting false information [JLHE05],[JLHKM06?] t1 t2
Greater throughput Robust against random errors . . . Aha! Network Coding!!!
? ? ?
? ? ? Yvonne1 . . . ? ? ? Xavier Yvonne|T| Zorba
Setup Eureka Who knows what Stage • Scheme X Y Z • Network Z • Message X Z • Code Z • Bad links Z • Coin X • Transmit Y Z • Decode Y Wired Wireless (packet losses, fading) Eavesdropped links ZI Attacked links ZO
Setup ? C ? ? Yvonne1 ? ? ? MO Xavier Yvonne|T| Zorba Xavier and Yvonnes share no resources (private key, randomness) Distributed design (interior nodes oblivious/overlay to network coding) Zorba (hidden) knows network; Xavier and Yvonnes don’t Zorba sees MI links ZI, controls MO links ZO pI=MI/C, pO=MO/C Zorba computationally unbounded; Xavier and Yvonnes -- “simple” computations Zorba knows protocols and already knows almost all of Xavier’s message (except Xavier’s private coin tosses) Goal: Transmit at “high” rate and w.h.p. decode correctly
Upper bounds 1 C (Capacity) 0.5 0 1 0.5 pO (“Noise parameter”) 1-pO
Upper bounds 1 ? C (Capacity) ? ? 0.5 0 1 0.5 pO (“Noise parameter”) 0
Unicast [JLHE05] 1 C (Capacity) 0.5 0 1 0.5 pI=pO (“Noise parameter” = “Knowledge parameter”)
Unicast [Folklore] 1 C (Capacity) 0 1 0.5 pO (“Noise parameter”) (“Knowledge parameter” pI=1)
Upper bounds 1 1-2pO pO C (Capacity) pO 0 1 0.5 pO (“Noise parameter”) (“Knowledge parameter” pI=1)
Upper bounds “Knowledge parameter” pI>0.5 1 ? C (Capacity) ? ? 0 1 0.5 pO (“Noise parameter”)
Upper bounds “Knowledge parameter” pI<0.5 “Knowledge parameter” pI>0.5 1 1 C (Capacity) C (Capacity) 0.5 0 0 1 1 0.5 0.5 pO (“Noise parameter”) pO (“Noise parameter”)
Distributed Design [HKMKE03] Choose random [ß] at each node Percolate overall transfer function down network With high probability, invertible Decentralized design
Distributed Design [HKMKE03] Rate h=C xb(i) Block t1 y1 xs(j) hxh identity matrix h<<n Slice S x xb(1) β1 T xb(i) x’b(i) βi ys(j)=Txs(j) t|T| y|T| xs(j)=T-1ys(j) βh xb(h)
Achievability - 1 Observation 1: Can treat adversaries as new sources 1 C (Normalized by h) R1 S’1 0.5 S S’2 0 1 0.5 R|T| pO S’|Z|
Achievability - 1 y’s(j)=Txs(j)+T’x’s(j) Supersource SS Observation 2: w.h.p. over network code design, {TxS(j)} and {T’x’S(j)} do not intersect (robust codes…). Corrupted Unknown
Achievability - 1 y’s(j)=Txs(j)+T’x’s(j) ε redundancy xs(2)+xs(5)-xs(3)=0 xs(3)+2xs(9)-5xs(1)=0 ys(3)+2ys(9)-5ys(1)= another vector in {T’x’s(j)} ys(2)+ys(5)-ys(3)= vector in {T’x’s(j)} {Txs(j)} {T’x’s(j)}
Achievability - 1 y’s(j)=Txs(j)+T’x’s(j) ε redundancy Repeat MO times Discover {T’x’s(j)} “Zero out” {T’x’s(j)} Estimate T (redundant xs(j) known) Decode {Txs(j)} {T’x’s(j)}
Achievability - 1 y’s(j)=Txs(j)+T’x’s(j) xs(2)+xs(5)-xs(3)=0 ys(2)+ys(5)-ys(3)= vector in {T’x’s(j)} x’s(2)+x’s(5)-x’s(3)=0 ys(2)+ys(5)-ys(3)=0
Secret Uncorrupted ε-rate Channels Secret, correct hashes of xs(j) [r,(∑jxs(j)rj)] Zorba doesn’t know how to hide Useful abstraction Will return to this…
Achievability - 2 “Distributed Network Error-correcting Code” (Knowledge parameter pI>0.5) [CY06] – bounds, high complexity construction [JHLMK06?] – tight, poly-time construction 1 C (Capacity) 0 1 0.5 pO (“Noise parameter”)
Achievability - 2 error vector y’s(j)=Txs(j)+T’x’s(j) 1-2pO pO pO
Achievability - 2 T’’ y’s(j)=T’’xs(j)+T’x’s(j)
Achievability - 2 T’’ y’s(j)=T’’xs(j)+T’x’’s(j) e e’ e
Achievability - 2 T’’ y’s(j)=Txs(j)+T’x’s(j) y’s(j)=(T+T’L)xs(j)+T’(x’s(j)-Lxs(j)) y’s(j)=T’’xs(j)+T’x’’s(j) known Any set of MO+1 {x’’s(j)}s linearly dependent Let T’x’’s(1) = a(1),…,T’x’’s(MO)=a(MO) A=[a(1)…a(MO)] y’s(j)=T’’xs(j)+Ac(j) Linearized equation, Size of A finite, Redundancy known
Achievability - 1.5 Not quite 2MO<C, 2MI<C MI+2MO<C MI<C-2MO Network error-correcting codes Zorba’s observations Using network error-correcting codes as small header, can transmit secret, correct information… … which can be used for first scheme!
Achievability - 1 2MO<C, 2MI<C Working on it… “Slightly” non-linear codes Use fact that T, T’ in general unknown to adversary
Overview • Hidden, eavesdropping, malicious, computationally unbounded adversary • Network topology unknown • Polynomial time decoding overlaid on network code, achieves “almost optimal” performance
T H E E N D