*Article* **A Distance Vector Hop-Based Secure and Robust Localization Algorithm for Wireless Sensor Networks**

**Rameez Asif 1,\*, Muhammad Farooq-i-Azam 2, Muhammad Hasanain Chaudary 3, Arif Husen 3,4 and Syed Raheel Hassan <sup>1</sup>**

	- Lahore 54000, Pakistan

**Abstract:** Location information of sensor nodes in a wireless sensor network is important. The sensor nodes are usually required to ascertain their positions so that the data collected by these nodes can be labeled with this information. On the other hand, certain attacks on wireless sensor networks lead to the incorrect estimation of sensor node positions. In such situations, when the location information is not correct, the data may be labeled with wrong location information that may subvert the desired operation of the wireless sensor network. In this work, we formulate and propose a distance vector hop-based algorithm to provide secure and robust localization in the presence of malicious sensor nodes that result in incorrect position estimation and jeopardize the wireless sensor network operation. The algorithm uses cryptography to ensure secure and robust operation in the presence of adversaries in the sensor network. As a result of the countermeasures, the attacks are neutralized and the sensor nodes are able to estimate their positions as desired. Our secure localization algorithm provides a defense against various types of security attacks, such as selective forwarding, wormhole, Sybil, tampering, and traffic replay, compared with other algorithms which provide security against only one or two types. Simulation experiments are performed to evaluate the performance of the proposed method, and the results indicate that our secure localization algorithm achieves the design objectives successfully. Performance of the proposed method is also compared with the performance of basic distance vector hop algorithm and two secure algorithms based on distance vector hop localization. The results reveal that our proposed secure localization algorithm outperforms the compared algorithms in the presence of multiple attacks by malicious nodes.

**Keywords:** secure localization; positioning; distance vector hop; DV-Hop; security attacks; wireless sensor network

### **1. Introduction**

Location information of sensor nodes in a wireless sensor network (WSN) is considered important due to several factors. For example, the data gathered by the sensor nodes must be labeled with the coordinates of the geographic location from where these are collected. Without location information, the data may not make much sense [1]. Examples of such applications where position information is significant include area surveillance [2], habitat monitoring [3], agricultural monitoring [4], and rescue operations [5]. Position information also enables the WSN to make route decisions in the case of certain routing protocols. Using such routing decisions, the data may be routed, for example, to the closest sink [6]. Transmission and communication costs are reduced in this way and the network is energy

**Citation:** Asif, R.; Farooq-i-Azam, M.; Chaudary, M.H.; Husen, A.; Hassan, S.R. A Distance Vector Hop-Based Secure and Robust Localization Algorithm for Wireless Sensor Networks. *Electronics* **2023**, *12*, 2237. https://doi.org/10.3390/ electronics12102237

Academic Editors: Hirokazu Kobayashi and Pingyi Fan

Received: 11 February 2023 Revised: 28 March 2023 Accepted: 10 May 2023 Published: 15 May 2023

**Copyright:** © 2023 by the authors. Licensee MDPI, Basel, Switzerland. This article is an open access article distributed under the terms and conditions of the Creative Commons Attribution (CC BY) license (https:// creativecommons.org/licenses/by/ 4.0/).

efficient. Location information also enables the sensor nodes to self organize and form an optimized WSN [7].

Due to aforementioned significance of location information, unknown sensor nodes, i.e., the sensor nodes which do not know their positions, employ a localization algorithm to estimate their position coordinates in the sensor network [8]. By using a localization algorithm, the unknown sensor nodes usually estimate their positions with the help of a few beacon nodes [9]. The beacon nodes, also called anchor nodes, reference nodes, or landmark nodes, know their position coordinates a priori either because these are deployed at known positions or are equipped with a location finding device, such as a global navigation satellite system (GNSS) receiver. A number of localization algorithms for WSNs have been proposed in the literature. A localization scheme for WSN proposed in [10] relies on Voronoi diagram-based grouping tests. This approach involves dividing the sensor nodes in a WSN into several groups and utilizing the closest corresponding Voronoi cells to determine location information. A localization method for WSN which does not need anchor nodes and instead uses cross technology for communication has been proposed in [11]. Instead of using anchor nodes, the method exploits the position information of wireless fidelity (Wi-Fi) access points (APs) for range estimation. Once an unknown node has ascertained its position, it helps other unknown nodes to estimate their positions. A localization algorithm based upon a selection strategy of appropriate beacon nodes has been proposed in [12]. The algorithm uses the signal strength information between the nodes for the selection strategy. With the help of signal strength information topology diagram of a set of nodes is formed. This diagram is then further exploited for position estimation. Localization in WSN is an active area of research and many other location estimation algorithms have also been proposed, such as [13–19].

The majority of these localization algorithms do not take security into consideration. Therefore, these algorithms are prone to various types of security attacks. As a result of these attacks, different types of problems may arise in the localization process. The positions estimated by some of the sensor nodes may have large errors. It is also possible that some nodes are not able to estimate their positions at all due to a security attack. To counter these problems, security measures and secure localization algorithms are being proposed. Two secure localization algorithm against different types of security attacks have been presented in [20]. The first algorithm, named improved randomized consistency position algorithm, exploits position information of beacon nodes and particle swarm optimization (PSO) for localization of unknown nodes. The second algorithm, referred to as the enhanced attack-resistant secure localization algorithm, utilizes a combination of methods, including a voting system, location optimization, and PSO, to estimate the positions of sensor nodes whose locations are unknown. The method proposed in [21] utilizes a blockchain based trust management model to combat malicious nodes in a sensor network. The trust evaluation is composite and involves behavior and data for this purpose. Different parameters, such as honesty, closeness, frequency of interaction, and intimacy, are used for the evaluation of behavior-based trust of the beacon nodes. Honesty is measured using the number of successful and unsuccessful interactions among sensor nodes. The number of sensor nodes covered by a beacon node in one hop neighborhood determines the closeness factor. The frequency of interaction is dependent upon total number of interactions between beacon nodes. Intimacy is quantified by the time of interaction. The beacon nodes with the least trust values are discarded to ensure localization reliability. A received signal strength-based localization algorithm for a WSN with malicious nodes has been proposed in [22]. The algorithm uses different localization techniques, i.e., weighted least square, secure weighted least square, and two norm-based techniques. The different techniques are meant to counter different types of security attacks.

Traditionally, cryptography is used to counter different types of security attacks in various categories of networks. However, conventional cryptography may not be used in resource constrained networks, such as WSN. Therefore, lightweight cryptography techniques have been proposed for such networks. A lightweight public key infrastructure (PKI) has been proposed in [23] for networks with limited resources, such as the Internet of things (IoT) and WSN. PKI is a security system that uses encryption to authenticate the identity of devices and secure the communication between them. However, the PKI was not designed for devices with constrained resources. Therefore, the conventional PKI system may also not be deployed in networks, such as WSN and IoT, where the devices have small energy resource in the form of a battery, limited memory and storage, and small processing power. The work in [23] has developed a lightweight public key infrastructure (PKI) for registration and distribution of digital certificates in networks with highly constrained devices. The proposed lightweight PKI can be used to secure IoT and WSN devices in a variety of industries, such as healthcare, industrial, transportation, and smart cities. An aggregate signature technique based on a linearly homomorphic signature for resource constrained electronic healthcare system has been proposed in [24]. By combining the advantages of aggregate signature and linearly homomorphic signature, this method offers benefits from both. Under the security model, an aggregate signature is considered valid only if each individual signature utilized to construct the aggregate signature is also valid. Lightweight security algorithms have been used in [25] for reliable data collection from healthcare WSN and to improve security efficiency. The scheme uses elliptic curve digital signature algorithm with BLAKE2bp for the security. Privacy of the patients is ensured by masking the sensor identifications with pseudonyms. Similar works, such as [26–30] have proposed lightweight cryptography techniques for WSN and IoT.

In our work, we propose a secure and robust localization algorithm for WSN. The proposed algorithm is based on distance vector hop (DV-Hop) localization [31,32], which is a popular technique for position estimation in WSN. The traditional DV-Hop method is prone to different types of security attacks. We employ cryptography techniques to provide a secure localization algorithm, which we call the Secure DV-Hop. Compared to other secure algorithms based on DV-Hop which provide protection only against a single type of attack, our proposed secure localization algorithm provides security against multiple types of attacks. The performance of the proposed algorithm is evaluated and compared with the benchmark traditional DV-Hop algorithm and two other secure algorithms based on DV-Hop using simulation experiments. Results show that our proposed algorithm provides a secure, robust, and consistent performance in the presence of malicious nodes.

The rest of this paper is organized as follows. We discuss previously published research related to our work in Section 2. In the next Section 3, we delineate the network model. The DV-Hop localization algorithm is described in Section 4. We present our secure localization algorithm in Section 5. Performance evaluation of the algorithm is reported in Section 6. We finally conclude with Section 7.

### **2. Related Work**

Previously, work has been performed to investigate different types of attacks in wireless sensor networks and their impact on localization and positioning accuracy. In this section, we describe and discuss the related work that has been completed to develop secure localization algorithms for wireless sensor networks.

The work in [33] proposed to secure the DV-Hop localization algorithm against wormhole attacks. The wormhole attack is usually carried out by more than one node in the network. One of the malicious nodes collects and forwards data from the compromised nodes through a tunnel to another malicious node located somewhere else in the network. The secondary malicious node then may transmit the data to the destination while masquerading the identity of the compromised nodes. In this way, the receiving node may be lead to believe that the sender is located at a different hop count other than the actual value. As a result, the localization process may be severely disrupted and the reported positions may have large errors.

Chen et al. analyzed the impact of the wormhole attack and thereby proposed a label-based secure DV-Hop scheme to mitigate this attack in [33]. The proposed method consists of three phases. In the first phase, the beacon nodes are labeled according to their geographic locations. Next, in the second phase, the sensor nodes are differentiated and labeled according to beacon node labeling results. By exploiting these labels, malicious wormhole communication links between the nodes can be prevented. In the final and third phase, the localization process may be completed by using the DV-Hop. This scheme, however, does not take packet loss into consideration. Moreover, it assumes that all nodes have the same transmission radii and does not consider the scenario where different nodes may have different transmission coverage.

Another secure localization algorithm, which is based on DV-Hop and provides defense against the wormhole attack was presented in [34]. This work considers the default wormhole attack with an out of band hidden channel and without data modification. All the nodes in the network are aware of their identification numbers except for the attack nodes. The proposed scheme comprises three stages, i.e., detection of the wormhole attack, resistance against the wormhole attack, and error sources analysis. At first, the proposed scheme establishes a neighbor node relationship list through a broadcast mechanism. The suspect nodes are then identified by comparing the actual number with the theoretical number of nodes. Further, to isolate the actually attacked beacon nodes, the suspect nodes estimate distances from other nodes in their neighbor node relationship list. After the victim nodes have been identified, the attacked nodes mark themselves as either type 1 or type 2 depending upon the attacker node and assuming that there are only two types of attacker nodes in the network. Next, the unknown nodes also mark themselves as either type 1 or type 2 according to their neighbor nodes relationship list. Finally, the nodes marked as type 1 disconnect from nodes marked as type 2 and vice versa to mitigate the wormhole attack. After the attack has been mitigated the localization can be performed. The main limitation of this proposed scheme is that the attack model considers only two attacker nodes. Information modification is also not considered in the attack model.

Prashar et al. proposed a secure localization algorithm for WSN using digital signatures in [35]. At first, the private and public key pair for each node are created. Next, digital signatures for the nodes are generated so that the nodes can authenticate each other. After this, secure localization is performed based upon a procedure derived from DV-Hop. In the DV-Hop localization algorithm, the essential steps for node localization are, hop count determination, average hop size calculation, distance estimation and position determination using trilateration. However, the method proposed in [35], uses a scheme called hyperbolic and mid-perpendicular with centroid to estimate the node positions. If the unknown node is an immediate neighbor of an anchor node, then the mid perpendicular with centroid method is used. Otherwise, hyperbolic scheme is leveraged for position determination.

Another secure localization algorithm for WSN was presented in [36]. The work proposes a malicious node detection algorithm and also presents its extended version. The proposed algorithm, which is range-based, has four stages. In the first stage, the location data of an unknown are obtained using trilateration. In the second stage, the location data are divided into normal and abnormal clusters using self-adaptive density-based spatial clustering of applications with noise. Next, in the third stage, the reference error interval is calculated for the difference between two separate distance measurements based on time of arrival and received signal strength of the reference node. In the final fourth stage, a sequential probability ratio test is performed to test the difference between two measured distances of the suspected malicious node. After all these four stages have been completed, the malicious nodes are detected and the information provided by these malicious nodes can be discarded and the locations of the unknown nodes can be estimated through multilateration.

A secure localization algorithm against the Sybil attack was proposed in [37]. In the Sybil attack, a malicious node may monitor, listen, capture, and modify the data in a network. As a result, the malicious node is able to forge and present multiple identities to the other nodes in the network. This is accomplished by either generating false identities or by simply stealing and spoofing identities of other legitimate nodes on the network. The nodes with forged identities are usually referred to as the Sybil nodes [38]. The

Sybil nodes communicate with other nodes in the network using the forged identities and propagate false information. As a result, the integrity of the data in the network is compromised and network functions based upon this false information are severely damaged. The work in [37] proposed a defense against the Sybil attack which is based upon number allocation and neighbor nodes guarantee. Each node in the network is allotted a number by guaranteed nodes. The number acts as the identity of the node and is verified by its guaranteed node. As a result, any malicious nodes which are not able to present a valid number can be identified and isolated thereby securing the network and the localization process.

Another work in [39] has proposed secure localization using DV-Hop against the Sybil attack. In this proposed method, the beacon nodes broadcast test information. The replies from the neighbor nodes are monitored and a neighbor list is established. If a node has a different neighbor list, then it is concluded that the node is under Sybil attack. If the node has the same neighbor list, then the hop difference between the nodes in the neighbor list is determined. If the hop difference is zero, then it is concluded that the node is under Sybil attack. All the nodes which are found to be under the attack are added to a black list. All the remaining nodes then estimate their positions using the DV-Hop localization algorithm. This proposed method provides protection against only Sybil attack and does not provide defense against other types of attacks on the confidentiality, integrity, and availability of information.

### **3. Network Model**

We consider a WSN deployed in a two-dimensional unconstrained sensor field. The sensor field has finite geographic boundaries. Two types of nodes are deployed in the WSN. The beacon nodes, also known as anchor, landmark or reference nodes, are fixed nodes which know their exact position coordinates. This is possible because these beacon nodes are equipped with navigation devices, such as a global positioning system (GPS), which is a type of global navigation satellite system (GNSS) or because the beacon nodes are deployed at known position coordinates. The other type of nodes in the sensor field are the sensor nodes which perform the sensing and collect the required data. These nodes are not aware of their location. Therefore, these nodes are usually termed as unknown nodes. Alternatively, some literature may refer to these nodes with less plausible names, such as dumb nodes or blind nodes. The unknown nodes estimate their positions with the help of the beacon nodes using a localization algorithm.

In our present work, the localization algorithm to be used by the unknown nodes is DV-Hop ad hoc positioning system. An assumption is made that all nodes in the network have the same radio range. However, the radio range of the unknown nodes is greater than their sensing range. This results in a higher sensing granularity of the WSN, allowing the transmission of sensed data over longer distances. Additionally, all nodes are outfitted with omnidirectional antennas, enabling them to communicate equally well in all directions. We represent a beacon node as *Bi* where *Bi* ∈ B = {*B*1, *B*2, *B*3, ···, *BL*}. So, *Bi* is a member of B, where the number of beacon nodes in the set is *L*. The position of a beacon node *Bi* is given by (*xBi*, *yBi*). Similarly, we represent an arbitrary unknown sensor node as *Ui*, where *Ui* ∈ U = {*U*1, *U*2, *U*3, ···, *UN*}. Therefore, there are *N* unknown sensor nodes in the set U which are deployed in the sensor field. The actual position of an unknown node *Ui* is represented using (*xUi*, *yUi*), whereas the estimated position is denoted by (*x*ˆ*Ui*, *y*ˆ*Ui*). Each node in the network is pre-installed with a secret key *K* for encryption and decryption using secret key cryptography. Each node also generates a public and private key pair using an asymmetric encryption algorithm. The network also operates a lightweight public key infrastructure (PKI) for secure management and distribution of the public keys. Secret key encryption is used to ensure confidentiality whereas public key encryption is employed for authentication of hash values only as the latter encryption technique is computationally expensive [40]. The cryptographic keys are stored using a secure storage mechanism [41–46], such as a hardware security module.

We consider that the sensor network is deployed in a hostile environment where malicious nodes are present. The malicious nodes can launch one or a combination of security attacks to disrupt the network operations and localization system. It is considered that the malicious nodes are able to use different types of attacks, including wormhole, tampering, Sybil, traffic replay, and selective forwarding attacks. In the wormhole attack, the malicious nodes create a tunnel between two points in the network. Packets are captured at one point and tunneled to the other point. In the tampering attack, a malicious node modifies the contents of the intercepted packets, such as changing of beacon node position coordinates in the beacon message. Consequently, the position estimated by the unknown nodes is not correct. In the Sybil attack, a malicious nodes uses forged identities to spread false information and disrupt localization system and network operations. A malicious node can intercept and capture packets in a network communication and then later replay the packets to impersonate the identity of one of the nodes involved in the original communication. This type of attack falls in the category of traffic replay attack. In the selective forwarding attack, a malicious node selectively forwards some of the packets while dropping the other packets.

### **4. Distance Vector Hop Localization**

In this section, we briefly describe and discuss the DV-Hop ad hoc positioning system [31,32] for wireless sensor networks.

The DV-Hop algorithm uses distributed processing. To estimate its location, each unknown node calculates its distance from three or more beacon nodes and then uses multilateration to calculate position coordinates. In a multi-hop sensor network, an unknown node may not have direct communication link with three beacon nodes. In other words, the unknown node may be more than one hop away from the beacon nodes. To address this problem, the DV-Hop localization algorithm leverages the connectivity information and the hop count to estimate the distance of an unknown node which may be at a multi-hop distance from the beacon node. Similar to the nature of operation of distance vector (DV) routing protocols, the DV-Hop localization algorithm uses flooding to propagate information in the multi-hop sensor network [47]. Beginning with the beacon nodes, each of the nodes propagates information only to its immediate first hop neighbors. Leaving out the next hop nodes saves bandwidth and power making the approach suitable for WSNs with limited resources. The signaling complexity of this scheme depends upon the number of beacon nodes in the sensor field and average degree of each node, i.e., the number of single hop neighbors of a node.

All the unknown and the beacon nodes in the WSN maintain a table with an entry corresponding to each of the beacon nodes from which it receives messages. The entry is of the form {*xBi*, *yBi*, *hi*}, where (*xBi*, *yBi*) are the position coordinates of the beacon node *Bi* and *hi* is the hop count of the node maintaining the table from the beacon node *Bi*. To obtain the hop count, the hop count field in the beacon message is incremented as the message is transmitted from the beacon node to its nearest neighbor nodes and so on. The beacon nodes in the WSN also maintain this table. After a beacon node *Bi* has obtained position information and hop count of all other beacon nodes *Bj* from which it receives messages, it proceeds to ascertain the average size of a hop [31] as follows,

$$c\_i = \frac{\sum \sqrt{(x\_{Bi} - x\_{Bj})^2 + (y\_{Bi} - y\_{Bj})^2}}{\sum h\_j},\tag{1}$$

for all beacon nodes *Bj* and *Bj* = *Bi*. The numerator of Equation (1) is the sum of the distances between a beacon node *Bi* and other beacon nodes *Bj*. The denominator is the sum of hop counts between the beacon node *Bi* and other beacon nodes *Bj*. Therefore, Equation (1) gives average size of a hop as the sum of distances divided by the sum of hop counts. The DV-Hop algorithm terms this average size of the hop *ci*, calculated by the beacon node *Bi*, as the correction factor. Using controlled flooding, this correction factor is

propagated through the network as described earlier. After receiving the correction factor and with the knowledge of position coordinates of at least three beacon nodes, an unknown node performs multilateration to estimate its own position information. The steps involved in the position estimation using the DV-Hop ad hoc positioning system are summarized as follows:


It should be noted that the correction factor calculated by one beacon node may differ from the correction factor computed by another beacon node. Moreover, each unknown node will receive different correction factors from different beacon nodes. The DV-Hop ad hoc positioning system [31,32] suggests that, for position estimation, an unknown node should store and utilize the initial correction factor it receives and disregard any other correction factors received subsequently.

### **5. Secure Localization**

In this section, we describe our secure localization algorithm based on DV-Hop using cryptography. In the ensuing description of our proposed secure localization algorithm, concatenation of two items, *a* and *b*, is denoted by *a*||*b*. We denote the encryption operation of a message *M* using key *K* to obtain ciphertext *C* by *C* = *E*(*K*, *M*). The decryption operation of the ciphertext *C* using the key *K* to obtain the message *M* is denoted by *M* = *D*(*K*, *C*). When *A* sends a message *M* to *B*, we represent this as follows.

$$A \xrightarrow{M} \begin{array}{c} \begin{array}{c} M \\ \hline \end{array} \end{array} \tag{2}$$

At the time of first deployment, an unknown node *Ui* sends a registration request to the nearest beacon node *Bi* from which it receives messages. The registration message *MUi* is prepared as follows,

$$M\_{\rm Lli} \gets ID\_{\rm Lli} ||REG||N\_{\rm Lli}||S\_{\rm Lli}||T\_{\rm Lli} \tag{3}$$

where *IDUi* is the unique public identification of the unknown node *Ui*, REG represents registration request, *NUi* is a cryptographic nonce, *SUi* is the sequence number, and *TUi* is the time stamp by the unknown node *Ui*. The unknown node *Ui* computes one way cryptographic hash of the message *MUi* using an agreed upon hash function *h*. The computed hash of the message *MUi* is encrypted using the private key *PRUi* of the unknown node *Ui* to obtain *CUih* = *E*(*PRUi*, *h*(*MUi*)). The message *MUi* and the hash value are then encrypted using the secret key *K* as *CUi* = *E*(*K*, *MUi*||*E*(*PRUi*, *h*(*MUi*))) and transmitted to the beacon node *Bi* as follows,

$$\begin{array}{c} \bot I\_i \begin{array}{c} \hline \end{array} \begin{array}{c} E(K\_\prime M\_{\mathit{Lii}}) | E(PR\_{\mathit{Lii}}h(M\_{\mathit{Lii}})) \end{array} \longrightarrow B\_{\bar{i}}.\end{array} \tag{4}$$

The localization algorithm identifies a sensor node with the help of the application layer identifier *IDUi*. Legitimate nodes are able to decrypt the encrypted application layer messages and, hence, are able to retrieve the application layer identifier *IDUi*. The cryptographic nonce *NUi* serves the purpose of authentication as a legitimate receiver should be able to retrieve it from the encrypted message and send it back. The time stamp *TUi* serves as a defense against the traffic replay and other man in the middle attacks. Sequence numbers prevent disruption of traffic by an attacker by reordering the packets. The sequence numbers are unpredictable and are generated according to Algorithm 1. The length of the message is added to the sequence number to ensure that each message has a unique sequence number and that any messages received out of order can be identified. When a receiver receives a message with a sequence number that is not an expected number, it knows that some data have been lost or delivered out of order. This also helps thwart selective forwarding attack.


Upon receiving the encrypted message, the beacon node *Bi* decrypts it as *D*(*K*, *CUi*). The beacon node *Bi* is able to determine the length of the message after this decryption process. The encrypted hash value is further retrieved using the public key *PUUi* of the unknown node *Ui* as *D*(*PUUi*, *CUih*). If the beacon node *Bi* is able to successfully decrypt the encrypted hash using the public key *PUUi*, it is confirmed that the message was indeed sent by the sensor node *Ui* as no other node could have encrypted the hash using the private key *PRUi* of the sensor node *Ui*. The beacon node *Bi* also computes the hash value of the message using the hash function *h*. If the computed and the retrieved hash values do not match, the message is discarded. However, if the two values match, then the beacon node *Bi* prepares the following message *MBi* for the unknown node *Ui*.

$$M\_{Bi} \leftarrow ID\_{Bi} || N\_{Li} || N\_{Bi} || S\_{Bi} || T\_{Bi\prime} \tag{5}$$

where *IDBi* is the unique identification of the beacon node *Bi*, *NUi* is the cryptographic nonce which was sent by the unknown node *Ui*, *NBi* is the cryptographic nonce prepared by the beacon node *Bi*, *SBi* is the sequence number generated according to Algorithm 1, and *TBi* is the time stamp by the beacon node *Bi*. The hash of this message is encrypted using the private key *PRBi* of the beacon node *Bi* and concatenated with the message *MBi*. This is then encrypted using the secret key *K* to produce ciphertext *CBi* = *E*(*K*, *MBi*||*E*(*PRBi*, *h*(*MBi*))), which is transmitted to the unknown node *Ui*.

$$B\_{\bar{i}} \xrightarrow{\quad} \frac{E(K\_{\prime}M\_{Bi}||E(PR\_{Bi}h(M\_{Bi})))}{} \to \downarrow \mathcal{U}\_{\bar{i}} \tag{6}$$

The unknown node *Ui* decrypts this message as *D*(*K*, *CBi*). If it is unable to retrieve the cryptographic nonce *NUi*, the message is discarded and is not processed further. However, if the nonce is retrieved successfully, it generates a code word *WUi* and sends it to the beacon node *Bi* using the following message.

$$M\_{UI} \gets ID\_{UI} || N\_{Bi} || W\_{UI} || S\_{UI} || T\_{UI}.\tag{7}$$

Similar to the previous messages, ciphertext *CUi* = *E*(*K*, *MUi*||*E*(*PRUi*, *h*(*MUi*))) is prepared and sent to the beacon node *Bi* as follows,

$$\text{L}I\_i \begin{array}{c} - \frac{E\left(K\_r M\_{Lli} || \left| E\left(PR\_{Lli} h(M\_{Lli})\right) \right|\right)}{} \longrightarrow B\_i. \end{array} \tag{8}$$

The beacon node *Bi* decrypts the received message as *D*(*K*, *CUi*). If it cannot find the nonce *NBi* in the message, it discards the message and does not process it further. However, if the nonce *NBi* is retrieved successfully, it proceeds to process the received code word *WUi*. The beacon node *Bi* adds a salt to the code word *WUi*, computes the hash of the salted code word. The hash is stored along with the salt and the *IDUi* of the unknown node *Ui*. This process is performed as depicted in Algorithm 2. The registration procedure of an unknown node with a beacon node is illustrated in Figure 1.

**Figure 1.** Registration procedure of an unknown node with a beacon node.

### **Algorithm 2** Code Word Storage.


Subsequently, if the unknown node *Ui* wants to communicate with another unknown node *Uj*, the latter asks *Ui* to provide its surety. The unknown node *Uj* prepares the following message for this purpose.

$$M\_{\rm UIj} \leftarrow I D\_{\rm UI} || S \underline{I} \\ RETY || N\_{\rm UIj} || S\_{\rm UIj} || T\_{\rm UIj} \tag{9}$$

Next, this message and its hash are encrypted as *CUj* = *E*(*K*, *MUj*||*E*(*PRUj*, *h*(*MUj*))) and sent to the node *Ui*, as follows,

$$\mathcal{U}I\_j \xrightarrow{-E(\mathcal{K}\_\prime M\_{\mathcal{U}j} || E(\mathcal{PR}\_{\mathcal{U}j} h(M\_{\mathcal{U}j})))} \to \mathcal{U}\_i. \tag{10}$$

After decrypting this message and confirming its validity with the help of the hash, the unknown node responds with the following message.

$$\mathbb{C}\_{WLIi} \leftarrow E(PL\_{Bi}, \mathcal{W}\_{Lli} || E(PR\_{Lli}, h(\mathcal{W}\_{Uli}))) \tag{11}$$

$$M\_{Lli} \gets ID\_{Lli} || N\_{Uj} || N\_{Ui} || ID\_{Bi} || C\_{WLIi} || S\_{Lli} || T\_{Uli} \tag{12}$$

$$\mathcal{U}I\_i \xrightarrow{\mathbb{E}\left(K\_rM\_{Li}||E(PR\_{Li}Jh(M\_{Li}))\right)} \mathcal{U}I\_j. \tag{13}$$

The unknown node *Uj* decrypts and verifies this message using the hash function. It also retrieves the encrypted code word *CWUi* and sends it to the beacon node *Bi* for verification.

$$M\_{UIj} \leftarrow ID\_{UIj} || N\_{UIj} || C\_{WUIi} || S\_{UIj} || T\_{UIj} \tag{14}$$

The encrypted text *CUj* = *E*(*K*, *MUj*||*E*(*PRUj*, *h*(*MUj*))) is prepared and sent to the beacon node *Bi* as follows.

$$\text{CLI}\_{j} \xrightarrow{-E(K, M\_{\text{LI}\_{j}} || E(PR\_{\text{LI}\_{j}}, h(M\_{\text{LI}\_{j}})))} \text{B}\_{i}. \tag{15}$$

The beacon node *Bi* decrypts and checks the validity of the message as described previously. It then decrypts *CWUi* and retrieves the code word of the unknown node *Ui*. It confirms its validity by computing its hash using the stored salt and then comparing with the stored value of the hash. It then communicates the result back to the unknown node *Uj*.

$$M\_{Bi} \gets ID\_{Bi} || |N\_{Uj} || N\_{Bi} || RESULT || S\_{Bi} || T\_{Bi} \tag{16}$$

$$B\_{\dot{i}} \begin{array}{c} - \frac{E\left(K\_{\prime}M\_{Bi}||E(PR\_{Bi}\lambda(M\_{Bi}))\right)}{} \longrightarrow \mathcal{U}\_{\dot{j}}.\end{array} \tag{17}$$

where the variable *RESULT* contains *OK* if the code word is verified or *NOK* otherwise. The node *Uj* proceeds with its data exchange with the node *Ui* in the former case and drops the communication in the latter instance. The procedure to store the code word and to establish trust between two nodes takes place only once. The authentication process of two unknown nodes with the help of a beacon node is illustrated in Figure 2.

**Figure 2.** Authentication process between two unknown nodes.

The beacon nodes broadcast their positions using beacon messages at regular intervals. The message may contain the identification of the beacon node and a time stamp. For example, a typical beacon message *MBi* of a beacon node *Bi* is as follows.

$$M\_{Bi} \leftarrow ID\_{Bi} || \left| \left( \propto\_{Bi \prime} y\_{Bi} \right) \right| \left| hc\_{Bi} \right| ||T\_{Bi \prime}\$ \tag{18}$$

where *IDBi* is the unique identification of the beacon node *Bi*, (*xBi*, *yBi*) is its position information, *hcBi* is a variable to store the hop count and is initialized to zero, and *TBi* is the time stamp by the beacon node *Bi*. The beacon node *Bi* computes one way cryptographic hash of the message using a hash function *h*. The computed cryptographic hash of the message *MBi* is encrypted using the private key *PRBi* of the beacon node *Bi* to obtain *CBih* = *E*(*PRBi*, *h*(*MBi*)). The message *MBi* and its encrypted hash are then broadcast. The broadcast message is *MBi*||*E*(*PRBi*, *h*(*MBi*)), and is depicted as below.

$$B\_i \xrightarrow{-M\_{Bi} \mid \mid E(PR\_{Bi}J\mathfrak{h}(M\_{Bi}))} \text{All} \tag{19}$$

When an unknown node *Ui* receives this message, it decrypts the encrypted hash using the public key *PUBi* of the beacon node *Bi* using *D*(*PUBi*, *CBih*). It also computes the one way cryptographic hash of the received message *MBi* using the same hash function which was used by the beacon node *Bi*. If *h*(*MBi*) = *D*(*PUBi*, *CBih*), that is, the hash computed by the unknown node *Ui* does not match the received hash value, then the unknown node *Ui* discards the message. However, if the computed hash and the received hash values match each other, i.e., *h*(*MBi*) = *D*(*PUBi*, *CBih*), then the message is considered legitimate. The unknown node *Ui* stores the position (*xBi*, *yBi*) of the beacon node *Bi*. Moreover, the unknown node *Ui* increments the hop count variable *hcBi*, and constructs a message *MUi* for the next hop neighbor as follows.

$$M\_{Lli} \gets ID\_{Lli} || M\_{Bi} || hc\_{Bi} || T\_{Lli} \tag{20}$$

where *IDUi* is the unique identification of the unknown node *Ui*, *hcBi* is the hop count variable with incremented value, and *TUi* is the time stamp by the unknown node *Ui*. The unknown node *Ui* also computes one way cryptographic hash of the message using the hash function h. The cryptographic hash value of the message *MUi* is then encrypted using the private key *PRUi* of the unknown node *Ui* to obtain *CUih* = *E*(*PRUi*, *h*(*MUi*)). The message *MUi* containing the new hop count and the encrypted hash value are then sent to the next hop neighbor *Uj* as follows.

$$\mathcal{U}I\_i \xrightarrow{-M\_{IL} \parallel E(PR\_{ILi}h(M\_{ILi}))} \mathcal{U}\_j \tag{21}$$

Upon receiving this message, the node *Uj* performs a procedure similar to the procedure performed by the node *Ui* when it received the beacon message. It decrypts the encrypted hash as *D*(*PUUi*, *CUih*) and also computes the hash value *h*(*MUi*). The message is processed if the two hash values match and is discarded otherwise. The message is propagated further until it reaches another beacon node.

After a beacon node *Bi* has obtained position coordinates of other beacon nodes and the hop count to them, it computes the average hop size or the correction factor *cBi* using Equation (1), as stated earlier. The beacon node *Bi*, then prepares a message *MBi* to propagate this correction factor as follows.

$$M\_{Bi} \leftarrow ID\_{Bi} || (\mathbf{x}\_{Bi}, \mathbf{y}\_{Bi}) || \mathbf{c}\_{Bi} || T\_{Bi} \tag{22}$$

This message and its cryptographic hash encrypted using the private key of the beacon node *Bi* are concatenated as *MBi*||*E*(*PRBi*, *h*(*MBi*)). This is then propagated through the next hop neighbors *Ui* as follows.

$$B\_{\dot{i}} \begin{array}{c} \begin{array}{c} M\_{Bi} \end{array} \Big| \begin{array}{c} E(PR\_{Bi}, h(M\_{Bi})) \end{array} \longrightarrow \begin{array}{c} \begin{array}{c} \begin{array}{c} \begin{array}{c} I \ \text{ } \end{array} \end{array} \end{array} \end{array} \tag{23}$$

When an unknown node *Ui* receives the correction factor *cBi*, it then computes the distance to the beacon node *Bi* from which it received the correction factor. The distance is calculated by multiplying the hop count *hcBi* to the correction factor *cBi*, i.e., *hcBi* × *cBi*. After an unknown node *Ui* has received the position coordinates of at least three beacon nodes and estimated distance to them, the unknown node performs multilateration to estimate its position as already described in Section 4. Propagation of beacon messages and correction factor is illustrated in Figure 3.

**Figure 3.** Propagation of beacon messages and correction factor.

### **6. Simulation Results**

We evaluate the performance of our proposed Secure DV-Hop localization algorithm using simulation experiments. A sensor field with dimensions of 100 m × 100 m is considered for the experiments. The number of sensor nodes is 100. The number of beacon nodes and the number of malicious nodes are varied for the performance evaluation. Moreover, the performance is also evaluated both in the absence and presence of the malicious nodes. The malicious nodes use different types of security attacks which include wormhole, Sybil, tampering, traffic replay, and selective forwarding attacks. In addition, performance of the proposed Secure DV-Hop algorithm is compared with those of basic DV-Hop [31], label-based DV-Hop (LBDV-Hop) [33] and Security Positioning DV-Hop (SPDV-Hop) [39] localization algorithms.

Localization error of a single node is the distance between the actual position and the estimated position. Therefore, if the actual position of a sensor node *Ui* is (*xUi*, *yUi*) and the estimated position is (*x*ˆ*Ui*, *y*ˆ*Ui*), then the localization error, *eL*, of an unknown node *Ui* is given by,

$$\varkappa\_L = \sqrt{(\pounds\_{lli} - \chi\_{IIi})^2 - (\mathcal{Y}\_{lli} - y\_{IIi})^2}. \tag{24}$$

The average normalized localization error, *eLN*, of the sensor network is given by,

$$x\_{LN} = \frac{\sum\_{i=1}^{N} \sqrt{(\mathfrak{X}\_{lli} - \mathfrak{x}\_{III})^2 - (\mathfrak{Y}\_{III} - \mathfrak{y}\_{III})^2}}{\text{NR}},\tag{25}$$

where *N* is the total number of unknown nodes and *R* is the radio range of a sensor node.

The localization efficiency *η<sup>L</sup>* is the ratio of the number of unknown sensor nodes which are able to estimate their positions to the total number of unknown sensor nodes [48]. The unknown sensor nodes which are able to ascertain their positions may be termed as settled nodes. If the total number of settled nodes is represented by *Ns*, then the localization efficiency, *ηL*, is given by

$$
\eta\_L = \frac{N\_s}{N} \times 100.\tag{26}
$$

In Figure 4, we plot the average normalized localization error for the basic DV-Hop, SPDV-Hop, LBDV-Hop, and the Secure DV-Hop localization algorithms as the number of

beacon nodes is varied in the sensor field in the absence of any attack. The localization efficiency of these algorithms against the varying number of beacon nodes in the absence of any attack is plotted in Figure 5. From both Figures 4 and 5, it can be observed that all the compared localization algorithms perform as good as the basic DV-Hop methods in the absence of any attack. Therefore, these algorithms work in the same fashion under normal circumstances. This also validates the localization performance of the proposed algorithm.

However, all these algorithms perform differently when malicious nodes are introduced in the sensor network. This can be observed from Figure 6 where average normalized localization error of each of the proposed Secure DV-Hop and three compared algorithms is plotted for varying number of malicious nodes and 20% beacon nodes. It is evident that, when the malicious nodes are present, the basic DV-Hop, SPDV-Hop, and LBDV-Hop localization algorithms do not perform the way as they do in the absence of any attack. The average normalized localization error for each of these algorithms increases significantly as the count of the malicious nodes is increased while keeping the number of beacon nodes fixed at 20%. However, our proposed Secure DV-Hop localization algorithm remains unaffected and shows consistent results in the presence of any number of malicious nodes.

**Figure 4.** Average normalized localization error as the number of beacon nodes is varied in the absence of an attack.

**Figure 5.** Localization efficiency as the number of beacon nodes is varied in the absence of an attack.

**Figure 6.** Average normalized localization error as the number of malicious nodes is varied with fixed 20% beacon nodes in the sensor network.

We plot average normalized localization error with a varying number of beacon nodes and a fixed 10% number of malicious nodes in Figure 7. It can be observed that the localization error decreases for all the compared localization algorithms as the number of beacon nodes is increased in the sensor field. However, in the case of DV-Hop, SPDV-Hop, and LBDV-Hop, when we compare their performance in Figure 4 in the absence of attack to their performance in Figure 7 when attacked by 10% hostile nodes, a degradation in the performance is clearly observed. For example, from Figure 4, in the absence of attack, the localization error resulting from DV-Hop with 20% beacon nodes is almost 0.5. However, in the case of Figure 7, the localization error with 20% beacon nodes in the presence of 10% malicious nodes is almost 1. This is twice as high as the error in Figure 4 for the same number of beacon nodes. Similar observation can be made for SPDV-Hop and LBDV-Hop as well. On the other hand, the Secure DV-Hop algorithm remains robust and its localization results remain unaffected by the malicious nodes. If we compare the performance of our proposed Secure DV-Hop localization algorithm in Figures 4 and 7, we see that it provides similar performance in the presence or absence of the malicious nodes.

**Figure 7.** Average normalized localization error with varying number of beacon nodes when the number of malicious nodes is fixed at 10%.

Localization efficiency of each of the compared algorithms is plotted in Figure 8 against a varying number of malicious nodes when the number of beacon nodes is 20%. The localization efficiencies of the DV-Hop, SPDV-Hop, and LBDV-Hop algorithms decrease

as the number of malicious nodes in the sensor field increases. This implies that lesser and lesser number of unknown sensor nodes are able to estimate their positions as the number of malicious nodes increases. On the other hand, the Secure DV-Hop localization algorithm is not affected and its localization efficiency does not change with the varying number of malicious nodes in the sensor field.

**Figure 8.** Localization efficiency when the number of malicious nodes is varied and the number of beacon nodes is fixed at 20%.

In Figure 9, we plot localization efficiencies of DV-Hop, SPDV-Hop, LBDV-Hop, and Secure DV-Hop algorithms against a varying number of beacon nodes in the presence of 10% malicious nodes. Results in Figure 9 corroborate previous findings. Although localization efficiencies of DV-Hop, SPDV-Hop, and LBDV-Hop increase with an increase in the number of beacon nodes in the sensor field, these do not attain the same values as they do in the absence of malicious nodes. However, Secure DV-Hop localization algorithm once again shows consistent and robust performance even in the presence of adverse conditions. From Figures 5 and 9, it can be readily observed that the localization efficiency of the Secure DV-Hop algorithm remains unaffected in the presence or absence of the malicious nodes.

**Figure 9.** Localization efficiency with varying number of beacon nodes when the number of malicious nodes is fixed at 10%.

This robust performance of Secure DV-Hop localization algorithm can be attributed to effective authentication and communication implemented through encryption. SPDV-Hop provides protection against Sybil attack only and LBDV-Hop is designed for security

against wormhole attack alone. However, both these algorithms do not provide effective protection against other types of attacks, such as tampering, selective forwarding, and traffic replay. On the other hand, robust authentication and communication implemented by the Secure DV-Hop localization algorithm protect against all these types of attacks. Hence, it remains unaffected by these security attacks.

### **7. Conclusions**

In this work, we have proposed distance vector hop-based secure and robust localization algorithm for wireless sensor networks. The algorithm uses secret and public key cryptography to secure the localization process against different types of security attacks. These attacks include wormhole, Sybil, selective forwarding, traffic replay and tampering attacks. A number of simulation experiments were performed to evaluate the performance of the proposed algorithm both in the presence and the absence of malicious nodes using these attacks. The results were compared with the basic distance vector hop method and two secure algorithms based on distance vector hop localization. The average normalized localization error and the localization efficiency were measured in the presence, as well as in the absence of malicious nodes. The results revealed that the performance of the compared algorithms was severely affected in the presence of malicious nodes. However, the proposed secure localization algorithm provided secure and robust performance in either scenario. As a result of the countermeasures, the algorithm provided similar performance in the presence of adversaries as it did in the absence of any attacks. The secure localization algorithm can be implemented in a wireless sensor network which is deployed in a hostile environment and where unknown sensor nodes have to estimate their position coordinates. Future work includes improvement of localization performance of the algorithm and its implementation and practical evaluation in a real wireless sensor network.

**Author Contributions:** Conceptualization, M.F.-i.-A., M.H.C. and A.H.; methodology, M.F.-i.-A.; software, R.A.; validation, M.H.C. and A.H.; formal analysis, M.F.-i.-A.; investigation, M.F.-i.-A. and S.R.H.; resources, R.A.; data curation, M.H.C. and A.H.; writing—original draft preparation, M.F.-i.-A., M.H.C. and A.H.; writing—review and editing, M.F.-i.-A., R.A. and S.R.H.; visualization, M.H.C. and A.H.; supervision, M.F.-i.-A.; project administration, M.F.-i.-A., R.A. and S.R.H. All authors have read and agreed to the published version of the manuscript.

**Funding:** The authors acknowledge the internal research start-up fund, reference: 1012606FA1, from University of East Anglia (UEA), Norwich, UK.

**Data Availability Statement:** Data sharing not applicable.

**Conflicts of Interest:** The authors declare no conflict of interest.

### **References**


**Disclaimer/Publisher's Note:** The statements, opinions and data contained in all publications are solely those of the individual author(s) and contributor(s) and not of MDPI and/or the editor(s). MDPI and/or the editor(s) disclaim responsibility for any injury to people or property resulting from any ideas, methods, instructions or products referred to in the content.

### *Article* **Covert Channel Based on Quasi-Orthogonal Coding**

**Krystian Grzesiak \*, Zbigniew Piotrowski and Jan M. Kelner**

Institute of Communications Systems, Faculty of Electronics, Military University of Technology, 00-908 Warsaw, Poland; zbigniew.piotrowski@wat.edu.pl (Z.P.); jan.kelner@wat.edu.pl (J.M.K.) **\*** Correspondence: krystian.grzesiak@wat.edu.pl; Tel.: +48-261-885-509

**Abstract:** The paper presents a method of creating a hidden channel using a signals' superposition. According to this idea, a transmitter simultaneously sends overt and covert (secret) signals, whereby the overt signal is a carrier for the covert one. Due to the need to ensure a low probability of detection for covert communication, the covert signal should have low power. This implies a number of problems relating to its correct reception. This is similar to non-orthogonal multiple access (NOMA) systems, where the collective signal is a superposition of signals with different powers dedicated to different users. In this case, the successive interference cancellation (SIC) process is used in the receiver for the separation of the component signals. SIC requires accurate channel estimation. Even a small channel estimation error causes a significant increase in bit error rate (BER), performance degradation, or connection loss for covert transmission. This is due to the residual signal, i.e., the remnant of the cover signal after an imperfect SIC operation. The paper proposes a method of transforming (i.e., encoding) the applied hidden signal in such a way that the residual signal in the receiver is quasi-orthogonal to the hidden signal. The proposed model is based on appropriate sorting and, compared to methods with fixed constellation points, provides the covert channel with a low BER while maintaining high protection against detection as measured by the Kolmogorov–Smirnov distance. The proposed solution was tested using the USRP-2920 software-defined radio platform.

**Keywords:** security; steganalysis; covert channel; steganography; undetectability

### **1. Introduction**

Wireless transmission, in its physical layer, is susceptible to all kinds of manipulation, which can be used to create covert channels [1]. It is currently assumed that any method of communication used to illegally transmit information, which violates the system security policy, is a covert channel. Steganography of the physical layer of a radio signal essentially boils down to subtle changes of the parameters of the modulated cover signal. Such parameters can be the carrier frequency and, in the case of an orthogonal frequency-division multiplexing (OFDM) signal, the training sequence of the cover signal [2]. The vast majority of physical layer steganography methods consist of manipulating the position of the constellation points of the in-phase (I) and quadrature (Q) components of the cover signal. Small changes in position correspond to transmitted classified (covert) information, and an uninformed receiver (with no knowledge or ability to ascertain additional transmission) treats them as (channel or hardware) noise.

Examples of such solutions are presented in the literature:


**Citation:** Grzesiak, K.; Piotrowski, Z.; Kelner, J.M. Covert Channel Based on Quasi-Orthogonal Coding. *Electronics* **2023**, *12*, 2249. https://doi.org/ 10.3390/electronics12102249

Academic Editor: Athanasios D. Panagopoulos

Received: 30 March 2023 Revised: 5 May 2023 Accepted: 11 May 2023 Published: 15 May 2023

**Copyright:** © 2023 by the authors. Licensee MDPI, Basel, Switzerland. This article is an open access article distributed under the terms and conditions of the Creative Commons Attribution (CC BY) license (https:// creativecommons.org/licenses/by/ 4.0/).


The aforementioned literature on the covert channel ignores the issue of channel estimation error [11] and, directly related to this, non-perfect (non-ideal) successive interference cancellation (SIC) [12–15]. The assumption of being able to easily separate the cover signal from the very low-power covert signal is fundamentally difficult to implement. Hence, in this paper, the authors propose an original and novel approach, which is to transmit the covert signal in such a way that it is quasi-orthogonal to the cover signal at the receiver. This is accomplished by sorting, that is, by appropriately ranking the IQ samples of the covert signal against the cover signal over time. In the receiver this results in mutual orthogonalization, thus, easier frequency separation of the signals. The method used can be used for both amplitude–phase and frequency modulations. In the paper, however, FSK modulation is indicated as the optimal solution in terms of transmission capabilities (calculated by transmission speed) as well as protection against steganalysis. The proposed approach and the considerations presented here are a continuation of the work presented in [16].

The work is organized as follows. In Chapter 2, the basics of creating a covert channel in a radio channel are presented. Chapter three describes how the proposed transceiver with sorting circuit works. The results of the computer simulations are included in Chapter 4. The rationale for using FSK modulation to create a covert channel is placed in Chapter 5. Chapter 6 contains the results of the tests conducted based on the universal software radio peripheral (USRP). A summary is included at the end.

### **2. Radio Physical Layer Steganography**

### *2.1. Creating a Covert Channel*

In mathematical terms, the process of creating a covert channel in the physical layer of a radio channel can be described as a superposition of a cover signal (cover) and a covert signal, which can be represented by the formula:

$$s(t) = \sqrt{P\_1}x\_1(t) + \sqrt{P\_2}x\_2(t) \tag{1}$$

where *x*<sup>1</sup> and *x*<sup>2</sup> are the cover signal and the covert signal, respectively, *P* (*P* = *P*<sup>1</sup> + *P*2) is the transmitter power.

In order to reduce the probability of detecting a covert channel, the following conditions should be met:

(a) the covert signal power should be significantly less than the cover signal (*P*<sup>1</sup> *P*2).

(b) constellation points of the covert signal should have a pseudo-random (noise) characteristic.

The receiver input signal is represented by the following simplified formula:

$$y(t) = h \sum\_{i=1}^{2} \sqrt{P\_i} \mathbf{x}\_i(t) + w(t) \tag{2}$$

where *h* ( *h* ∼ *CN*(0, 1)) is a channel gain and *w* is a Gaussian noise.

In an ideal case, when *w*(*t*) = 0 and the value of the parameter *h* is known in the receiver, the recovery process of the signal *x*2(*t*) would proceed as follows (ideal SIC):

$$\alpha\_2(t) = \frac{y(t) - \sqrt{P\_1}x\_1(t)}{\sqrt{P\_2}} + w(t) \tag{3}$$

Transmission and reception of the cover and covert signal was presented in Figure 1.

**Figure 1.** Transmission and reception of a covert signal as a superposition of cover and covert signals.

### *2.2. Channel Estimation Error*

In a real-world situation, the receiver does not have full information about the wireless channel (2), but only estimates the parameter *<sup>h</sup>* with a certain error value *<sup>ε</sup>* (*<sup>ε</sup>* <sup>∼</sup> *CN*\$ 0, *σ*<sup>2</sup> *ε* % ):

ˆ

$$
\hat{h} = h + \mathfrak{e},
\tag{4}
$$

where ˆ *h* is a channel gain estimation.

Taking into account the channel estimation error (4), the recovered covert signal *x*ˆ2(*t*) is distorted by the residual cover signal according to the following formula (non-ideal SIC):

$$
\hat{x}\mathbf{\hat{x}}(t) = h\sqrt{P\_2}\mathbf{x}(t) + \varepsilon\sqrt{P\_1}\mathbf{\hat{x}}\_1(t) + w(t) \tag{5}
$$

The error introduced by the SIC propagates and affects the demodulation of the covert signal, i.e., the interference that arose during the recovery of the cover signal (stronger signal) propagates during the recovery of the covert signal (weaker signal) [17–19]. Errors arising during SIC mostly depend on the channel coefficients and the power allocation coefficient [20].

According to Formula (5), the channel estimation error variance value *σ*<sup>2</sup> *<sup>ε</sup>* has a fundamental effect in the recovery of the covert signal. In this paper, we consider a situation where *σ*2 *<sup>ε</sup>* = 0 as a non-ideal SIC. In such a case, the best way to distinguish signals *x*1(*t*) from *x*2(*t*) is to ensure their mutual orthogonality or (if this is not possible) quasi-orthogonality.

### *2.3. Quasi-Orthogonality*

We speak of orthogonality when the inner product of the *x*1(*t*) and *x*2(*t*) signals is zero, according to the formula:

$$\int\_{-\infty}^{\infty} \varkappa\_1(t) \cdot \varkappa\_2^\*(t) dt = 0\tag{6}$$

The correlation of two time-limited signals defined over the time interval 0 < *t* < *τ* is defined as:

$$r(t) = \int\_{-\infty}^{\infty} x\_1(\rho) \cdot x\_2^\*(\rho - t) d\rho,\tag{7}$$

where *ρ* is a dummy variable.

For two orthogonal signals for each *t* shift, a zero correlation is obtained if these signals are disjoint in frequency domain. Hence, separated band-limited signals in frequency are the main method of obtaining orthogonal signals. For signals that occupy the same frequency band, there is no possibility of zero cross-correlation for any *t* time shift.

Quasi-orthogonality [21] refers to signals (waveforms) that exhibit low cross-correlation. Two waveforms are quasi-orthogonal if:

$$\left| \int\_{-\infty}^{\infty} \mathbf{x}\_1(\rho) \cdot \mathbf{x}\_2^\*(\rho - t) d\rho \right| < \varepsilon \tag{8}$$

where *ε* 1 for any *t*, and *x*<sup>1</sup> and *x*<sup>2</sup> are normalized to a unit energy value.

### **3. Proposed Model**

*3.1. Basic Assumptions*

In the presented model, a single covert symbol is superimposed on several cover signal symbols. Such a solution stems from the need to reduce the distortion/interference of the cover signal (in order to preserve the energy per bit, variance of the covert signal is reduced), and thus the detection by outsiders of the fact that a covert channel exists. In the analyzed model, as in previous solutions [2,3,7,10], we assume that the cover is QAM amplitude–phase modulation in the form of IQ samples. In order to facilitate the process of demodulation of covert information from Figure 1, it is proposed to cross-orthogonalize the cover and covert signals by sorting. It is assumed that the coherence time of the radio channel, and therefore the channel estimation error, remains constant at least for a single data block for which the sorting operation is performed. Knowing that a typical channel coherence time is between approximately 10 ms to 200 ms [22–24], this assumption will usually remain.

Sorting occurs in both the transmitter and receiver as shown in Figure 2, whereby:

	- (a) restore the original sample order of the covert signal after the SIC operation *x*ˆ2*<sup>p</sup>* to the original order (in an ideal case *x*ˆ2*<sup>i</sup>* = *x*2)
	- (b) restoring the original order of *x*ˆ2*<sup>p</sup>* is followed by a simultaneous change in the sample order of the residual signal associated with *x*<sup>1</sup> Thus, the residual signal becomes orthogonal (quasi-orthogonal) to the covert signal.
	- (c) The covert signal *x*ˆ2*<sup>i</sup>* is fed to the input of the covert channel demodulator

Sorting involves dividing covert information into blocks. The block length depends on the covert information modulation used, the value of the cover modulation and the number of IQ samples per signal. Every covert symbol consists of several IQ points imposed on the several cover symbols. In Section 4 are presented simulation results for blocks equalling 16 or 64 cover symbols with (imposed) 1 to 4 covert symbols, respectively. From the proposed principle of sorting, in order to correctly reproduce the covert signal, it is necessary to correctly (without error) reproduce the unclassified (cover) signal (the equation *x*ˆ1 = *x*<sup>1</sup> must be true) because based on the cover signal, the reverse operation of sorting in the transmitter is reproduced (in the covert samples reorder system). Any error in the reception of the cover data in the block results in an error in the covert signal. That means, for example, that if the block has a length of 16 cover symbols with one imposed covert symbol, we lose one covert symbol in case of any cover error. And similarly, for a larger number of covert symbols per block, we lose all covert symbols. Therefore, the block length and the number of covert symbols in the block should be taken carefully.

As shown in Figure 2, the proposed solution, compared with traditional SIC (Figure 1), is based on two additional sorting operations: one in the transmitter and one in the receiver. It can be assumed that the complexity of every sorting operation has complexity O(*n*2).

**Figure 2.** Covert signal transceiver system.

The selection of the optimal modulation of covert information was preceded by simulation tests included in the following chapters. The easiest way to explain orthogonalization (the creation of quasi-orthogonal signals) is to assume that the covert signal is 8FSK modulation. By orthogonalization we mean the mutual transformation of signals in such a way that their spectra are disjointed, i.e., they do not overlap. The 8FSK signal spectrum has eight peaks corresponding to each symbol. The averaged spectrum of the QAM signal is flat over the bandwidth except roll-off, but the instantaneous spectrum calculated for a packet/block of data is characterized by high variability. Hence the concept of using such sorting that will reduce the instantaneous spectrum variation for random IQ values representing QAM symbols. It is reasonable to assume that sorting can, by decoupling the instantaneous spectra of the cover and covert information, reduce the impact of channel estimation error during the recovery of covert information.

### *3.2. Cover Signal Sorting*

In this section, it will be shown on a selected example that by sorting the IQ samples of the cover signal in an appropriate way, its spectral characteristics can be changed, so that the influence of the residual signal on the covert signal *x*<sup>2</sup> is reduced (Figure 2).

The impact of cover IQ sample sorting will be tested in the frequency domain using fast Fourier transform (FFT) analysis on the example of QAM amplitude–phase modulation. Sorting is performed for a sequence (block) of random IQ samples of signal *x*<sup>1</sup> consisting of *N* = 64 samples of 64 order QAM modulation (*M* = 64). The probability of each symbol

(from 0 to 63) is equally likely. The averaged FFT spectrum of such a signal does not have a clear main peak. We then sort the samples according to the phase increment defined as the angle *angle*(*x*1). The signal sorted in this way is denoted *x*1\_*sorted*. Since the phases of the QAM constellation points vary from −*π* to *π*, a *x*1\_*sorted* signal close to a sine wave (Figure 3a) with a period equal to *N* samples will be obtained. The FFT spectrum of the signal thus formed has one strong spectral line for the fundamental frequency (*f*0), the normalized value of which is *f*<sup>0</sup> = 2/*N*. The same will be true if *N* is a multiple of the modulation order *M*. By reordering the *x*1\_*sorted* samples, we can obtain shifted spectral lines on the frequency *fn* = *n f*0, where *f*<sup>0</sup> is a fundamental frequency, *n* is a power of 2 and satisfies the condition −0.5 ≤ *fn* ≤ 0.5. The above actions can be written using matrix operations. If we have a set of sorted (according to phase increase) samples of the N-QAM *x*1\_*sorted* signal with indices [1:N], the *i* indices of the sorted signal with the fundamental frequency k· *<sup>f</sup>*<sup>0</sup> (k <sup>=</sup> 1, 2, 4 . . . <sup>N</sup> <sup>2</sup> ) are obtained according to the formula:

$$\mathbf{m} = \text{reordered\\_index\\_for\ x\_{\text{1\\_sorted}}} = \text{paralle\\_to\\_serial}\left\{ \begin{bmatrix} 1: \mathbf{k}: \mathbf{N} \\ 2: \mathbf{k}: \mathbf{N} \\ \vdots \\ \vdots \\ \mathbf{k}: \mathbf{k}: \mathbf{N} \end{bmatrix}^T \right\} \tag{9}$$

For example, if we have a sorted (according to the phase increment) set of samples of a 64QAM signal labelled *x*1\_*sorted* with base frequency *f*<sup>0</sup> and corresponding indexes from 1 to 64, then the indices of the signal with frequency 16· *f*<sup>0</sup> and 32· *f*<sup>0</sup> (which corresponds to the normalized frequency equal to 1/4 and 1/2) are as follows:

$$i = \text{parallel\\_to\\_serial}\left\{ \begin{bmatrix} 1, \text{ 17, 33, 49} \\ 2, \text{ 18, 34, 50} \\ 3, \text{ 19, 35, 51} \\ \cdot \\ \cdot \\ \cdot \\ \text{16, 32, 48, 64} \end{bmatrix}^{\text{T}} \right\} \Rightarrow \tag{10}$$

and for *k* = 32 (32· *f*0)

$$\begin{aligned} i &= \text{parallel\\_to\\_serial} \left\{ \begin{bmatrix} 1, \, 33 \\ 2, \, 34 \\ \cdot \\ \cdot \\ \cdot \\ \cdot \\ \cdot \\ \cdot \\ \cdot \end{bmatrix}^{\top} \right\} = [1, \, 33, \, 2, \, 34, \, \ldots, \, 32, \, 64] \\ &\Rightarrow reorderd\left(\text{x}\_{1\_{oral}}\right) = \text{x}\_{1\_i} = \left[ \text{x}\_{1\_{1'}}, \, \text{x}\_{1\_{33}}, \, \text{x}\_{1\_{2'}}, \, \ldots, \text{x}\_{1\_{64}} \right] \end{aligned} \tag{11}$$

In Figure 3, for 64-QAM modulation, for a sequence of 64 random IQ samples, the time and frequency spectrum waveforms are shown for sequences sorted with fundamental frequencies of *f*0, 16· *f*<sup>0</sup> and 32· *f*0, respectively.

**Figure 3.** 64QAM signal. (**a**) Random and sorted (*x*1\_*sorted*, *f*0) 64QAM signal-real part of the signal, (**b**) Random and sorted 64QAM signal-imaginary part of the signal (**c**) Sorted 64QAM signal with frequencies of *f*<sup>0</sup> and 16· *f*<sup>0</sup> (d) Instantaneous FFT spectrum for 64 samples of random and sorted signals.

According to Figure 3, for 64 random 64QAM symbols we can, as a result of sorting, control (to a certain extent) the position of the spectral lines. This enables the parameters of the covert signal to be selected for optimal reception. On the basis of the presented method, the reception of the covert signal in the form of FSK and PSK modulation and the different modulation values of the cover and covert signal will be presented.

### **4. Simulation Tests**

A preliminary evaluation of the feasibility of using the system in Figure 2 to receive a covert signal in the presence of a channel estimation error resulting in a non-perfect SIC was carried out in the MATLAB environment. The following graphs are shown in the figures to better illustrate the phenomena taking place:


In order to provide an understanding of the phenomena occurring during the sorting process, the signals were assumed to be unnoisy and of equal power to produce charts containing spectra and cross-correlations (Figure 5a–f). This corresponds to the situation when the *x*ˆ signal in Figure 2 consists of a cover and covert signal of equal strengths. This is to show how distinguishable the signals are in the time and frequency domain.

Detection capabilities Figure 5f were investigated in accordance with the diagram in Figure 1 (system without sorting) and Figure 2 (system with sorting), assuming that the signal-to-noise ratio (SNR) of the channel (calculated for the aggregate signal) is 45 dB, and the estimation error of channel *ε* has a variance *σ*<sup>2</sup> *<sup>ε</sup>* . It was assumed that the covert symbol is transmitted with *l* IQ samples that are submultiples of the number of cover symbols for which the sorting operation is performed. The simulation was performed for 10,000 (for each value of *σ*<sup>2</sup> *<sup>ε</sup>* ) executions of a random sequence of cover and covert data. It was assumed that the value <sup>√</sup>*P*<sup>1</sup> = 1, <sup>√</sup>*P*<sup>2</sup> <sup>=</sup> 0.005.

In the case of frequency modulation, it was assumed that the M-FSK covert signal [25–29] in the baseband is defined as:

$$\log(t) = \exp(i \cdot \pi \cdot k \cdot \Delta f \cdot t + \theta) \tag{12}$$

*k* = ±1, ±3, ... ± *M*/2, and Δ*f* is a frequency deviation, *θ* random initial phase (random for each symbol).

### *4.1. Simulation No. 1*

The elementary signal from the quadrature transmitter is a composite (superposition) of one symbol of 8FSK (each symbol as 16 samples) and 16 symbols (samples) of 16QAM (Figure 4). The covert signal was sorted in such a way that, at the receiver, the cover fundamental frequency *f*<sup>0</sup> was increased four times (the normalized frequency of the cover is 4 · *f*<sup>0</sup> = 0.25).


**Figure 4.** Block of samples subject to sorting.

Figure 4 shows the impact of sorting on the cover spectrum and the cross-correlation between the cover and the covert signal (8FSK) (cross-correlation between two signals). As a result of sorting, the value of the averaged cross-correlation for the 8FSK modulation symbol equal to "5" has increased (Figure 5c), but its variation is eight times smaller (Figure 5e). For the other symbols, the cross-correlation is lower, as is its variance. As a result, the SIC operation runs with a lower probability of BER error.

**Figure 5.** Testing the impact of cover orthogonalization on the non-ideal SIC process (**a**) Averaged FFT spectrum of unsorted cover and 8FSK (**b**) Averaged FFT spectrum of sorted cover and 8FSK (**c**) Averaged cross-correlation value of unsorted cover and 8FSK (**d**) Histogram of the cross-correlation value of the unsorted cover and 8FSK (**e**) Histogram of the cross-correlation value of the sorted cover and 8FSK (**f**) Reception of covert information (8FSK) for the unsorted and sorted cover (non-ideal SIC).

### *4.2. Simulation No. 2*

In order to reduce cross-correlations (from Simulation No. 1), the sorting was changed (the number of covert samples for the block remains the same as in Figure 5). The spectrum in Figure 6b) was obtained by means of two successive repetitions of sorting (according to Formulas (13) and (14)) of the originally sorted *x*1\_*sorted*.

$$i\_1 = \text{paralel\\_to\\_serial}\left\{ \begin{bmatrix} 1:2:\mathbb{N} \\ 2:2:\mathbb{N} \end{bmatrix}^{\text{T}} \right\}\tag{13}$$

$$i\_2 = f(i\_1) = \left[1: \mathbf{k} : \frac{\mathbf{N}}{2}, \mathbf{N} : -1 : \frac{\mathbf{N}}{2} + 1\right] \tag{14}$$

As a result of the sorting, the cross-correlation for the symbol "7" is the same before and after the orthogonalization process. Nevertheless, the variance of the cross-correlation is twice as small. Hence, a much lower BER was obtained for the sorted cover than in the previous case (Figure 5f) vs. (Figure 6f).

**Figure 6.** Testing the impact of cover orthogonalization on the non-ideal SIC process (**a**) Averaged FFT spectrum of unsorted cover and 8FSK (**b**) Averaged FFT spectrum of sorted cover and 8FSK (**c**) Averaged cross-correlation value of unsorted cover and 8FSK (**d**) Histogram of the cross-correlation value of the unsorted cover and 8FSK (**e**) Histogram of the cross-correlation value of the sorted cover and 8FSK (**f**) Reception of covert information (8FSK) for the unsorted and sorted cover (non-ideal SIC).

### *4.3. Simulation No. 3*

The cover is 64QAM. For every 64 samples of the cover signal, there are 4 symbols (16 samples each) of the covert signal. To correctly decode the covert data, the sorting operation must be performed sequentially for each block of data shown in Figure 7. The data in the transmitter and receiver are sorted according to the cover signal. The normalized frequency of the sorted cover is 4 · *f*<sup>0</sup> = 0.5. The results are presented in Figure 8.

**Figure 8.** Testing the impact of cover orthogonalization on the non-ideal SIC process (**a**) Averaged FFT spectrum of unsorted cover and 8FSK (**b**) Averaged FFT spectrum of sorted cover and 8FSK (**c**) Averaged cross-correlation value of unsorted cover and 8FSK (**d**) Histogram of the cross-correlation value of the unsorted cover and 8FSK (**e**) Histogram of the cross-correlation value of the sorted cover and 8FSK (**f**) Reception of covert information (8FSK) for the unsorted and sorted cover (non-ideal SIC).

As a result of the sorting, the cross-correlation of the cover and the covert signal was reduced. This has reduced the BER for a non-perfect SIC. The results are compared with Figure 6f).

### *4.4. Simulation No. 4*

In previous simulations (simulation 1 to 3), the modulation of the covert information was 8FSK. However, it should be examined what effect sorting has when the covert signal is the amplitude–phase modulation used in [1,3,7,10]. Let's assume, as in simulations 1 and 2, that one 2PSK covert symbol is transmitted using 16 16QAM cover symbols. The FFT analysis (Figure 9a) of such a signal will show that each covert symbol is a constant value (on the frequency scale it has a non-zero value only for *f* = 0). Orthogonalization will not provide any benefit (Figure 9f) because the block for which we perform orthogonalization is equal to the modulation value of the cover and, at the same time, the number of samples per covert symbol. This is because the average value of the random sorted and unsorted cover in such a case remains constant.

Note that we obtained a relatively low BER for both the sorted and unsorted signal, even for a large estimation error. This is due to the high energy per bit (16 samples represent one bit of data) and, unfortunately, this comes at the expense of reduced resistance to steganalysis (as will be demonstrated in Section 5).

### *4.5. Simulation No. 5*

Simulation conditions are the same as in the previous example, except that we increase the value of modulation of the covert information to 8PSK. The results are presented in Figure 10.

Multi-valued 8PSK modulation requires a higher ratio of energy per bit of information. For this reason (with an assumed SNR = 45 dB), even for zero estimation error, the BER is different from zero (Figure 10f) and there is less immunity to channel estimation errors.

### *4.6. Simulation No. 6*

Sorting was carried out for the parameters as for case no. 3 (sorting a block of data equal to 64, and a covert symbol with a length of 16 samples). The modulation for covert data is 4PSK. The results are presented in Figure 11. The benefits of the sorting are noticeable, although the transmission rate compared with 8FSK is twice smaller.

### *4.7. Simulation No. 7*

Sorting was carried out for the parameters as for case no. 6 (sorting a block of data equal to 64, and a covert symbol with a length of 16 samples). The modulation for covert data is 8PSK. The results are presented in Figure 12.

As expected, sorting yields a lower BER. However, comparing Figure 7 with Figure 12 graphs, it is clear that for the given bit rates and power levels of the covert signal, better results are obtained (regardless of the sorting process) for 8FSK modulation. 8PSK modulation relative to 8FSK requires more energy per bit.

All simulations presented above aimed to show that, for the given waveform of the covert channel, it is possible to find an optimal sorting pattern to minimize imperfect SIC operation in the covert signal demodulator. This seems to be easier for FSK modulation and longer frames. However, it is necessary to keep in mind that the longer the frame, the lower the probability that channel gain is constant, which is the main assumption of this method.

**Figure 9.** Use of 2-PSK modulation for covert transmission (**a**) Averaged FFT spectrum of unsorted cover and 2PSK (**b**) Averaged FFT spectrum of sorted cover and 2PSK (**c**) Averaged cross-correlation value of unsorted cover and 2PSK (**d**) Histogram of the cross-correlation value of the unsorted cover and 2PSK (**e**) Histogram of the cross-correlation value of the sorted cover and 2PSK (**f**) Reception of covert information (2PSK) for the unsorted and sorted cover (non-ideal SIC).

**Figure 10.** Use of 8-PSK modulation for covert transmission (**a**) Averaged FFT spectrum of unsorted cover and 8PSK (**b**) Averaged FFT spectrum of sorted cover and 8PSK (**c**) Averaged cross-correlation value of unsorted cover and 8PSK (**d**) Histogram of the cross-correlation value of the unsorted cover and 8PSK (**e**) Histogram of the cross-correlation value of the sorted cover and 8PSK (**f**) Reception of covert information (8PSK) for the unsorted and sorted cover (non-ideal SIC).

**Figure 12.** Use of 8-PSK modulation for covert transmission (**a**) Averaged FFT spectrum of unsorted cover and 8PSK (**b**) Averaged FFT spectrum of sorted cover and 8PSK (**c**) Averaged cross-correlation value of unsorted cover and 8PSK (**d**) Histogram of the cross-correlation value of the unsorted cover and 8PSK (**e**) Histogram of the cross-correlation value of the sorted cover and 8PSK (**f**) Reception of covert information (8PSK) for the unsorted and sorted cover (non-ideal SIC).

### **5. Steganographic Analysis**

The choice of FSK modulation as the modulation for covert information is not only due to its good transmission properties and easy orthogonalization (quasi-orthogonalization) process with respect to the cover. The use of FSK modulation provides better properties in terms of low probability of detection (LPD), which is due to increased immunity to steganographic analysis compared to amplitude–phase modulations with constant constellation points.

By steganographic analysis we mean testing of probability density distributions and cumulative distribution function estimated by means of a histogram and cumulative histogram. Quantitatively, a measure of the difference in distributions can be calculated using the Kolmogorov–Smirnov test. To do this, the receiver must have noise information in the radio channel [30–32] and statistics formed from the signal from the SIC system output (we assume that the receiver is able to demodulate the cover information). If we denote the cumulative histogram distribution of the noise and signal after performing the SIC operation by *Fw* and *Fx*ˆ2 , respectively, the Kolmogorov–Smirnov distance *KSTEST* is expressed by the formula [10,33]:

$$KSTEST = \max \left| F\_w - F\_{\aleph\_2} \right| \tag{15}$$

Results of *KSTEST* calculated on the basis of 200,000 IQ samples for *SNR* = 45 dB and 50 dB conditions relative to the cover in the form of 64QAM, <sup>√</sup>*P*<sup>1</sup> = 1, <sup>√</sup>*P*<sup>2</sup> <sup>=</sup> 0.005 and zero channel estimation error are shown in the Table 1.


**Table 1.** KSTEST calculation.

Example histograms and cumulative histograms for 2PSK and 2FSK modulations are presented in Figure 13. It was assumed that *SNR* = 45 dB.

**Figure 13.** Histograms and cumulative histograms for (**a**) 2PSK and (**b**) 2FSK signals.

The analysis indicates that the 8FSK signal for the additive white Gaussian noise (AWGN) channel and ideal SIC provides the highest bit rate for the covert signal, while providing the best (calculated in K-S distance) steganographic protection. In addition, simulation tests have proven (Section 4) that sorting can be successfully used, which effectively reduces the impact of channel estimation error.

### **6. Practical Implementation**

The concept of a covert channel based on quasi-orthogonal coding was implemented by using the USRP-2920 [34] hardware platform manufactured by National Instruments. USRP is the essential hardware part for generating a radio signal, while the software part is provided by the LabView software (with Matlab scripts) installed on a personal computer (PC). An Ethernet network adapter with a bit rate of 1 Gb/s is used to provide communication between USRP and the PC. Two USRP-2920 were used to implement a test stand (Figure 14) for detectors (in the transmitter–receiver system) connected with the computer by an unmanaged switch. The system was placed in an office room, and the distance between the transmitter and receiver was 5 m. The line-of-sight (LOS) propagation conditions were ensured disturbance only by office equipment such as PCs and monitors.

**Figure 14.** Test system used for examinations.

The data were preceded by a short and long training sequence (Figure 15) as defined in [35]. On this basis, transmission channel parameters were estimated and synchronization and frequency and phase correction were made. For performance analysis, there was no channel encoding during the signal transmission. In order to compare the results obtained, tests were performed for the case of transmission with and without sorting. Sorting was done as in simulation #2 in Section 4. The results obtained are shown in Figure 16. Estimated SNR value refers to cover signal. Cover detection are intended to show that a certain minimum SNR for the cover channel is required to receive the covert channel. The cover signal has to be detected correctly first and then the covert signal can be received. During the test, a low power covert signal was selected deliberately. First, the authors intended to make the signal as difficult to detect as possible, and second, to obtain conditions under which it is more sensitive to channel estimation errors. The test verified the previously assumed and simulation-validated thesis that sorting aimed at mutual quasi-orthogonality of signals can improve the bit error rate. The difference for a signal with sorting versus without sorting for parameters defined in Table 2 is about 3 dB. The proposed algorithm effectively reduces channel estimation error and improves SIC operation. Significant gain was achieved, although the channel parameters were estimated every 64 blocks, which should give small channel estimation error. Improved CSI (lower error) could be achieved by, for example, additional pilot signals and training sequences, however, this would come at a cost of system resources and maximal bit rate.

**Figure 15.** Structure of the transmitted signal.


**Table 2.** Parameters of radio signal.

**Figure 16.** BER versus SNR for covert signal transmission with and without sorting.

### **7. Summary**

Creating a covert channel in the physical layer of wireless communications is an issue that is difficult to implement in practice. The low probability of detecting such a channel and the need to affect the cover's signal as little as possible entails the low power that can be allocated to covert transmission. The natural solution in such a situation is to increase energy per bit by increasing its duration while accepting a lower transmission speed. Such a solution encounters a serious problem, arising from the estimation of channel parameters, which becomes apparent in the inability to extract the covert signal. The purpose of the article was to identify solutions to this type of problem. First, it was noted that higher transmission speed can be achieved by using FSK modulation, which does not require an increase in signal power if covert modulation order is increased, since the energy per bit remains constant, and this is done at the expense of signal bandwidth. However, as noted, FSK modulation is more difficult to receive in non-perfect SIC compared to low-value PSK modulation. The solution in such a case may be the use of sorting, which aims to more easily extract the signal through greater separability of signals in the frequency domain. Although, at the transmitter, the primary FSK signal is converted to a pseudo-noise sequence, the final reception is performed by a traditional FSK demodulator. The proposed solution for creating quasi-orthogonal signals can also be applied to other modulations, which was also simulated in this paper. Importantly, the sorting method is determined by the cover signal, hence there is no need to send additional information between the transmitter and receiver. Although a correct decoding of a block of cover data is required to receive a single or several covert symbols, this is not a major limitation, since a cover signal is a strong signal by its very definition.

**Author Contributions:** Conceptualization, K.G.; Methodology, Z.P. and J.M.K.; Validation, K.G., Z.P. and J.M.K.; Formal analysis, K.G.; Investigation, Z.P.; Writing-original draft, K.G. and J.M.K.; Writing-review & editing, Z.P. and J.M.K.; Visualization, K.G.; Funding acquisition, J.M.K. All authors have read and agreed to the published version of the manuscript.

**Funding:** This research received no external funding.

**Institutional Review Board Statement:** Not applicable.

**Informed Consent Statement:** Not applicable.

**Data Availability Statement:** The data presented in this study are available on request from the corresponding author.

**Acknowledgments:** The authors would like to express their great appreciation to the sensors journal editors and anonymous reviewers for their valuable suggestions, which have improved the manuscript quality.

**Conflicts of Interest:** The authors declare no conflict of interest.

### **References**


**Disclaimer/Publisher's Note:** The statements, opinions and data contained in all publications are solely those of the individual author(s) and contributor(s) and not of MDPI and/or the editor(s). MDPI and/or the editor(s) disclaim responsibility for any injury to people or property resulting from any ideas, methods, instructions or products referred to in the content.
