## 1 Introduction  
In recent years, there have been major advances in the development of wireless sensors and IC process technology. Due to these advances, wireless sensor networks (WSNs) have been replacingtraditional network technologies [1-4]. These WSNs have a number of advantages over wired networks, such as ease of deployment, extended transmission range, and self-organization. There are, however, a few inherent limitations to WSNs. These include low communication bandwidth, small storage capacity, limited computation resources, and limited device energy. In terms of energy, many researchers assume that all nodes in a sensor network are battery-driven [5,6]. Because of this, energy is a very scarce resource in sensor networks. Therefore, energy efficiency is an important design issue in WSNs. Currently, WSNs are used in various applications. Figure 1 shows a schematic of applications for WSNs. Among their many applications, they can be used in the military, in agriculture, in transportation, in manufacturing, and in smart homes. Generally speaking, a WSN consists of hundreds or thousands of densely populated sensor nodes that sense the environment they are in and collaboratively work to process and route sensor data. These sensor nodes relay data streams to base stations either periodically or based on events. A base station can be stationary or mobile. If it is mobile, it can move among the sensors and collect data. In a network densely populated with sensor nodes, the area detected by the sensors may overlap, and thus the data sensed by the sensors may be similar. Many wireless collisions occur in this type of network. The general characteristics of a wireless sensor network include the following: ability for multiple deployments, low cost, small size, and adequate battery power supply. In addition, there are two types of structures for routing transmissions in a wireless sensor network:  
Figure 1: Wireless sensor network applications. (1) Cluster: The cluster structure is the most representative of the routing protocols. The general concept behind the cluster structure is to group a large number of sensors into several clusters. In each cluster, a node is chosen as the cluster header. The cluster header collects information from the other sensor nodes within that cluster and transmits the information to the base station. (2) Chaining: The chaining structure differs from the cluster structure in that each detector node in a network is linked together to form a chain. In each round, a node in the chaining structure is chosen as the chain header. Nodes on both ends of the chain transmit data to adjacent nodes in the direction of the chain header, and each receiving node gathers the information. Finally, the chaining header transmits the information to the base station. One of several basic network topologies may be used in WSN. The basic network topologies are shown in Figure 2. These include the star, tree, ring, fully connected, bus, and mesh topologies. Different topologies have different features or difficulties. Fully connected networks suffer from problems of NP-complexity. If nodes are added to this topology, the number of links increases exponentially. Mesh networks are regularly distributed networks that generally allow transmission only to a node's nearest neighbors. In the star topology, all nodes are connected to a single hub node. It is important to choose the right typology for a network. The type of topology used is important because it affects many network characteristics, such as robustness, energy consumption, and latency. The complexity of data routing and processing also depends on the topology. Moreover, it is also very important to choose a proper encryption system to protect any transmitted messages. Due to the limited computation resource of a wireless sensor node, public key algorithms (such as Diffie-Hellman key management [7] or the RSA mechanism [8]) are not feasible for solving security problems.