Abstract
Keywords
Introduction
Key management 1 is one of the key components of network security. It comprises the procedures of establishment of keying relationships between the network nodes, as well as the maintenance thereof.
The application of secure communication, and particularly key management in wireless sensor networks (WSNs), leads to several challenges, which stem from the scale and limited computational and communication resources in these types of networks. There are several approaches to solve this issue, each supporting different types of communication models and network dynamicity and leading to different performance and security trade-offs.
Numerous key management protocols targeted toward WSNs have been designed, both symmetric and asymmetric. 2 The first ones generally have lower network and computational costs, but require some form of key pre-distribution. Key compromisation is an issue and needs special key revocation procedures to handle it. Conversely, asymmetric schemes impose higher costs, both in computation and communication, but no secrets need to be distributed or revoked between nodes. Trust, however, still needs to be addressed and is generally handled by a certificate authority (CA), or pre-distribution of network nodes’ public keys.
Key management schemes can be classified by the communication model they support; depending on how secrets are shared between the network nodes, different communication patterns can be natively supported. Some common classes include the star-type base station participation, 3 random possibility for pairwise communication, such as in polynomial 4 and probabilistic, 5 or group communication, 6 where nodes can, cryptography-wise, communicate directly with any peer. Some applications can be accommodated without a problem with simpler communication models, while others can be more demanding or unpredictable and might need the any-to-any pattern of the latter class.
Another requirement for subsystems used in WSNs is scalability. 7 This, naturally, applies to key management, the procedures of which must, for some applications, be able to effectively applied on networks of hundreds or thousands of nodes. The difficulty of such implementations is further increased when combined with communication flow requirements, such as group communication where a network-wide key is used.
A group of schemes that scales well and supports group communication is the logical key hierarchy (LKH) class of key management schemes, which additionally supports dynamic network membership. It was initially introduced by Wong et al. 8 and independently by Wallner et al. 9 Variations and adaptations on the main scheme have been developed, targeted at mobile networks and WSNs in particular, such as Lazos and Poovendran, 10 Pietro and Mancini, 11 Pietro et al., 12 and Dini and Savino. 13
Some works based on LKH aimed to minimize the number of messages 14 or to find computation-wise optimal key structures, 15 but the cost of multihop transmissions was not taken into account.
In many WSN usage scenarios, the network topology will be heavily multihop, something that affects the total transmissions incurred by the rekeying procedures. Depending on the mapping between key management structures and the actual network topology, the communication cost can vary greatly. This issue was explored by Lazos and Poovendran, 10 in which the creation of location-aware structures was discussed, assuming the node position is known. For non-uniform, hierarchical networks, a topology-matching key management tree scheme is presented in Wang et al. 16 Son et al. 17 present a topological key hierarchy (TKH) approach where key hierarchies are constructed using their connection graph. The results presented show better performance than several LKH class techniques using randomly picked structures. Topology-aware LKH key (TALK) 18 is an attempt to efficiently apply the LKH scheme on multihop networks in an efficient way, deciding on both the key server location and the hierarchical key structures, aiming to minimize network traffic. Another approach is by Cheikhrouhou et al., 19 where a topological approach is also followed; however, the focus is on relieving the group controller of costs by offloading key management responsibilities to almost the whole network, while also not taking advantage of multicast.
An interesting group-based approach is presented in Dini and Savino, 20 where partially overlapping groups, defined by the application layer, are used. This can have advantages both at the security and at the efficiency level, as rekeying material and procedures are contained within the relevant group, but with disadvantageous group overlap patterns, the rekeying cost can easily climb. Moreover, prior knowledge of the application layer grouping is needed, which, for some applications, could depend on having already established lower layers.
This work bases on and expands on TALK 18 management and LKH 8 schemes in general, providing a method to divide a network into clusters and apply LKH key management operations to each of them as needed. Dividing the network into clusters leads to significant reductions in rekeying cost, compared to schemes that use a network-wide key. The scheme is targeted at larger networks where the rekeying cost would naturally increase and applications that would demand mostly local traffic. A variation that adds a cross-cluster key is also presented, which incurs a larger, but still relatively low rekeying cost. This variation is targeted at smaller networks or applications that would demand excessive cross-cluster traffic.
The rest of the article is organized as follows: in “Previous work,” the building blocks for this work such as LKH and TALK are described. Section “CHAT” describes the basic scheme of CHAT, including network tessellation, key hierarchy design, and rekeying procedures. “CHAT with network key” presents a modification to the basic scheme, which makes use of a network key. “Distributed on-network CHAT configuration” gives algorithms for the distributed calculation of clusters. Our simulation setup and results are presented in “Simulation studies.” Finally, in “Conclusion,” we draw our conclusions.
Previous work
Secure communications with LKH
Due to the diversity of WSN applications, there are a large number of communication models that can be applied, tailored to each case. However, the model which allows the most flexibility at the application layer is to assume any node can wish to communicate with any other node, the so-called group communication model. 6
For this model, when symmetric ciphers are used for encryption, a common traffic encryption key (TEK), shared between all network nodes, is generally used. Alternatives, such as probabilistic key distribution, exist, but they introduce considerable overhead to data transmissions, when no keying material is shared between the two communicating nodes.
A common requirement and feature of key management for WSNs is the ensurance of forward and backward secrecy. 21 (Forward secrecy is the property of a system which states that knowledge of a particular communication key does not enable discovery of future keys for an adversary. Backward secrecy is held when knowledge of a particular key does not enable discovery of previous keys.) To ensure forward and backward secrecy, the TEK needs to be changed when nodes join or leave the group. Also, a periodic TEK refresh can be applied, reducing the amount of material encrypted with the same key.
Changing the TEK is an easy and low-cost task, as it can be achieved by simply multicasting the new TEK to current nodes. However, node kick operations pose a greater problem, as there is no simple and straightforward way to distribute a new TEK to all nodes but the leaving one and ensuring the latter cannot acquire it.
LKH8,9 handles this problem using modeling network nodes as leaves in a tree (Figure 1). Key encryption keys (KEKs)

Logical key hierarchy—node kick example
For a node kick operation, it is apparent that all keying materials that the leaving node
In the example of Figure 1,
Node joins are simpler, in that the keys held by the current (before the join) nodes are not known to the new node, so messages containing the new keys can be simply sent encrypted with their respective current keys.
Rekeying authentication
An issue that comes up on the use of LKH on WSNs is that of authentication. The digital signatures used for authentication in the original work 22 are practically unusable in WSNs, primarily because of their size. Other signature algorithms, particularly those based on elliptic curves, 23 have been shown to be viable on WSNs, 24 but not without a significant overhead to the node processors and network traffic. This, however, is bound to change, as mode powerful microcontroller units (MCUs) are being introduced, which even have hardware accelerated public key cryptography functions. 25 This will largely mitigate the processing overhead, but the network overhead is still non-trivial, for example, a signature length of 320 bits is needed for a security level of 80 bits.
We thus consider two options for authentication: the use of proper digital signatures for the authentication of the rekeying commands, particularly elliptic curve digital signature algorithm (ECDSA),
26
and the use of key chains, as described
In the latter, each key server does not generate independent random keys for each rekeying, but uses key chains, pre-calculated by the key server. Key chains are created by repeatedly applying a one-way hash function
TALK
TALK is a method for generation of LKH key trees which exploits the network topology in order to reduce the network transmissions required for rekeying operations. The general idea is that network topology information is collected, which allows computation of various metrics, including an estimation of average and maximum rekeying costs, for each key server candidate. The metrics are combined in a fitness function, which is used to select the key server. Once the server is selected, key trees are constructed using a topological network tree rooted at it, and finally additional optimizations are made. It comprises two main steps: (a) the server selection and (b) the key trees formation and optimization.
TALK: key server selection
At the beginning of the key server selection step of TALK, a form of network discovery is performed, by means of flooding the network with route information packets. At the end of the discovery step, each key server candidate contains a partial representation of the network topology, which has the form of a tree, rooted to this candidate itself. Candidates use the discovered topology information to calculate each own cost metrics corresponding to rekeying operations with itself as the key server. The metrics include the maximum and average distance between itself and all other network nodes and maximum and average node kick rekeying costs, measured in number of transmissions, using a generated draft key tree. Fitness information is then exchanged, and the fittest candidate is selected as the key server.
TALK: key tree generation
The second part of TALK is the generation of the key trees, which takes place after the key server has been selected. The fittest candidate already has gathered topological information of the network and has generated a draft key tree. The key server processes the information further and applies various optimizations to the draft key tree. Optimizations are performed in parts of the tree, following two rules that were found to decrease the rekeying cost. They comprise removing superfluous internal tree nodes in chain-like parts of the tree and nesting leaves under additional nodes, where those are siblings to internal nodes. The result is the proper LKH tree used for rekeying operations, and keys are forwarded to network nodes as appropriate.
CHAT
Overview
CHAT is a key management scheme based on LKH and TALK. It also splits the network into (keying) clusters, aiming to further reduce the number of messages required for rekeying operations. As a first step, it uses the key server selection of the basic TALK approach. After that, more nodes are selected to work as end-cluster-heads (ECHs), using a novel algorithm which aims to spatially spread the cluster heads within the network and also place cluster heads in relevant spots, which will minimize rekeying transmissions. Each of the selected ECH subsequently creates its own TALK-based key tree, and a super-cluster (SC) is also constructed, having the original key server as its head and the rest of the ECHs as members. At the end of the procedure for the basic scheme, the network is divided into several clusters, dubbed the ECs, which share no keying information, and one SC, which comprises all ECHs. Non-ECHs nodes only contain keying material from a single cluster. Thus, for a node kick rekeying operation, it is only necessary to refresh keys within this cluster, and not the whole network, which is the case for the plain LKH.
Network and security assumptions
For every node of the network, unicast and broadcast capabilities are assumed, within a specified range. All nodes are assumed to have the same communication range, meaning all links are bidirectional.
The existence of an uncompromisable key master server is also assumed, with the capability of secure pairwise communication with all network nodes at network bootstrap.
CHAT: basic scheme
CHAT is based on splitting the topological network graph into local clusters. These clusters, dubbed the ECs, have some optional parametric overlap, while each node possesses keying material only for the clusters it belongs to. We call the basic case, without overlap, CHAT/basic.
Intra-cluster communication is simple; as the cluster is essentially an LKH network, there is a key shared between all its nodes, the
For inter-cluster communication, an additional cluster is formed, comprising all ECHs, dubbed the SC. The message is routed initially to the ECHs of the source cluster, which forwards it to the destination cluster’s ECH.
For example, on the network of Figure 2, if node 28, belonging to EC (headed by) 25, needs to send a message to node 46, belonging to EC 30, it routes the message through its ECH, node 25. Node 25, in turn, decrypts and reencrypts the packet, using

Network example with clusters.

CHAT/basic inter-cluster data transfer.
These structures are created as follows: first, ECHs are selected, using TALK fitness data and topological criteria. Then, nodes are assigned to ECs with an algorithm that aims to achieve high cluster locality.
Selection of cluster heads
As the first step in creating the CHAT keying structures, a set of ECHs is selected out of a set of candidates. The candidate set can be network-specific and depends on the node characteristics and network composition. It makes sense that in a completely homogeneous network, all nodes will be candidates, but in heterogeneous networks, where some nodes might, for example, be much more low-end, those will be excluded from the candidate set.
Let
Intuitively, it is used as a rough prediction of the reach of the clusters (in hops), being the ratio of the average cluster size in nodes, to ANs, which is a metric of network density.
The selection algorithm selects candidates that are as close as possible to a large number of other nodes, which in turn are not close to already selected ECHs. The base formula used is the sum of
where
The algorithm for the ECH selection is given as pseudocode in Algorithm 1.
An example of the progressive selection of ECHs is shown in Figure 4, where the red node is the SC-head (SCH), green nodes are already selected ECHs, and gray nodes are nodes that will count with a reduced weight in calculating suitability for future ECH candidates, due to them being close (closer than

ECH selection example
Node assignment to clusters
At the end of the previous step, a set of ECHs,
In more detail, the algorithm works as follows:
Let
The main algorithm is iterative, and similar in concept and function to Dijkstra’s shortest path algorithm.
27
In each iteration, every node in
This algorithm guarantees that nodes are assigned to the closest ECH; similar to Dijkstra’s algorithm, this can be proved by induction. We define
Hypothesis: After
The trivial case is after Step 0, where
Assuming the hypothesis stands for step
An example is given in Figure 5, where the iterations of the assignment algorithm are shown, starting from the ECHs selected in the example of Figure 4. Each EC is shown with a different color.

Node assignment to clusters: (a) Step 1, (b) Step 2, and (c) Step 3.
Overlap
Some overlap between clusters can be introduced, by extending the node assignment process. The scheme, when using overlap, is dubbed CHAT/overlap.
The reasons to use cluster overlap are as follows: (a) the increase in intra-cluster (overhead-free) traffic; by increasing the number of destination nodes, a source node shares an EC with. (b) More paths for routing inter-cluster packets, as potentially shorter source → source ECH → destination paths can be formed using additional ECHs, than using exclusively primary ECHs. (c) Since each node shares at least one EC with each neighbor, the absolute shortest path can be followed for every inter-cluster message, by simply using more decryption–reencryption cycles at EC borders, effectively trading energy used for encryption for communication energy.
A parameter
Key trees’ creation
Having the ECHs and the EC members decided, each ECH can create the key trees for its cluster. This is done per the formation and optimization of the key tree steps, as described in TALK.
Rekeying procedures
At network bootstrap, each node
IGs and IEs are derived by mixing respective master keys and the node ids, as done in
Non-ECH node kick
When a non-ECH node
ECH node kick
If the leaving node
Selection of ECH node replacement
For use in the event of an ECH kick, an up-to-date list of suitable ECH replacements should be kept at SCH. When an ECH needs to be replaced, the new one is picked from the stored list. The procedure for selecting the most suitable ECH replacement in an EC can be run after every or few ECH membership changes. (Not necessarily at exactly the time of the rekeying procedure. It can be run later, to avoid network congestion.) Choosing to run the procedure less often trades ECH selection communication costs for the risk of ending up with a sub-optimal ECH.
The decision of which node will take the role of
All
Node join
The node is added to the EC of the ECH which is closest to it; if there is a tie between the closest ECHs, one is chosen at random. The new node’s position on the EC key tree is then decided: having a shortest path to the ECH discovered, the node is placed on the key tree as a sibling to its immediate parent on that path. The join procedure is performed as a plain node join operation, as described for the exact underlying protocol: if plain LKH is used, all keys on the node’s path to the root in the key tree are refreshed, and then the new ones are sent to the new node. If
CHAT with network key
A possible variation in the CHAT scheme is CHAT/network, the inclusion of a global TEK, or global traffic encryption key (
Node kick
For every node kick operation that occurs in the network, all nodes must update the
Node join
If plain LKH is used, a new
Distributed on-network CHAT configuration
The algorithms in sections “Selection of cluster heads” and “Node assignment to clusters” are centralized and would require knowledge of the whole network topology to be gathered at one point, and the ECs are calculated. Running the centralized algorithms is not infeasible, taking into account that this procedure would be performed only at network bootstrap, and perhaps rarely during the network lifetime, to restore rekeying performance when the network has severe changes in the topology.
However, we also offer distributed versions of these algorithms which do not require global network knowledge and can be run cooperatively by the network nodes.
Distributed selection of cluster heads
As mentioned in the centralized version, the first ECH/SCH is selected using the procedure described in TALK. During that step, each node acquires a subset of the network connection graph, in the form of a tree rooted to itself. This can be used for the calculation of the node’s gravity.
The SCH broadcasts a search ECH (SECH) message. The message contains its own id; the step number (2 as the first ECH is already selected) has a distance up to MD from itself (which from now on count with a reduced weight toward increasing the candidates’ gravity). If the SCH has a large enough neighborhood, the message is split into multiple packets.
All nodes receive the message, along with the blacklisted nodes, and can calculate their own gravity. Each ECH candidate sends back a CECH message which contains its gravity along with the list of nodes in its vicinity (up to MD hops). To reduce traffic congestion, messages are not forwarded by nodes if the gravity in the received message is less than the largest they already forwarded. After sufficient time has passed, the SCH declares chosen the node with the largest gravity received and sends a new SECH containing the new ECH id, the new step number, and the new reduced weight nodes. The process repeats until the desired number of ECHs is selected.
Distributed node assignment to ECs
The distributed node assignment algorithm is also performed in rounds. Each round is initiated by the SCH, which broadcasts a node assignment trigger (NAT) message to the network, including the round number. For the first step, the nodes that are one hop away from one or more ECHs select one and join its EC. Each node that joins an EC sends a node assigned to end-cluster (NAE) message both to the ECH and as a local broadcast. ECHs wait an appropriate amount of time to receive new assignments and report the new nodes to the SCH with a end-cluster membership update (ECMU) message. If no new nodes have been assigned to an EC, the ECMU is still sent, albeit empty.
At the end of the step, the ECHs know which new nodes joined their cluster, and all nodes that received one or more local broadcast NAEs know they are now adjacent to the respective ECs. When the SCH has received ECMU messages from all ECHs, it triggers the next round of assignments.
The procedure stops when all ECHs report no new nodes. (Practically, after a round passes with no new nodes for an EC, that EC will not receive any other nodes in general. The empty ECMU thus only needs to be sent once by each ECH, and the SCH, in turn, just counts the number of null ECMUs it has received throughout the process.)
Overlap
After the primary node assignment procedure is completed, the SCH broadcasts an NAT request, indicating it is for an overlap round, plus the overlap round number. Each node that is on a cluster border (has previously overheard a NAE broadcast regarding another EC) has kept information on the nearby cross-cluster nodes and transmits a NAE for each of them. Each ECH transmits an ECMU with the new nodes. This procedure ends after a predefined number of overlap rounds.
Simulation studies
Simulation setup
For the evaluation of our scheme, we developed our own simulation framework in Python. For our purposes, we have assumed an ideal wireless transmission medium, where 100% of a node’s transmissions are successful within a circle of a predefined radius
For our evaluation studies, we create simulated networks; a network is created by randomly placing
Finally, each presented point on the by-node-number plots is calculated by averaging multiple (10) simulation results.
Simulation results
Figure 6 shows the relation between area length (

Relation between physical network size, number of nodes, and AN,
We compare the performance of CHAT against other LKH-based schemes; “vanilla” random binary and quad LKH trees and TALK. In the random tree schemes, balanced key trees are created, and the leaves are randomly assigned to network nodes.
The average node kick costs for networks of various sizes can be seen in Figure 7, and with more detail in Figures 8 and 9. There are three CHAT schemes, “basic,”“overlap,” and “network,” and each is run with two different target ECH numbers: 8 and 21. CHAT/overlap refers to the basic scheme configured with cluster overlap, at one hop.

Node kick rekeying costs.

Node kick rekeying costs, CHAT/basic, and CHAT/overlap only.

Node kick rekeying costs and CHAT/network only.
All schemes based on random LKH trees are shown to be considerably more costly than the topology-based TALK and CHAT schemes. Quad random trees seem to perform better than binary trees, as also seen in Zhu. 15
The cost for CHAT/basic is very low—the lowest of all schemes—and increases very little with the network size. For 400 node networks, and using 21 ECHs, the average node kick cost was only 30 transmissions.
The use of cluster overlap (in CHAT/overlap) incurs some additional cost and has meaning on networks of more than 100 nodes, but for large enough networks, it offers more flexibility for overhead-free communication patterns, especially applications that make heavy use of local communications, having considerably less cost than using a network key.
CHAT/network, while more expensive than the other variations, is shown to improve on TALK, requiring 51%–60% of the transmissions for the networks of 60 nodes or more, and as little as 19.8% of the transmissions versus random quad trees, for the largest networks simulated; this while still offering completely overhead-free group communication.
Figures 10 and 11 show the overhead incurred for normal data traffic when using CHAT/basic and CHAT/overlap, when the traffic patterns are random, or to a single sink node, set as the SCH, accordingly.

Overhead % for random traffic when using CHAT/basic and CHAT/overlap.

Overhead % for traffic to the key server when using CHAT/basic and CHAT/overlap.
Using a larger number of clusters is beneficial for inter-cluster traffic, as the 21-cluster configuration is always better than the 8-cluster one; using 21 clusters leads to an overhead up to about 30% for random traffic and 20% for traffic to the sink. Using cluster overlap also decreases the traffic overhead significantly, having an overhead of up to 14% and 11%, for random and to-sink traffic, respectively. This is due to many nodes belonging to multiple clusters, increasing the number of overhead-free destinations, as well as having more solutions to route inter-cluster traffic, which potentially are less costly than using the nodes’ primary ECs.
Intra-cluster traffic is overhead-free in any case. However, when not using overlap, this traffic is constrained to regions around ECHs. This is sufficient when, for example, data from each area are aggregated, but do not accommodate applications that require each node to be able to communicate with all its neighbors.
Overlapping the clusters solves this problem, leading to much greater flexibility to the communication patterns efficiently supported. For applications that use local broadcasts or involve modifications to messages before propagation, using an overlap of one hop essentially brings traffic overhead down to zero. Moreover, even when the application requires long-distance multihop messages, without any intermediate modification, the communication overhead can be traded with reencryption overhead, as the absolute shortest paths can be followed, reencrypting where needed (every hop in worst case, practically less often).
Conclusion
In this work, we presented a key management scheme targeted at WSNs, and based on LKH, combined with topological clustering techniques focused on achieving low-cost rekeying. Three variations were presented, the latter two applicable to practically any application scenario, but each of them most effective in a particular application subset.
The first variation, CHAT/basic, is the basic scheme, with no network key, and without cluster overlap. This incurs the least rekeying cost and is recommended for applications having their main traffic within cluster boundaries, possibly aggregating data through cluster heads.
The second variation, CHAT/overlap, is the basic scheme, using cluster overlap. The rekeying cost for this variation is larger than the previous case, but still scales very well with the network size. The benefit is having much more flexibility in traffic, as each node can gather/send traffic overhead-free to any other node in its neighborhood. The communication overhead for longer multihop routes is much less than the non-overlapping approach, and it can even be completely traded with reencryption overhead, by simply following shortest path routing and reencrypting as often as necessary. This approach is recommended for large networks, if the application traffic patterns are not well matched to the non-overlapping clusters.
The third variation, CHAT/network, is the addition of a network key to the basic scheme. This approach naturally incurs greater communication cost for rekeying, but offers true group communication model capabilities. It is recommended for cases where long-range multihop traffic is expected to be common.
