TOC 
6lowpan Working GroupY. Qiu
Internet-DraftJ. Zhou
Expires: April 29, 2011F. Bao
 Institute for Infocomm Research
 October 26, 2010


Lightweight Secure Router Protocol in Dymanmic Sensor Networks
draft-qiu-6lowpan-secure-router-00

Abstract

When a sensor node roams within a very large and distributed wireless sensor network, which consists of numerous sensor nodes, its routing path and neighborhood keep changing. In order to provide a high level of security in this environment, the moving sensor node needs to be authenticated to new neighboring nodes and a key established for secure communication. The document proposes an efficient and scalable protocol to establish and update the authentication key in a dynamic wireless sensor network environment. The protocol guarantees that two sensor nodes share at least one key with probability 1 (100%) with less memory and energy cost, while not causing considerable communication overhead.

Status of this Memo

This Internet-Draft is submitted in full conformance with the provisions of BCP 78 and BCP 79.

Internet-Drafts are working documents of the Internet Engineering Task Force (IETF). Note that other groups may also distribute working documents as Internet-Drafts. The list of current Internet-Drafts is at http://datatracker.ietf.org/drafts/current/.

Internet-Drafts are draft documents valid for a maximum of six months and may be updated, replaced, or obsoleted by other documents at any time. It is inappropriate to use Internet-Drafts as reference material or to cite them other than as “work in progress.”

This Internet-Draft will expire on April 29, 2011.

Copyright Notice

Copyright (c) 2010 IETF Trust and the persons identified as the document authors. All rights reserved.

This document is subject to BCP 78 and the IETF Trust's Legal Provisions Relating to IETF Documents (http://trustee.ietf.org/license-info) in effect on the date of publication of this document. Please review these documents carefully, as they describe your rights and restrictions with respect to this document. Code Components extracted from this document must include Simplified BSD License text as described in Section 4.e of the Trust Legal Provisions and are provided without warranty as described in the Simplified BSD License.



Table of Contents

1.  Introduction
2.  Network Assumptions
3.  Shared-Key Discovery
4.  Dynamic Authentication and Key Establishment Protocol
    4.1.  Basic Protocol
    4.2.  Key Management
    4.3.  Distribution Mode
5.  Security Consideration
6.  IANA Consideration
7.  Conclusions
8.  Normative References
§  Authors' Addresses




 TOC 

1.  Introduction

The demand of wireless sensor networks (WSNs) is growing exponentially. It has turned out that the sensor networks can be widely applied in the areas of healthcare, environment monitoring, and the military. One of the surveys on WSNs points out that, in the near future, wireless sensor networks will be an integral part of our lives, more so than the present-day personal computer [1].

A sensor node has low capability in terms of power, computation, storage and communication. A wireless sensor network is composed of a large number of wireless sensor nodes and multi-hop communication is desired in WSNs. As a result, security in wireless sensor networks has six challenges to overcome: (i) the wireless nature of communication, (ii) resource limitations of sensor nodes, (iii) very large and dense WSNs, (iv) lack of fixed infrastructure, (v) unknown network topology prior to deployment, (vi) high risk of physical attacks on unattended sensors [2].

With the aforementioned limitations of the existing solutions in mind, we now propose a secure protocol in dynamic WSN, addressing all of the following issues:

One of the important novel features of the proposed protocol is that the cluster heads is employed as sub-base-stations to execute key establishment. This way, the total dependency on the base station for key establishment can be avoided. Also, this approach reduces the hops between two communicating ends and hence results in reduction of the communication cost.



 TOC 

2.  Network Assumptions

In this paper, we consider a scenario in which a sensor node roams within a very large and distributed WSN, consisting of a large number of sensor nodes. It is a typical scenario that is widely adopted in hospital environments as the patients or doctors equipped with sensors roam across each department in the hospital. A patient who carries the sensor nodes can move freely within the range of a hospital. When a wireless sensor node is moving, its routing path and neighborhood keep changing. The moving node needs to be authenticated to the new neighbors and to establish a key for secure communication.

This scenario reflects the problems described in Section 1: (a) composition by a large number of sensor nodes; (b) communication based on wireless multi-hop mechanism; (c) no fixed infrastructure; (d) the possible location change of sensor node (patient). Therefore, the challenges of this network assumption are how to establish a secure channel with these routers.



 TOC 

3.  Shared-Key Discovery

In the WSN environment, as data transmission consumes much more energy than computation, the probabilistic solution is widely accepted in order to reduce the storage and communication overhead during key establishment.

So far in the literature, numerous random key pre-distribution schemes have been proposed. For example, in Chan et al.¡¯s scheme [21], each sensor node stores a random set of Np dedicated pair-wise keys to achieve the probability p that two nodes share a key. At the key setup phase, each node ID is matched with Np other randomly selected node IDs with probability p. A distinct pair-wise key is generated for each ID pair, and is stored in both nodes¡¯ key-chain along with the ID of the other party. During the shared-key discovery phase, each node broadcasts its ID so that neighboring nodes can tell if they share a common pair-wise key. Note that Chan et al.¡¯s scheme reduces the storage overhead by sacrificing key connectivity, but it still provides perfect key resilience.

In this protocol, it is assumed that a sensor node (carried by a patient) can move within a special range (e.g. hospital). As each sensor¡¯s memory is severely constrained, each sensor may only store a small set of keys randomly selected from a key pool at the deployment. Two nodes may use any existing key discovery protocol (e.g., the solution proposed in [21]) to find a common key from their own sets. If the common key is not found, the key establishment scheme will be initiated. The reason why binding a general pre-shared key discovery phase to the protocol is to reduce the energy cost as much as possible.



 TOC 

4.  Dynamic Authentication and Key Establishment Protocol



 TOC 

4.1.  Basic Protocol

Due to the limited storage of sensor nodes, the pre-shared key-pair is not always available between the roaming node and its new neighbors in the circumstance of a dynamic node roaming within large WSNs (e.g., in hospitals and nuclear power plants). Therefore it requires an efficient and scalable protocol to establish and update the keys among nodes for secure communications.

Figure 2 shows the basic architecture and message flow of our protocol for authentication and key establishment in dynamic WSNs. When a dynamic sensor node moves to a new area and wants to attach to a router or a cluster head in this area, it first sends a request message to the base station (refer to Figure 2).

req={Src=SN, Dst= BS, RT||R0||MAC(KBN, SN||RT||R0)}			(1)

where Src and Dst denote the source and destination address of a message respectively. SN, BS and RT are identifiers for sensor node, base station and router, respectively. R0 denotes a random number generated by the sensor node. MAC indicates the message authentication code algorithm with a key and KBN is the shared secret key between the base station and the sensor node.

After receiving the req message, the base station will check its revocation list whether the sensor node has been revoked. If the sensor node is acceptable, then the base station verifies the MAC message. If the result is positive, the base station will generate a session key KNR for the roaming sensor node and the router (or cluster head).

KNR = H(KBN, SN||R0||R1)						(2)

where H is a keyed one-way hash function, and R1 is the random number selected by the base station. The base station then sends an approval message appv with the session key to the router:

appv = {Src=BS, Dst=RT, E(KBT, SN||R0||R1||KNR)}				(3)

where E is an encryption algorithm, and KBT is the shared secret key between the base station and the router.

After receiving the appv message, the router decrypts the payload and extracts the session key KNR, and then sends a notice to the sensor node.

notice = {Src=RT, Dst=SN, R0||R1|| MAC(KNR, RT||SN|| R0||R1)}			(4)

Upon getting the notice message, the sensor node extracts the random numbers R0 and R1. After checking if the received random number R0 is equal to the original R0, the sensor node recalculates the session key KNR = H(KBN, SN||R0||R1) and then verifies the MAC value. If the result is positive, the sensor node will use the session key for the communication with this router afterwards. In practice, the router could be any sensor node that the dynamic sensor node wants to connect to.



 TOC 

4.2.  Key Management

In order to manage the keys, every sensor node maintains a table, called ¡°Key Cache¡±. Table 1 shows the structure of the Key Cache.

In order to manage the keys, every sensor node maintains a table, called ¡°Key Cache¡±. Table 1 shows the structure of the Key Cache.

When a sensor node, say node N, wants to connect to other sensor node, say node R, it executes the following procedure:

(1)
Checks first if there is an existing key pair between them.
(2)
Otherwise, processes the subroutine of shared-key discovery to find a common key between node N and node R based on those ¡°PreSharedKeys¡± in their key caches.
(3)
If there is still no common key between them, the sensor node allocates an entry in the key cache, and assigns Node ID as nodeR, Key Stuff as the random number R0 and Key Lifetime as 0, as shown in Table 2.
(4)
Then the sensor node initiates the procedure of key establishment described in the above section. After receiving the notice message, and recalculating the session key KNR, the sensor node updates the entry¡¯s key stuff and key lifetime accordingly.
(5)
When the key lifetime is expired, the dynamic sensor node should re-initiate the procedure of key establishment described in the above section.
(6)
When the sensor node leaves the range of the connected router, the sensor node deletes the related entry from its cache table in order to save the storage. In case there is no space for adding a new entry, it may first delete the oldest key which has expired or will expire soon.

The base station also maintains a key table (Table 3) that includes the secret keys shared with all of the sensor nodes in the network.

If a node is compromised and revoked, its field of key lifetime would be marked as negative.



 TOC 

4.3.  Distribution Mode

In WSNs, the more hops between two communicating ends exist, the poorer the traffic performance becomes and the more energy consumption is required. To overcome these problems, we introduce the distribution mode.

The major idea of distribution mode is to deploy the cluster heads as the sub-base-stations because a cluster head is more powerful than normal sensor nodes. The distribution mode includes the following steps:

(1)
Each cluster head manages to establish the shared key with its neighboring cluster heads after deployment. There are several ways to do this. One could embed those keys in advance if the topology is known at deployment, or use the basic protocol described in the above sections, via the base station. (As this is a one-time operation, the overheads may be acceptable.)
(2)
Each sensor node keeps two base station identifiers (IDs): one is a real base station ID; the other is a sub-base-station (the cluster head) ID. Initially, the ID of sub-base-station is a real base station.
(3)
After deployment, the first round for a mobile node to establish the shared key with the nearest cluster head uses the basic protocol, too.
(4)
When the mobile node moves, use the basic protocol to establish the shared key with the new cluster head, via the sub-base-station (old cluster head) rather than the real base station.
(5)
After successfully establishing the keys, the sensor node updates the ID of sub-base-station with the current cluster head.
(6)
For security reasons, each sensor node must reset its sub-base-station ID to the real base station at a specified interval (say a few hours or days, depending on the various applications) and re-establish keys with its near cluster heads via the real base station. If the base station does not receive any request from a sensor node, it considers the sensor node has been compromised.

The distribution mode could provide an efficient and low energy-cost solution for the shared-key establishment. The basic protocol can provide the stronger protection since it can immediately block and revoke compromised nodes.



 TOC 

5.  Security Consideration

In this proposed protocol, the session key KNR between the sensor node and the router is generated by the base station and sensor node respectively, and the session key is directly sent to the router from the base station by an encrypted packet. Hence, the session key KNR is never disclosed during transmission. The session key KNR is only known by the related peers, i.e., the sensor node, the base station and the router.

Referring to equation (2), the session key KNR is generated by a keyed hash function with the shared key KBN between sensor node and base station as well as two random numbers, R0 and R1, which are generated by the sensor node and base station respectively. As both R0 and R1 are used only one time, there are not the same session keys KNR. This property is useful to against the replication attacks.

Since the session key KNR is generated by a keyed hash function with the secret key KBN between the sensor node and the base station, the different sensor nodes will have different session keys. This feature is useful to protect sensor node privacy.

Even though an eavesdropper at the edge of the sensor node can monitor and capture the random numbers R0 and R1 as well as the identity of the sensor node, it is still not able to regenerate the session key KNR due to lack of the secret key KBN. Without a proper session key, the routers will not forward the packets to next nodes. This attribute could prevent camouflage and traffic attacks.

Due to the fact that no trusted connection is established between sensor node and new router before the connection between them, the proposed protocol employs a random number R1 issued by the base station. The sensor node needs to recalculate the KNR first based on the R1 together with KBN and R0. Then using the calculated session key KNR to verify the received session key KNR and the random number R1. If the result is positive, then the sensor node will trust that the router is authorized by the base station.

Besides the function of informing the sensor node that the new session key KNR is ready to use in the router, the notice message also plays an important role to check if the sensor node¡¯s address is reachable. Without this reachability check, the sensor node may claim that it is at any location rather than its real location. It could launch redirecting attacks.

The path between the base station and the router is secure because the packet between them is encrypted with a pre-shared key KBT.

The messages from the sensor node to the base station and from the router to the sensor node are authenticated by a keyed hash function. Before accepting the inward message and making further processing, the receivers must verify the authentication. Since the cost of a hash algorithm is very small, the base station and sensor node could avoid the attacks of denial of service.

In order to achieve high efficiency and low energy cost, the protocol deploys a distribution mode which uses the cluster headers as the sub-base-stations. Due to the capability of cluster header, it is not able to recognize any compromised sensor nodes in time; the protocol requires each sensor node to reset its sub-base-station ID to the real base station regularly, and to re-establish keys with its near cluster heads via the real base station. This step is also useful to avoid a sensor node binding a compromised cluster head for long time.

According to the above analysis, this proposed protocol, which is simple and easy to implement, can provide relatively strong protection for sensor node networks.



 TOC 

6.  IANA Consideration

This version does not need new values to be assigned by IANA.



 TOC 

7.  Conclusions

In this paper, we have proposed an efficient and scalable protocol to establish and update the authentication key between any pair of sensor nodes in a dynamic wireless sensor network. Our protocol has the following features:

After comparing with some of the popular and latest protocols used in WSNs, our protocol could save about 30% in communication energy, and has the higher probability (100%) of sharing a key between two sensor nodes with less memory cost than those pre-distribution schemes, without incurring in a considerable amount of communication.



 TOC 

8. Normative References

[1] Bradner, S., “Key words for use in RFCs to Indicate Requirement Levels,” RFC 2119, March 1997 (TXT).


 TOC 

Authors' Addresses

  Ying Qiu
  Institute for Infocomm Research, Singapore
  1 Fusionopolis Way
  #21-01 Connexis (South Tower)
  Singapore 138632
Phone:  +65-6408 2053
Email:  qiuying@i2r.a-star.edu.sg
  
  Jianying Zhou
  Institute for Infocomm Research, Singapore
  1 Fusionopolis Way
  #21-01 Connexis (South Tower)
  Singapore 138632
Phone:  +65-6408 2075
Email:  jyyzhou@i2r.a-star.edu.sg
  
  Feng Bao
  Institute for Infocomm Research, Singapore
  1 Fusionopolis Way
  #21-01 Connexis (South Tower)
  Singapore 138632
Phone:  +65-6408 2073
Email:  baofeng@i2r.a-star.edu.sg