270 likes | 376 Views
When Watchdog Meets Coding. Guanfeng Liang, Rachit Agarwal , Nitin Vaidya Coordinated Science Laboratory Dept. Electrical & Computer Engineering UIUC. Backgrounds. Security requirements Confidentiality Authenticity Integrity Why integrity? Why detection?
E N D
When Watchdog Meets Coding Guanfeng Liang, RachitAgarwal, NitinVaidya Coordinated Science Laboratory Dept. Electrical & Computer Engineering UIUC
Backgrounds • Security requirements • Confidentiality • Authenticity • Integrity • Why integrity? Why detection? • Least requirement for communication to make sense. : detection
Coding: the Theorists(detection at destination) • Coding theory: C-t (Singleton bound) • Network coding: • Capacity=C-t, achieved with linear network codes [Yeung&Cai’06] • Achieved with random linear network coding, w.h.p. [Jaggi et al.’07] • Assumption: the adversary can attack any t unit capacity links
Watchdogs: the Practitioners(detection in the network) • Wireless multihop networks [Marti et al.’00] • Broadcast nature of wireless medium • Misbehaving nodes are monitored by neighboring nodes
Coding: Theoretical Aspect A • What is the capacity for detection? • C=R, t=R, so C-t=0? • Linear codes can only achieve K • Non-linear network coding is necessary S D R xyz abc R K<R Attack! W ≠ abc xyz No! Capacity is R!
Watchdog: Practical Aspect • Only a fraction of transmissions are overheard by the watchdog • fading, collision, interference, etc. • Problem: probability of detection can be very low if attacks infrequently
Our Idea: Coding + Watchdog • Observation: watchdogs can’t detect if #bad pkts < threshold_w • Error detecting code to force the attacker to tamper more pkts • #bad pkts must > threshold_c to avoid detected by the decoder • To avoid being detected • threshold_c <#bad pkts < threshold_w • If threshold_c < threshold_w, detected w.h.p.
Base Case • Assumptions: • Time slotted • Link SR, RD reliable • 1 pkt per slot • With probability q, W overhears both transmissions of a packet Duck Sam Wendy
(n,k) MDS (Maximum Distance Separable) code at source • Attack is detected if no more than n-k pkts altered • “Smart” attacker: tamper at least n-k+1 pkts • Probability of not being detected
Construct a (n,k) MDS code such that • Then • Example:
Tradeoff: Throughput and Security • If a watchdog monitors more than one flow, contention at the watchdog. Duck1 Duck2 Sam Wendy Simon
Tradeoff under Slotted ALOHA • Slotted ALOHA: access probability • Throughput • Probability of overhearing both transmissions
Construct a (n,k) MDS code such that • Effective throughput
Not detecting the attack Effective throughput
Locating Misbehaving Node • The watchdog may be the one that misbehaves in reality • A misbehaving watchdog may raise false alarms any time • Need at lease 3 nodes to identify 1 bad node
W1/W2 send 1 if attack detected, 0 otherwise • ML decision rule: • 00: no bad node • 11: R is bad • 10: W1 is bad • 01: W2 is bad Winnie Duck Sam Wendy
Note: a misbehaving watchdog will always be correctly located. The attacker has no incentive to attack watchdogs. • If relay is under attack
Accusing a good watchdog Not detecting the attack
Conclusion • Misbehavior (tampering attack) detection • Source coding + watchdog • Error detection codes prevents attackers from evading watchdogs • Watchdogs prevent attacker from evading of error detection codes • Simple and easy to implement • can be added to any existing watchdog mechanisms
Outline • Motivation and backgrounds • Coding + Watchdog • Detecting attack • Identifying misbehaving node • Conclusion
Longer Path S 6 9 D 8 3 1 2 4 5
One interesting example for linear network codes A a 1 E a a 2 a, b 1 b b 1 C S D 1 1 a, a+b F a+b 2 a+b B 1 A a E a,= a a, b b b,= C S D b a, a+b F a+b a+b B
Broadcast Transform S R D W S S’ R R’ D W