insens: intrusion-tolerant routing for wireless sensor networks
DESCRIPTION
INSENS: Intrusion-Tolerant Routing For Wireless Sensor Networks. By: Jing Deng, Richard Han, Shivakant Mishra Presented by: Daryl Lonnon. INSENS Goals. Define a secure & intrusion-tolerant routing scheme. A small number of compromised nodes can only effect a small/localized area. - PowerPoint PPT PresentationTRANSCRIPT
INSENS: Intrusion-Tolerant Routing For Wireless Sensor Networks
By: Jing Deng, Richard Han, Shivakant Mishra
Presented by: Daryl Lonnon
INSENS Goals
Define a secure & intrusion-tolerant routing scheme.
A small number of compromised nodes can only effect a small/localized area.
Compromised nodes cannot bring down the entire network.
INSENS: Goals
INSENS: Challenges
Wireless communication is broadcast in nature; adversaries can: Eavesdrop on packets as they cross
the network Tamper with transmitted packets Inject packets to initiate DOS
Challenges (continued) Sensor nodes are highly constrained:
Limited power/lifetime Low-power micro-sensors and actuators Slow embedded processors Limited memory Low bandwidth communication
Distributed in the field in-situ, lacking physical security.
INSENS: Underlying Framework
Large number of resource poor sensor nodes. 10-100 nodes for home monitoring 1000+ nodes for battlefield and
building monitoring Small number of resource rich
base stations.
High Level Design Principles to Achieve Intrusion Tolerance
Securely build redundant routing. Only trusted base stations may
initiate expensive network operations (such as route setup).
Symmetric key encryption performed between base stations and nodes.
High Level Principles (Continued) Base stations perform expensive
operations for nodes (i.e. route table computation).
Secure only common traffic patterns. Base station -> node/aggregator Aggregator/node -> base station
Nodes are static (motionless) after setup.
High Level Principles (Continued)
Novel mechanisms can be used to overcome specific attacks.
Allow for multiple base stations and multiple routes to those base stations.
Threat Model
Adversary can compromise a node, obtaining all information (e.g. keys, routing info), as well as, reprogram a node.
An adversary has a jamming range of d, where d is >= a nodes transmission range, and d << the radius of the complete network.
Threat Model (continued)
An adversary can only hear a node if the node can hear the adversary, the adversary may, however, transmit much further than a node.
An adversary cannot tamper with a base station (without being detected).
INSENS: Basic Protocol
Divided into two separate phases. Route Discover – determines the
topology of the network Data Forwarding – is the normal
operation of the network
INSENS: Basic Protocol Assumptions and Preconditions
Assumption: Communication between nodes is symmetric (if a can hear b, b can hear a).
Preconditions: each node possess: A symmetric key shared with the base
station, which is used to create to derived keys and
A globally known one way hash function F The initial number of a one way hash chain
eK mK
oS
INSENS: Basic Protocol Route Discovery Overview
Base station securely floods a request message.
Nodes send local topology to base station in a feedback message.
Base station sends each node a specific routing update message.
Basic INSENS: Route Request
The base station sends a route request message to each of it’s neighbors.
Each node saves the neighbor that it first received a request from and forwards a modified route request.
Route Request Messages
bsID
),( 0msgKMAC bs
0msg
Base Station
REQ
OHC
oMAC
xID
)||,( 1xxx MACmsgKMAC
xmsg
Node x
REQ
OHC
xMAC
…
Basic INSENS: Feedback Each node waits some amount of
time, listening for neighbors flooding the request message.
After some timeout, each node sends a feedback message to it’s parent.
)),(,(),( xxexxmxxex NBRKEIDFDBKOHCKMACNBRKEIDFDBKyx
nxnxnnnnx MACIDMACIDMACIDNBR ...2211
INSENS: Route Discovery
The base station waits for feedback messages, and uses those neighbor lists to build route tables.
A shortest path algorithm is used to generate the first path between a node and a base station.
INSENS: Route Discovery (Second Path)
The second path is generated first by creating three sets of nodes: N1 are nodes along the path (not
including the base station and target node).
N2 are nodes that are neighbors to node in N1.
N3 are nodes that are neighbors to nodes in N2.
INSENS: Path Formation Remove N3 from the “network”, and
compute shortest path. If a path exists, you have the second path.
Remove N2 from the “network”, and compute the shortest path. If a path exists, you have the second path.
Remove N1 from the “network”, and compute the shortest path. If a path exists you have the second path.
If all fail, you have no second path.
Data Forwarding Tables For each node in a path, add to that
nodes routing table a 3-tuple <destination,source,immediate sender>
After all paths have been calculated, unicast each node it’s table.
If a node detects a message, it searches its table and broadcasts the message if it matches an entry.
Basic INSENS Protocol1. BS floods request message
2. Nodes respond with feedback
3. BS determines shortest path
4. BS builds sets N1, N2 & N3
5. BS determines 2nd shortest path
6. BS sends out routing tables
N1
N2
N3
Limitations of Basic INSENS
Wireless communication is not always symmetric.
Feedback messages can get long. Base station can get overloaded on
large networks. No maintenance of network routing
for failed and/or new nodes.
Enhanced INSENS adds
Bidirectional verification. Secure multi-path multi-base
station routing. Maintenance issues: message loss,
nodes joining and leaving.
Bidirectional Verification Defends against Rushing attacks. Echo-back process to verify neighbor
nodes. Each node uses a temporary global key to
setup pairwise keys with it’s neighbors During the handshake for pairwise keys, it
verifies which nodes are neighbors. Each node, then, unicasts a random cluster
key to all its valid neighbors. REQ messages are broadcast encrypted
and authenticated with the cluster key.
Secure Multi-Path Multi-Base Station Routing Each node uses bi-directional verification to
determine neighbors and setup cluster keys. Each base station floods a request message:
Each node that receives the request, verifies the OHC, replaces id with it’s id and rebroadcasts the message using it’s cluster key.
This constructs multiple secure trees that span the network.
),( bCsS IDOHCKEIDREQ
Maintenance: Local Repair Local repair is used to add new nodes
and fix holes in network. If node u has not received a REQ
message after some time t, it sends an authenticated (with it’s cluster key) message (P REQ).
Nodes that have received a REQ message send an authenticated (with their pair-wise key) affirmative response.
Node u picks a node at random that gave an affirmative response.
Maintenance: Pair-Wise Key Setup with New Nodes Before deleting their global key, old
nodes save off a set of These pairs are used to query a new
node u, to determine if it has the global key.
The new node then queries an existing node by asking for it’s id and computing a key ( (using it’s polynomial share?)) and initiating a challenge response.
),(, RandKERand G
xK
Enhanced INSENS Protocol1. Nodes use global key to find
and setup pair-wise and clusterkeys with neighbors.
2. BS floods request message, which is forwarded on using cluster keys.
3. Nodes note first neighbor to send request to build minimum spanning tree.
Implementation: Basic INSENS
Motes running TinyOS 1.0 with NesC. Base station running Java. RC5 used for encryption. CBC mode of RC5 used to generate
MACs. RC5 over known plain text with result
being next key to generate hash chain.
Implementation: Basic INSENS 36 byte packet fragmentation by dropping
packets with higher sequence numbers. Network setup was dominated by timeout
at sensor nodes.
Performance (Cryptographic) of Enhanced INSENS
Cryptographic storage = 8 x (2n +k +l + 2) where key size is 8 bytes, n neighbors, l random numbers, and k base stations.
4 milliseconds to encrypt a message.
4.2 milliseconds to verify hash chain and 136 bytes overhead.
Effectiveness of Multipath Routing 2000 nodes, each node averaging
16 neighbors. Enhanced INSENS with 4 base
stations Basic INSENS with 2 paths Single path routing.
Jamming range = activity range; enhance was 3 times better, basic was 2 times better.
Effectiveness of Multi-Path Routing Jamming range = 2 x activity range;
Enhance was 2 times better, basic was about equal to single path.
Jamming range = 3 x activity range; Enhance was about 1.5 times better, basic was equal to single path.
Versus rushing attacks, echo back almost completely eliminated blocked nodes.