Abstract
An efficient protocol for establishing secret keys for neighboring nodes in a wireless network is presented in this paper. The security of the key generated by our protocol is based on the unpredictability of the noises in binary symmetric communication channels. The two nodes which try to establish a common secret key receive messages from a common source of random bit strings. Due to noises in the communication channel, the messages received by them, and most importantly the messages received by the eavesdropper, are not the same. We show that the two nodes can modify their messages in an efficient way to obtain a common string which contains enough uncertainty to the eavesdropper. Then, a secure universal hash function is applied to compute a secret key for extracting randomness from the common string. We prove that the probability for the eavesdropper to know the value of the key is negligible. One advantage of our proposed protocol is that the secret key rate is better than the known scheme in other models, such as the bounded storage model. Furthermore, our proposed protocol needs only to perform exclusive-or operations and compute hash values. Thus, it is a computationally light-weight protocol and suitable for devices with limited computing resources, such as sensors in sensor networks.
Introduction
Security is an important issue in many applications of wireless networks. Plain data sent through public channels are vulnerable to attacks. Many techniques can be applied to protect sensitive data in the communication. Private secure communication channels are usually very expensive. A more practical method is to use encryption. Thus, encryption has become an essential tool to protect data in public communication channels. In this paper, we design a light-weight protocol for any pair of nearby nodes in a wireless network to establish a secret key for secure communication.
A wireless sensor network consists of a set of sensor nodes. Each sensor node has a set of devices for sensing and collecting data and a small antenna for transmitting collected data to other nodes in the network. In most cases, each sensor node has only limited computing power and limited storage. Therefore, in the design of protocols for a sensor network, light-weight computation is very important. One way to establish a secret key for secure communication is to pre-deploy a subset of secret keys selected from a given key pool to each sensor node. Two sensor nodes can establish a key in the field if the intersection of their pre-stored keys is not empty. However, in order to ensure non-empty intersection between any pair of sensor nodes, the number of pre-stored keys in each node cannot be too small, especially when the number of sensor nodes is large. This will cause problem for sensors with small amount of memory.
Our proposed protocol does not need to pre-store a set of keys. Instead, we use unpredictable noises in the communication channel as the main ingredient of security. Due to noises in the communication channel, the messages received by the communicating sensor nodes, and most importantly the message received by the eavesdropper, are unlikely the same. We design an efficient method for sensor nodes to adjust their received messages so that the adjusted messages are the same with very high probability. An eavesdropper can also adjust his received messages. However, we show that an eavesdropper must have uncertainty on the messages agreed by the sensor nodes. Therefore, the eavesdropper does not have enough information to compute the secret key. The security of our protocol does not depend on how much computing power the eavesdropper can use.
In the security analysis of our protocol, we apply Chernoff bounds and other techniques to derive an upper bound for the number of correct bits computed by the eavesdropper. We formally show that, with suitable selection of parameters, the eavesdropper does not have enough information to deduce the value of the secret key established by two sensor nodes. Thus, the established key shared by two sensor nodes is secure against the eavesdropper except leaking negligible amount of information about the secret key.
This paper is organized as follows. In Section 2, we survey related works. Our protocol is described in Section 3. Section 4 is devoted to the security analysis of our protocol. Section 5 shows how to select parameters in our protocol so that the protocol can be executed efficiently and securely. Section 6 shows the simulation result of our protocol. Finally, conclusions are given in Section 7.
Related works
There are two commonly used types of schemes for establishing secret key among sensor nodes. The first type is to pre-store a set of keys selected from a key pool. The other type is to compute the secret key by using the same random source. For the first type, a set of keys need to be pre-distributed in the sensor nodes before they are deployed. For the second type, a random source must be accessible by the two parties.
For the pre-deployment of keys, Eschenauer and Gligor proposed a method to assign a random subset of the keys to each sensor node. They proved that two neighboring sensor nodes can establish a shared key from their own key pools with very high probability [10]. Liu and Ning improved the basic random key pre-distribution scheme of Eschenauer and Gligor by using multiple random key pools for each sensor node [15]. Ren et al. discussed how to pre-distribute keys in large scale [19]. Miller and Vaidya proposed a key pre-distribution scheme which assumes that the communication channels between sensor nodes use the orthogonal frequency-division multiplexing technology [17]. Sensors with pre-stored keys have some drawbacks. For example, when the number of sensors is large, to ensure that each pair of sensors can share nonempty set of keys, the number of keys pre-stored in each sensor cannot be too small.
Secret keys can also be established after these sensor nodes were deployed. Tsai, Tzeng, and Zhou proposed a key establishment scheme for wireless sensor network in the bounded storage model [20]. Their first scheme requires special beacon node for broadcasting random bits. In their second scheme, some sensor nodes play the role of beacon nodes. The security of this model is based on that the random bits are too large to store in any available device which has only limited storage. For the purpose of establishing a secret key with high probability, each sensor node needs to store
Noisy channel plays an important role in cryptography. Crepeau and Kilian presented some general techniques for establishing cryptographic strength of a wide variety of games. They showed that a noisy telephone line is in fact a very sophisticated cryptographic device [8]. Claude Crepeau proposed bit commitment and oblivious transfer schemes based on binary symmetric channels [7]. Crepeau, Morozov, and Wolf proposed an oblivious transfer scheme from almost any Noisy Channel [9]. Imai, Morozov, and Nascimento computed the OT capacity of the erasure channel for semi-honest adversary. For the malicious adversary, they gave its lower bound [12]. Palmieri and Pereira proposed an OT protocol based on channel delays only [18]. Cheong and Miyaji improved the scheme of Palmieri and Pereira to obtain an OT protocol in the malicious model [6].
Noisy channel can also be used to establish a common secret key. Wyner showed that the noise in the communication channel can be used to provide security in message transmission [23]. Ahmadi and Safavi-Naini focused on secret key capacity [2]. However, their model assumed that the eavesdropper has a binary symmetric channel with probability
Mathur et al. proposed a method for two nodes to extract a secret key from a wireless channel [16]. Their protocol requires that the bit error probability
There were several schemes exploited physical properties of channels for establishing secret keys [3,4,11,14,22]. Mathur et al. proposed a protocol that allows two parties to establish a common cryptographic key by exploiting special properties of the channel: the underlying channel response between any two parties is unique and de-correlates rapidly in space [16]. For our scheme, the amount of uncertainty is from the noises over a public radio link. For 4G service at 1 gigabit per second with
Our protocol exploits the noisy property of channels. We assume that the eavesdropper uses a binary symmetric channel with the same error probability p, rather than a degraded one. Even the eavesdropper uses a degraded channel, our protocol still works. In fact, it is easier for the sensor nodes to collect common strings with enough uncertainty against the eavesdropper in a degraded channel.
We do not study how random messages are sent and received by the two parties to obtain the random bits. There are methods to do proper channel estimation to obtain “good” random bit strings [13].
The protocol
Consider the scenario that a set of sensor nodes are deployed in a field randomly. Each sensor node has no post-deployment knowledge about the other sensor nodes. All they can do is to communicate with its neighboring sensor nodes via their antennas.
In the application level of a computer communication network, it is generally required that a receiver can receive all messages in the communication without errors. However, errors may occur in the lower level of real-world communication systems. Noises and other factors often make message communication less reliable. An error correction code or even re-sending some parts of a long message is required to make sure that the received message is intact.
While in transmission of messages we try to reduce errors, in the secret key establishment, we use errors to derive secret key so that the eavesdropper cannot obtain the information about the secret key. Thus, we need raw data in the noisy communication channel. Nevertheless, this is required only in the first step of our protocol.
Our protocol assumes that the broadcast channel is a binary symmetric channel. The raw data bits received by a sensor node may be different from the broadcast bits. In a binary symmetric channel, the probability for a bit 0 to be received as 1 is the same as the probability for a bit 1 to be received as 0. They are both equal to p,
Let K denote the secret key to be established by A and B for encryption, such as AES. Let s be the length of the key K. The value of s is usually regarded as the security parameter of the system. For example, the value of s can be 128, 192, or 256 for AES cryptosystem.

Basic steps of the protocol.
Our protocol is shown in Figs 1 and 2. Figure 1 contains the basic steps of establishing a common string of m bits between A and B. Figure 2 is the main protocol of computing K from r common m-bit strings between A and B.
In the basic steps (Fig. 1), A and B receive broadcast random bits by the same beacon node at the same time. Let the m bits received by A be

The main protocol.
Step 1 in the main protocol, shown in Fig. 2, repeatedly executes the basic steps in Fig. 1 r times to establish a common bit string of
Note that, in the basic steps of our protocol, if
In the last step of the protocol, a universal hash function f is applied to their common bit string to extract randomness for the shared secret key K. The universal hash function f, from
Let T be the number of times that the full protocol in Fig. 2 is executed until the common secret key K is established. The following theorem gives the expected value of T.
Let T be the random variable for the number of times executed until sensor nodes A and B successfully establish a common string of length
Since the bit-flip probability is p, the probability that the two bits of A and B are different is
The average number T of times required for
Table 1 shows the expected number of times T that the whole protocol needs to be executed. This number depends on the common string length m, the number of runs r and the bit-flip probability p. Here we assume that
The communication cost in bits for
Table 2 shows that our protocol can be executed very fast for
Now we shows that the corresponding m-bit string of the adversary in Fig. 1 is different from A’s and B’s by at least some amount. Since the bit-flip probability is p, the probability that the two bits of A and B are different is
If the ith parity bit of B is different from A’s parity bit, then the eavesdropper knows the value of the corresponding two bits, which will be reset to 00. On the other hand, if the ith parity bits of A and B are equal, and the eavesdropper’s parity bit is different from A’s and B’s, the eavesdropper will know that one of his two eavesdropped bits is correct and the other is incorrect. Nevertheless, he does not know which one is correct and which one is incorrect. He can only guess the correct value of the two bits. With probability
Since the probability for the ith parity bit of B being different from A is
Let
Let
In the proof of the above theorem, we use the Chernoff bound to show that the probability that the adversary obtains information by a certain amount on average is very small. The Chernoff bound can be described as follows. Let
The next theorem estimates the amount of uncertainty about the corresponding two bits
Let
Let Y be the random variable such that
Then
Therefore, the amount of uncertainty to the eavesdropper for a common m-bit string (in Fig. 1) is
In the next theorem, with proper parameter setting, we show that the key K established by A and B is s-bit secure against the eavesdropper. Note that
Let F be a random variable for a function f randomly chosen from the universal hash family
For any
Suppose that A and B have collected a common string which contains s bits of uncertainty to the eavesdropper. Assume that the hash functions f is randomly chosen from a universal hash family. Then, after the protocol, the eavesdropper has almost s bits of uncertainty about the value of key K.
Let R be the random variable for the random string broadcast by the beacon node. Let
Because
We cannot use the privacy amplification theorem directly to prove the security for
For any
It can be seen in Theorem 5 that the hash functions f can be public, even to the eavesdropper. The privacy amplification theorem provides a lower bound on the entropy of the hash value
The purpose of the repeated execution of the basic steps in Step 1 of Fig. 2 is to accumulate sufficient uncertain bits against the eavesdropper. The value r should be properly chosen so that the
The entropy of the r m-bit common string to the eavesdropper
The entropy of the r m-bit common string to the eavesdropper
Table 3 shows entropy for some possible r and
The values in Table 3 can be derived from Theorem 3. First we compute the uncertainty to the eavesdropper for a single run. Then we multiply it by the number of runs r to get the final result.
For example, for
We use programs to simulate the noisy channel and the protocol. Assume that a beacon node broadcasts random bits. The first step is to simulate nodes A and B to receive the random bits broadcast by the beacon node. A, B and the eavesdropper receive each random bits independently with specified error rate p. The second step is to compute the exclusive-or of the bit strings received by A and B. Node A sends the parity bit string to B and B sends back those positions with different parities. Then, A and B compute the key by the steps specified in the protocol.
The simulation program judges whether the protocol succeeds by checking whether the received strings of A and B are the same after adjusting the strings by using the parity bits.
Figure 3 shows the successful rate of the basic step of the protocol for different bit flip probability p, assuming
Figure 4 is the number of entropy bits for different bit flip probability p, assuming

Simulation results for success rate.

Simulation results for entropy bits.
We have presented a protocol for two sensor nodes to compute a secret key in a binary symmetric channel in wireless sensor networks. The secrecy of the key is established by using the uncertainty of the messages received by the two sensor nodes and the eavesdropper.
We are able to prove formally that the eavesdropper’s information about the secret key K is negligible. Thus, the key computed by two sensor nodes is secure in the sense that the eavesdropper does not have enough information to compute the secret key. This is different from the computational security of public key systems, such as the Diffie–Hellman key exchange protocol.
We have used the scenario of wireless sensor networks to describe our method. This scenario is one of the possible applications of our method. Any two parties who share a common noisy channel can use our method to establish a secret key. The only setting that needs to be changed is the way the two parties collect the random bit strings.
Footnotes
Acknowledgment
This research is supported in part by the MOST project 104-2221-E-009-112-MY3.
