430 likes | 735 Views
Anonymous Path Routing Protocol in Wireless Sensor Networks. Jang-Ping Sheu* § , Jehn-Ruey Jiang* and Ching Tu* National Central University* and National Tsing-Hua University § Taiwan, R.O.C. Outline. Introduction Related Work Anonymous Path Routing (APR) Protocol Security Analysis
E N D
Anonymous Path Routing Protocol in Wireless Sensor Networks • Jang-Ping Sheu*§ , Jehn-Ruey Jiang* and Ching Tu* • National Central University* and National Tsing-Hua University§ • Taiwan, R.O.C.
Outline • Introduction • Related Work • Anonymous Path Routing (APR) Protocol • Security Analysis • Implementation and Evaluation • Conclusion
Outline Introduction Related Work Anonymous Path Routing (APR) Protocol Security Analysis Implementation and Evaluation Conclusion
Introduction • Security is important for MANETs and WSNs • Adversaries can easily overhear messages. • It is more challenging to keep WSNs secure • Sensor nodes have limited capability • Sensor nodes are easier to be captured and compromised • It is harder to prevent the network topology from being analyzed in a WSN than in a MANET because the former has a more dynamic topology than the latter. • We focus on keeping WSNs secure
Introduction • General attacks in WSNs • Active attacks • Forging attacks • Replay attacks • Denial of service (DoS) attacks • … • Passive attacks • Data eavesdropping attacks • Traffic analysis attacks • … They are “invisible” and harder to detect. They may be the prelude of active attacks.
Introduction • We rely on anonymous communication for resisting the attacks. • Anonymous communication • A new paradigm to resist attacks • Since identities of nodes are hidden, the network topology is difficult to be analyzed. • It can also prevent most of active attacks.
Outline Introduction Related Work Anonymous Path Routing (APR) Protocol Security Analysis Implementation and Evaluation Conclusion
Related Work ANODR ACM MobiHoc, 2003 An ANonymous On-Demand Routing protocol based on trapdoor one-way function and boomerang onion SDAR IEEE LCN, 2004 A Secure Distributed Anonymous Routing protocol based on public key cryptography
Related Work • AnonDSR • ACM SASN, 2005 • An Anonymous Dynamic Source Routing protocol based on shared secret key used in source and destination nodes, and public key cryptography used in the intermediate nodes • MASK • IEEE INFOCOM, 2005 • An anonymous on-demand routing protocol based on bilinear pairing
Drawbacks of Existent Methods • High computing overhead • Each node should try all its shared secret keys for receiving an anonymous packet (ANODR) • Public key cryptography (AnonDSR, SDAR) • Bilinear mapping function (MASK) • Existent methods are not applicable to WSNs.
Outline Introduction Related Work Anonymous Path Routing (APR) Protocol Security Analysis Implementation and Evaluation Conclusion
Three Schemes of APR • Anonymous one-hop communication • Anonymous multi-hop path routing • Anonymous data forwarding
Anonymous One-hop Communication • In the initial period • One-hop pair-wise key establishment • Data encryption key establishment • MAC (Message Authentication Code) key establishment • Bidirectional hidden identity (HI) establishment • Link table establishment • for storing all keys and HIs • Afterwards • One-hop communication by HI • One-hop acknowledgement • for avoiding packet loss problem
One-Hop Key Establishment PIKE is applied to set one-hop pairwise keys and random nonces PIKE assumes that O(n) pre-established pairwise keys have been set when n sensors are deployed Node 14 shares different pair-wise keys with each of Nodes 1* and *4. Node 91 shares different pair-wise keys with each of Nodes 9* and *1. Nodes 11 and 94 share distinct pairwise keys with 91 and 14: Choose the “closer” node
PIKE is applied to set one-hop pairwise keys and random nonces Two more keys are then set Data encryption key: K0AB-enc = H(KAB⊕C1), C1 is a constant MAC function key: K0AB-mac = H(KAB⊕C2), C2 is a constant The two keys will change dynamically Data encryption key: Ki+1AB-enc = H(KiAB-enc) MAC function key: Ki+1AB-mac = H(KiAB-mac) One-Hop Key Establishment I Encrypted by KAI KAB, rn Encrypted by KBI KAB, rn H J KAB, rn PIKE KAB, rn rn: random nonce B A Key reply
Hidden Identity Establishment • His are bidirectional • HISeqAB= H(KAB ⊕ IDB ⊕ Seq * rn) • HISeqBA= H(KBA ⊕ IDA ⊕ Seq * rn) HI-in HI-out J B HIJA HIBA HIAJ HIAB A HIAS HIAE HISA HIEA S E
One-hop communication by HI • A sends data to B H D Not for me!! J B HI0AB , DATA, MAC C Not for me!! S A link table of B It’s for me!! E Not for me!!
To solve the packet loss problem One-Hop Acknowledgement HIAB , DATA HIAB , DATA A B HIBA , ACK Update link table Update link table
ACK Loss • ACK loss problem • B updates sequence number and HI but A doesn’t • Sequence numbers and HIs become different • Solution: storing last HI-in It matches with “last HI-in” Timeout!!!! HIAB , DATA A B HIBA , ACK Update link table Update link table Keep link table intact
Anonymous Multi-hop Path Routing • Two more pseudonyms • HIPs (Hidden Identity for routing Path) are established for any possible source node and stored in HIP table for each path. (A path is represented by two end nodes of the path: the source node and the destination node.) • PathIDs are established and used in the routing table • Two messages • Anonymous Path Routing Request (APR-REQ) • Anonymous Path Routing Reply (APR-REP) • Two cases for the source and destination nodes • With a pre-distributed pair-wise key • Shown next • Without pre-distributed pair-wise key • Integrate PIKE into APR
Anonymous Multi-hop Path Routing with aPre-distributed Pair-wise Key Between S and D • Flooding APR-REQ to the entire network HIP table of D HIPSD = H(KSD⊕IDS⊕IDD) I K H D is the destination!! G D J M HIPSD, B B F HIP table of S HIPSD, A A C S E HIPSD, S
Anonymous Multi-hop Path Routing with aPre-distributed Pair-wise Key Between S and D Routing table of D • D sends APR-REP back to S I Routing table of B K PathIDSD H HIDB D J Routing table of A M B HIBA HIAS A PathIDSD C Routing table of S S E PathIDSD
Anonymous Data Forwarding • D sends data to S Routing table of D • S sends data to D It is from S!!! I Routing table of B K PathIDSD H HIDB HIBD D J Routing table of A M B HIAB HIBA HIAS HISA A PathIDSD C Routing table of S S E PathIDSD
Outline Introduction Related Work Anonymous Path Routing (APR) Protocol Security Analysis Implementation and Evaluation Conclusion
Security Analysis • APR can resist the following attacks • Traffic analysis attacks • No node can identify the sender and receiver except the two communicating nodes • Forging attacks • If adversaries send a malicious packet with forged HI, the packet will be accepted with probability 1/ 2h+m • h is the length of HI • m is the length of MAC • A typical setting: h = 16 and m = 32
Security Analysis • Replay attacks • If adversaries use the legal packets sent before, every packet will only be accepted by receiving node only once • Denial of service (DoS) attacks • Without correct HI, DoS attack packets will be ignored directly • APR can limit the damage caused by DoS attacks in a local area
Outline Introduction Related Work Anonymous Path Routing (APR) Protocol Security Analysis Implementation and Evaluation Conclusion
Implementation • Implementation • Symmetric key algorithm: Skipjack • One-way hash function: SHA-1 • Message authentication code function: CBC-MAC • Platform: Berkeley MICAz (128KB Program Flash and 4 KB SRAM ) with TinyOS • Assumption: Some pre-distributed keys are stored in program flash.
Implementation Results Memory Footprint Required programming memory: 9436 bytes Required SRAM size: Depended on network size and node density 50 bytes for an entry of the link table 8 bytes for an entry in routing table
Implementation Results • Computing Time • Transmission Time
Implementation Results (Cont.) • Routing Time 574.2 ms
Implementation Results (Cont.) • Environment • Test field: 5R x 5R (R is the communication range) • Number of nodes: 25~200 • Multi-hop communications per node: 5~20 • Average link table size 1.1 Kbytes
Implementation Results (Cont.) • Average routing table size 1.6 Kbytes
Implementation Results (Cont.) • Average memory overhead for varying numbers of nodes 1.88 Kbytes 1.72 Kbytes route requests per node route requests per node
Outline Introduction Related Work Anonymous Path Routing (APR) Protocol Security Analysis Implementation and Evaluation Conclusion
Conclusion • In APR, data can be encrypted by pair-wise keys and transmitted with pseudonyms • between neighboring sensor nodes (link level) • between the source and destination nodes of a multi-hop communication path (routing level) • APR can resist several types of attacks • Traffic analysis attacks • Forging attacks • Replay attacks • Denial of service (DoS) attacks • We have implemented APR on the sensor platform of MICAz with TinyOS • To demonstrate APR’s applicability and communication capability
Anonymous Multi-hop Communication –End-to-end Key Establishment M wants to communicate with D Anonymous path from M to I Anonymous path from I to D I KSD, rn G K KSD, rn H KSD, rn KSD, rn D J M B F A C S E
Anonymous Path Routing (APR) Request with Key Reply Message D launch anonymous multi-hop path routing I G K HIPDM, D, Key reply H D J M B F A C S E
PathID Collision Problem Case 1: Different Pre-hop nodes Pre-hop nodes are different Forwarding node can choose proper node for forwarding Ex. The packet with the PathID is 12 comes from L should be send to N The packet with the PathID is 12 comes from K should be send to I Routing table of F L 12 K 12 F 12 12 I N
PathID Collision Problem (Cont.) Case 2: Same Pre-hop node 14 13 Q 13 14 O 13 13 R P Routing table of O
PathID Collision Problem (Cont.) 15 13 14 Q 15 13 14 O 13 13 R 13 P X Routing table of O Back