 Research
 Open Access
 Published:
Statistical test for GNSS spoofing attack detection by using multiple receivers on a rigid body
EURASIP Journal on Advances in Signal Processing volume 2020, Article number: 8 (2020)
Abstract
Global navigation satellite systems (GNSS) are being the target of various jamming, spoofing, and meaconing attacks. This paper proposes a new statistical test for the presence of multiple spoofers based on range measurements observed by a plurality of receivers located on a rigid body platform. The relative positions of the receivers are known, but the location and orientation of the platform are unknown. The test is based on the generalized likelihood ratio test (GLRT) paradigm and essentially performs a consistency check between the set of observed range measurements and known information about the satellite topology and the geometry of the receiver constellation. Optimal spoofing locations and optimal artificial time delays (as induced by the spoofers) are also determined.Exact evaluation of the GLRT requires the maximumlikelihood estimates of all parameters, which proves difficult. Instead, approximations based on iterative algorithms and the squaredrange least squares algorithm are derived. The accuracy of these approximations is benchmarked against CramérRao lower bounds.Numerical examples demonstrate the effectiveness of the proposed algorithm and show that increasing the number of GNSS receivers makes the attack easier to detect. We also show that using multiple GNSS receivers limits the availability of optimal attack positions.
Introduction
Global navigation satellite system (GNSS) technology provides realtime positioning for various civil and military applications. Due to the low received power (about − 160 dBW), GNSS is highly susceptible to intentional and unintentional interference. In addition, the signal and modulation formats of civilian GNSS are publicly available. For these reasons, a wide range of attacks on GNSS are viable.
Attacks on GNSS are categorized into jamming, meaconing (replay), and spoofing [1]. In a jamming attack, the adversary overshadows the received GNSS signals with a higher power noiselike signal to make the receiver unable to decode the signal. In meaconing (replay), the adversary records the original GNSS signal and broadcasts it with a delay. In a spoofing attack, the attacker produces counterfeit GNSS signals that are similar to authentic ones, by modifying the original GNSS signals [2] in order to manipulate the victim receiver’s estimated position. This attack might be the most hazardous since it can take place without the victim being aware of being attacked. In the most sophisticated spoofing attacks, the adversary uses multiple, coordinated spoofers. Owing to the availability of inexpensive softwaredefined radios and GNSS modules, it has become relatively easy to implement such attacks. This paper is concerned with sophisticated spoofing attacks.
Taxonomy of existing GNSS spoofing mitigation methods
There has been research in the past on defense mechanisms against GNSS spoofing attacks. Here, we categorize these techniques into three groups.
Techniques using autocorrelation characteristics
The first group of techniques uses the received signal autocorrelation function characteristics to detect the presence of a spoofer. These methods detect the spoofer when it tries to take over the tracking loop of the GNSS receiver. There are in turn three main approaches:
Methods that use the signal quality monitoring mechanism to measure the distortion in the autocorrelation function of the received signal and detect the spoofer [3–12]. The paper [12] studies the applicability of multipath mitigation techniques for antispoofing purposes. A different approach is taken in [13], where the crosscorrelation among the GNSS signal of multiple GNSS receivers is used as input to a machinelearning classifier (a support vector machine specifically) to detect the spoofing attack.
Considering that the spoofer must use higher power than the original GNSS signals to make the receiver lock on the counterfeit signals, monitoring the received power level of the autocorrelation function can be used to detect the spoofing attack [14–19]. The dynamic process of taking over the victim tracking loop is used in [19] to detect a spoofing attack. As a new metric, [18] proposes to measure the variance of the signal quality to detect when the spoofer starts taking over the tracking loop of the victim.
One may combine both power and distortion monitoring of the autocorrelation function to detect an attack [20, 21].
These approaches have a number of difficulties. First, multipath fading can cause distortion and power level fluctuations in the autocorrelation function of the received GNSS signal similar to those caused by the spoofer. In addition, the spoofer can intelligently change its power level to mimic the power fluctuation of multipath fading. Second, these techniques require access to the received raw GNSS signals.
Spatial signal processing techniques
The second group of methods use spatial signal processing techniques to detect the presence of spoofers. These techniques can be further subdivided as:
Spoofing detection maybe based on estimated directionofarrival of the GNSS signals [22–31]. Considering a common source of spoofing signals, the work [29] uses the time difference of arrival of the GNSS signal to detect spoofing. The work in [30] uses array processing along with multipath detection algorithms to estimate the direction of arrival to detect the presence of one spoofer. A statistical test is used in [31] to estimate the power and angleofarrival of the GNSS signal in order to detect spoofing. For example, carrier phase differences can be used to estimate this direction of arrival [22, 25, 27].
One may exploit that counterfeit signals from a single spoofing source are spatially correlated and measure the spatial correlation between the received signals from different satellites [32–34]. The work [34] uses correlation at multiple receivers to separately classify authentic and spoofing signals; then, double differences of carrier phase measurements are used to detect the spoofer.
Using rotating antennas to measure the spatial correlation of the received GNSS signals [35, 36]. The paper [35] uses rotating antennas to measure the correlation between the carrier phases, while [36] uses a single rotating antenna to perform spatial power measurements.
The techniques in [22–28, 35, 36] require modification of the GNSS receiver hardware. In addition, the methods [22–28, 35, 36] are based on the property that the signals coming from a singleantenna spoofer are correlated. Attacks using multiple spoofers can result in spatially uncorrelated spoofing signals, in which case these methods can fail.
Methods that use multiple GNSS receivers
The last category of spoofing mitigation methods uses multiple GNSS receivers to detect the presence of the spoofer. These works can be further grouped as follows:
Using multiple GNSS receivers to detect the presence of a spoofer, exploiting the fact that all GNSS receivers show the same position while being spoofed [37–42].
Range measurements may be used directly to detect the spoofing attack [43–47]. More specifically, [43] considers multiple vehicles where each of them is equipped with a GNSS receiver and a range measurement sensor. The range measurements and GNSS positions are fused to detect the presence of one spoofer while assuming that only one of the vehicles is subject to a spoofing attack. In [44], the range measurements from multiple GNSS receivers are used to detect a spoofer, assuming that all range measurements from a spoofer are the same. Considering the effect of clock knowledge, the authors in [45] develop a technique to detect a spoofer using range measurements of multiple GNSS receivers. The authors of [46] propose to use the time difference of arrival of the GNSS signals derived from pseudorange measurements to detect the presence of one spoofer. The technique is based on the fact that signals coming from a spoofer have similar time differences of arrival. The work [47] studies detection of one spoofer using differential pseudorange and carrier phase measurements by a double antenna receiver. The effect of synchronization between the measurements on spoofing detection is investigated.
All above methods except [41] consider the detection of a singleantenna spoofer. The paper [41] develops a technique for multiantenna spoofer detection and presents implementation results.
Contributions
In this paper, we propose a signal processing approach that uses range measurements from multiple satellites to multiple GNSS receivers to detect the presence of multiple singleantenna spoofers. Each spoofer emulates one specific satellite. The GNSS receivers are assumed to be fixed on a rigid body platform (with known relative positions), and the range measurements gathered by all receivers are processed jointly to detect the presence of a spoofing attack. The technique developed here can work as a second layer of security to further strengthen methods that rely on properties of the autocorrelation function of the GNSS signal to detect spoofing attack (Section 1.1.1).
We make the following specific contributions:
We cast the spoofing detection problem as a statistical hypothesis test, specifically a generalized likelihood ratio test (GLRT), based on a set of observed range measurements.
We use squared rangeleast squares (SRLS) approach [48] to approximately find maximumlikelihood estimates of the parameters under two hypotheses corresponding to spoofing and no spoofing, respectively. We also calculate the CramérRao lower bound (CRLB) for the estimated parameters under both these hypotheses and compare the empirical results with these bounds.
We determine optimal locations of the spoofers (from the adversary’s perspective) that best counteract the proposed defense mechanism.
We present and evaluate all methodology using a twodimensional model of the world, leaving the extension to three dimensions—which incurs some nontrivial technicalities—to future work.
Notation
Uppercase and lowercase boldfaced letters are used to denote matrices and column vectors, respectively. The superscripts (·)^{T}, (·)^{∗}, (·)^{H}, and \({\left (\cdot \right)^{\dag } }\) denote the transpose, conjugate, Hermitian, and MoorePenrose pseudoinverse operators, respectively. I_{N×N} denotes an N by N identity matrix, diag(a) denotes a diagonal whose diagonal elements are the elements of the vector a, 0 is the allzero vector, ∥·∥ is the Frobenius norm, and · represents the absolute value of a scalar. For a symmetric matrix A_{n×n} and a positive definite matrix B_{n×n}, the generalized eigenvalues of the matrix pair (A,B) are given by \({\lambda _{i}}\left ({\mathbf {A},\mathbf {B}} \right) \,=\, {\lambda _{i}}\left ({\mathbf {B}^{ {1 \left /\right. 2}}}\mathbf {A}{\mathbf {B}^{{{  1} \left /\right. 2}}} \right)\), i=1,...,n where \({\lambda _{i}}\left (\mathbf {M} \right)\) denotes the ith largest eigenvalue of M.
System model and problem description
We consider a twodimensional scenario with N GNSS receivers and I satellites. The GNSS receivers are mounted on a rigid platform with fixed (and known) mutual distances. We assume that the clocks of the GNSS receivers are synchronized with those of the satellites. Spoofers may be present, and if so, each spoofer emulates one specific satellite. The emulation is done by receiving the GNSS signal of a satellite, modifying the ephemeris data, adding an artificial time delay, and retransmitting the signal [49]. We assume that the spoofers use higher transmit power than the satellites, so that the GNSS receivers lock on the spoofing signals instead of the legitimate satellite signals. When the receivers are synchronized, they can operate as a virtual array to perform angleofarrival estimation [50]. This can be used for spoofing detection where emulated GNSS signals arrive from a specific direction. In contrast, our approach can detect a spoofing attack where multiple spoofers emulate GNSS signals originating from geographically different locations. In addition, performing array processing requires accessing to the baseband signal of the GNSS receivers, which requires hardware modifications and precludes the use of commercial offtheshelf (COTS) receivers.
Let p_{n} be the position of the nth GNSS receiver. Since the GNSS receivers are fixed on a rigid body, we can parameterize their positions in terms of their locations relative to the platform, \({\mathbf {p}_{n_{0}^{}}}\), a translation vector (that determines the position of the platform), b_{0}, and a rotation matrix (that determines the orientation of the platform), T, according to
The rotation matrix, T, is parameterized in terms of a rotation angle θ as
and we write \( {\mathbf {b}_{0}} = \left [ \begin {array}{l} {b_{01}} \\ {b_{02}} \\ \end {array} \right ].\) Hence, \(\{ \mathbf {p}_{n_{0}^{}} \}\) are known a priori, while b_{0} and T are not. Figure 1 illustrates the relation between the variables {p_{n}}, b_{0}, T, and \(\{ {\mathbf {p}_{n_{0}^{}}}\}\) in (1).
Each GNSS receiver takes M range measurements to each satellite. To detect the possible presence of spoofers, we apply a binary hypothesis test to the soobtained range measurements. In regular operation (no spoofing), the delay of a signal from a satellite to a receiver is entirely due to the physical distance. In contrast, in the presence of spoofing, the spoofer is generally located at a different position than the satellite, and it can add an artificial, a priori unknown, time delay to the GNSS signal to simulate a different physical distance. Therefore, the two hypotheses, regular operation (\({{\mathcal {H}}_{0}}\)) and spoofing (\({{\mathcal {H}}_{1}}\)) cases, can be formulated:
where 1≤n≤N, 1≤i≤I, and 1≤m≤M is the number of GNSS signal samples captured by each GNSS receiver. We assume that the rigid body does not move during the sampling. Here, n_{n,i,m} are measurement noise samples that we model as identically distributed zeromean Gaussian random variables with variance σ^{2}, and we assume that these noise samples are independent among n, i, and m. Also, s_{i} is the true position of the ith satellite, \(\mathbf {s}_{i}^{'}\) is the forged position of the ith satellite (when a spoofer is present), and τ_{i} is the artificial time delay caused by the ith spoofer. Note that the artificial time delay introduced by the spoofer is perceived by the GNSS receivers as an additional propagation distance. We assume that the noise power, σ^{2} is known by the GNSS receivers (Table 1).
Under \({{\mathcal {H}}_{1}}\), the translation vector b_{0} is the same for all measurements, and hence we can absorb b_{0} into the unknown satellite positions \(\mathbf {s}_{i}^{'}\) by rewriting (4) as
where
To further simplify (5), we can factor out the rotation matrix T, exploiting that T^{T}T=I, to rewrite (5) as
where
We first average the M measurements taken by each GNSS receiver for each satellite, to obtain:
Since under the Gaussiannoise assumption, {r_{n,i}} are sufficient statistics for localization [51], we have the equivalent hypothesis test based on averaged measurements:
where \({n_{n,i}} = \frac {1}{M}\sum \limits _{m = 1}^{M} {{n_{{n,i,m}}}}\) is averaged noise with zero mean and variance \(\frac {\sigma ^{2}}{M} \). Averaging over the samples decreases \(\frac {\sigma ^{2}}{M}\) and improves the signaltonoise ratio. Under \({{\mathcal {H}}_{0}}\), the rotation matrix T and the translation vector b_{0} are unknown, while under hypothesis \({{\mathcal {H}}_{1}}\), the vectors \(\mathbf {s}_{1}^{\prime \prime \prime },...,\mathbf {s}_{I}^{\prime \prime \prime }\), and τ_{1},...,τ_{I} are unknown. In the next section, we devise a statistical test that can discriminate between _{0} and \({{\mathcal {H}}_{1}}\).
Generalized likelihood ratio test for spoofer detection
We formulate a generalized likelihood ratio test (GLRT) to detect the presence of a spoofing attack. The GLRT compares the likelihoods of the data under \({{\mathcal {H}}_{0}}\) and \({{\mathcal {H}}_{1}}\), with all unknown parameters replaced by their maximumlikelihood estimates. The GLRT approach is appropriate for cases when there are unknown parameters under each hypothesis, and no prior knowledge of these parameters is available.
Since the measurements in (7) and (8) follow a normal distribution, and since all averaged noise samples are independent, the PDFs of the measurements under \({{\mathcal {H}}_{0}}\) and \({{\mathcal {H}}_{1}}\) are
and
The GLRT can be written as
where
and
Taking the logarithm of (11) and simplifying yields
where
and
As we see in (14), GLRT calculates the difference between the measurements and the best fit assuming that \({\mathcal {H}}_{0}\) and \({\mathcal {H}}_{1}\), respectively, are true.
Approximate parameter estimation
Evaluation of the GLRT requires the maximumlikelihood estimates of the parameters in (12) and (13). However, finding these estimates is a nontractable problem. As a remedy, we resort to using the SRLS technique [48] as a building block in an iterative algorithm. SRLS was originally devised as a source localization method that finds the best position estimate (in a least squares sense) based on squared range measurements. We are going to use estimates from SRLS here as a substitute for maximumlikelihood estimates required in (12) and (13). In this context, it is important to stress that under a Gaussian assumption on the measurement errors, SRLS is asymptotically equivalent (for large numbers of samples, which in our setting is equivalent to small σ^{2}/M) to maximumlikelihood. The rangesquaring idea in [48] in ingenious and has also been used by other authors for joint position and orientation estimation of a rigid body from range measurements [52, 53].
Estimation of parameters under \({{\mathcal {H}}_{0}}\)
Under \({{\mathcal {H}}_{0}}\), as an approximation to (12), we formulate the following problem, defined in terms of the squared range measurements:
We then solve (15) using cyclic optimization, alternating between minimization with respect to b_{0} and with respect to T.
Minimization of (15) with respect to b_{0}
Considering the rotation matrix T to be given, we first minimize (15) with respect to b_{0}. Expanding the norm in (15) results in
Using the fact that T^{T}T=I and ordering (16) with respect to b_{0} yields
To write (17) as squared norm, we introduce an auxiliary variable α and a constraint:
The optimization problem in (18) can be written in a compact form as
where
and
Note that A should have full column rank, i.e., A^{T}A should be nonsingular for the solution to exist. The optimization problem in (19) is nonconvex. However, its global optimum solution can be found using the result in [54] as
where λ is the unique solution of
and ϕ is defined as
The search interval for λ consists of the values for which the expression A^{T}A+λD is positive definite. As a result, the search domain V will be
Based on [54], the function \(\phi \left (\lambda \right)\) is strictly decreasing over the domain V. Hence, we can use bisection to find the root of \(\phi \left (\lambda \right)\).
Minimization of (15) with respect to T
To minimize (15) with respect to the rotation matrix T, for given b_{0}, we again write, similarly to (17):
Defining \({c_{n,i}} = \mathbf {p}_{n_{0}^{~}}^{T}{\mathbf {p}_{n_{0}^{~}}} + \mathbf {b}_{0}^{T}{\mathbf {b}_{0}}  2\mathbf {s}_{i}^{T}{\mathbf {b}_{0}} + \mathbf {s}_{i}^{T}{\mathbf {s}_{i}}  r_{n,i}^{2}\) yields
Using the structure of the rotation matrix in (2) and defining b_{0}−s_{i}=[a_{i1},a_{i2}]^{T} and \({\mathbf {p}_{{n_{0}}}} = {[ {{p_{{n_{01}}}},{p_{{n_{02}}}}} ]^{T}}\), we can expand \(2{\left ({{\mathbf {b}_{0}}  {\mathbf {s}_{i}}} \right)^{T}}\mathbf {T}{\mathbf {p}_{n_{0}^{~}}}\) as
Using (29), estimating T becomes equivalent to estimating θ as
Problem (30) is nonconvex with respect to θ and may have multiple local minima. To find the global minimum, we calculate the derivative of (30) with respect to θ and find its roots. The derivative of the objective function in (30) is
which can be simplified into
Summation over the indexes n and i in (32) results in
with
The roots of \(f^{'}\phantom {\dot {i}\!}\) in (33) are solutions to the equation
We square both sides and substitute \({\sin ^{2}}\theta = 1  {\cos ^{2}}\theta \) to obtain
which is now a trigonometric function with only \(\cos \theta \) terms (which are periodic with period 2π). Replacing \(x = \cos \theta \) in (36) results in
The fourth order equation in (37) has at most four roots, which can be found using the Ferrari’s method [55]. After solving (37), we can use \(\theta = \arccos x\) to find the values of θ corresponding to the local optimums of (30). Note that since \(\cos \theta \) in (36) is periodic with period 2π, we look for the solutions in the domain \(\left [ {0,2\pi } \right ]\) when using \(\theta = \arccos x\). The value of θ corresponding to the global optimum of (27), i.e., \(\hat {\theta }\), is then
Iterative algorithm for minimization of (15)
Minimizing (15) jointly with respect to b_{0} and θ (or equivalently, T) is not tractable in closed form. Instead, we propose an iterative optimization approach in Algorithm 1. Since the problem is highly nonconvex with multiple local optima, the point obtained as solution could depend on the initialization values (especially of θ). To tackle this, we repeat Algorithm 1 with different initial values of θ.
It is shown in [48] that the SRLS results in the global optimum to the approximated problem based on squared range measurements. Hence, in the minimization with respect to b_{0}, for given T, in each iteration inside of Algorithm 1, we find the global optimum. The same is true of θ, as its global solution is given by the root of (37). However, the overall problem is nonconvex and the joint estimate of b_{0} and T may be suboptimal.
Estimation of parameters under \({{\mathcal {H}}_{1}}\)
Next, to find approximate solutions to (13), we consider again a cyclic optimization algorithm that alternates between minimization with respect to \({\mathbf {s}_{1}^{\prime \prime \prime }},...,{\mathbf {s}_{I}^{\prime \prime \prime }}\) and with respect to τ_{1},...,τ_{I} and where SRLS is used as a building block in the firstmentioned step.
Minimization with respect to \({\mathbf {s}_{1}^{\prime \prime \prime }},...,{\mathbf {s}_{I}^{\prime \prime \prime }}\)
We first consider minimization with respect to \({\mathbf {s}_{1}^{\prime \prime \prime }},...,{\mathbf {s}_{I}^{\prime \prime \prime }}\) for given τ_{1},...,τ_{I}. Using the SRLS technique, the corresponding optimization problem to find \({\mathbf {s}_{1}^{\prime \prime \prime }},...,{\mathbf {s}_{I}^{\prime \prime \prime }}\) becomes
where \(\overline r_{n,i}^{2} = {\left ({{r_{n,i}}  {\tau _{i}}} \right)^{2}}\). We expand the norm expression in (39) as
and add the terms in (40) over index i to obtain
Problem (41) is a minimization of sum of I positive terms, where the ith term only depends on \({\mathbf {s}_{i}^{\prime \prime \prime }} \). Hence, the problem decouples and we can minimize each individual term separately. This results in I separate optimization problems, where the ith problem is
Similar to the approach in Section 4.1.1, moving the quadratic term to a constraint results in
By completing the square, we can cast (43) as
where
and
Minimization with respect to τ_{i}
Next, we find the artificial time delays caused by each spoofer for given values of \({\mathbf {s}_{1}^{\prime \prime \prime }},...,{\mathbf {s}_{I}}^{\prime \prime \prime }\). The problem is
We expand (47) as
The objective function in (48) is sum of positive and independent terms. Again, the problem decouples and we can find the minima with respect to τ_{1},...,τ_{I} separately for i=1,...,I. The corresponding problem for the ith variable, τ_{i}, is
and has the (s) solution
Iterative algorithm for approximate solution of (13)
The whole approach to estimate the parameters under \({{\mathcal {H}}_{1}}\) is summarized in Algorithm 2. Since the estimation problem is nonlinear and can have multiple local optimum points, we need to repeat Algorithm 2 for different initialization points of τ_{1},...,τ_{I}.
Similarly to the case under \({{\mathcal {H}}_{1}}\), the minimization with respect to \({\mathbf {s}_{1}^{\prime \prime \prime }},...,{\mathbf {s}_{I}}^{\prime \prime \prime }\) for given τ_{1},...,τ_{I} in Algorithm 2 returns the global optimum. Also, for given \({\mathbf {s}_{1}^{\prime \prime \prime }},...,{\mathbf {s}_{I}}^{\prime \prime \prime }\), (50) yields the globally optimal values of τ_{1},...,τ_{I}. However, the joint estimates \({\mathbf {s}_{1}^{\prime \prime \prime }},...,{\mathbf {s}_{I}}^{\prime \prime \prime }\) and τ_{1},...,τ_{I} delivered by Algorithm 2 may be suboptimal. A more granular initialization range for the parameter θ increases the chance of finding the global optimum rather than a local optimum.
Complexity analysis of the proposed algorithms
In this section, we provide the BigO complexity for each step of Algorithms 1 and 2, respectively. Algorithm 1 is comprised of two parts where b_{0} is first estimated using (23) and θ is estimated using (37), which is solved using Ferrari’s method. Adding up the complexity of these two parts, the complexity of each iteration of Algorithm 1 is:
where \(r = {\log _{2}}\left ({\frac {{{\varepsilon _{0}}}}{\varepsilon }} \right)\), ε_{0} is the search domain of the bisection algorithm in (26), and ε is the required accuracy of the bisection algorithm. The overall complexity of (51) is the number of tested initial values of θ_{0} multiplied by the complexity of each iteration provided in (51).
Similarly, Algorithm 2 is comprised of two parts. First, the values of \({\mathbf {s}_{1}^{\prime \prime \prime }},...,{\mathbf {s}_{I}^{\prime \prime \prime }}\) are estimated and then τ_{1},...,τ_{I} are computed. Adding the complexity of these two parts, the complexity of each iteration of Algorithm 1 is:
Optimal design of attack parameters
As we develop signal processing methodology to detect an attack by multiple spoofers, it is expected that the adversary devises the best strategy to counteract the spoofing detection technique. In this section, we develop analytical solutions to design the optimal spoofing parameters. In this analysis, we assume that the adversary has perfect knowledge of the initial positions of the GNSS receiver nodes, \(\mathbf {p}_{{n_{0}}}\).
To minimize the chance of detection, the adversary needs to satisfy two types of constraints. First, the adversary needs to find spoofed locations, \(\mathbf {p}_{n}^{sp}\), such that the relative coordinates of the GNSS receivers is preserved after spoofing. To achieve this, the spoofer selects values of the spoofed translation vector, \(\mathbf {b}_{0}^{sp}\), and spoofed rotation matrix, T^{sp}. Then, it uses the knowledge of \(\mathbf {p}_{{n_{0}}}\) to calculate the values of the spoofed locations, \(\mathbf {p}_{n}^{sp}\), as
Second, the locations of the spoofers and forged positions of the satellites need to chosen such that the range measurements at all GNSS receivers result in the target spoofed location derived in (53), and the spoofed formation of the GNSS receivers is preserved. To satisfy this, the simulated distance by a specific spoofer, caused by its physical distance to a GNSS receiver and artificial delay, needs to be equal to the distance of forged satellite, provided in the simulated GNSS signal, to the estimated position of that GNSS receiver. To implement the former in the best way, the adversary first picks values for the forged positions of the satellites, \(\mathbf {s}_{i}^{sp}\), and uses the values of \(\mathbf {p}_{n}^{sp}\) derived in (53) to satisfy the following constrains:
where \(\mathbf {p}_{i}^{A}\) is the position of the ith spoofer, \(\mathbf {p}_{n}^{sp}\) is the spoofed location of the nth GNSS receiver, \(\mathbf {s}_{i}^{sp}\) is the forged position of the ith satellite, and τ_{i} is the artificial delay produced by the ith spoofer. The better the spoofers satisfy the corresponding equations in (54), the closer the estimated parameters in (3) to that set by the adversary. Consequently, this leads to a better fit between the measurements and the data model. As we see in the developed detection test in (14), this helps reducing the left hand side of the detection test and not reaching the detection threshold.
Each spoofer chooses values for \(\mathbf {s}_{i}^{sp}\) since these values need to be in a specific range, e.g., GEO satellites, and then solves the related equations in (54) to get the optimal values of \(\mathbf {p}_{i}^{A}\) and τ_{i}. To illustrate, the best position for the first attacker is illustrated in Fig. 2 for N=I=A=2. As we see, satisfying the set of constraints in (54) results in the optimal position for the spoofer being the intersection of two circles where the center of each circle is p_{n} for n=1,2. For N≥3, there are three circles which may not have a common intersection point. Therefore, the adversary needs to find the best point for each spoofer which best satisfies (54) for all GNSS receivers. One way is to use a least squares fit,
where \({\mu _{n,i}} = \left \ {\mathbf {p}_{n}^{sp}  \mathbf {s}_{i}^{sp}} \right \\). To solve (55), we do the following change of variables:
and calculate the derivatives of the objective in (55) with respect to \({p_{{n_{x}}}}\), \({p_{{n_{y}}}}\), and τ_{i}. After algebraic simplifications, we get
where
Relations (58) imply an intertwined system of nonlinear equations in (57). This system of equations can be solved using classic approaches such as the Newton method. To find the optimal values of \({\mathbf {p}_{i}^{A}}\) and τ_{i} for each spoofer, we perform a coarse search over multiple initial guess points and choose the best one among them.
Nonetheless, in practice, it may not be possible for each spoofer to be in the optimal location at each moment. This is due to the fact that the GNSS receivers are installed on a moving platform and physical barriers as well as unknown velocity and speed can prevent the spoofers from being at the required positions. We quantify the spoofing detection performance with respect to the deviation from the optimal location of the spoofers in Section 6.
Simulation results
In this section, we present numerical examples to quantify the performance of the proposed spoofing detection mechanism. Unless otherwise stated, the parameters of the simulation setup are as in Table 2.
To initialize \(\hat {\theta }\) for Algorithm 1, we select a set of coarsely spaced values within the range [0,2π]. We repeat Algorithm 2 for different initial values of τ_{1},...,τ_{I} and then pick the estimated parameters which result in the least difference between the measurements and the data model. The values of ε in both Algorithms 1 and 2 are set to ε=10^{−3}.
To demonstrate the accuracy of the parameter estimates used in lieu of the maximumlikelihood estimates required in (12)–(13), we first compare the empirical estimation variance to the CramérRao lower bound (CRLB). The CRLBs under \({{\mathcal {H}}_{0}}\) and \({{\mathcal {H}}_{1}}\) are derived in Appendix Appendix A and Appendix Appendix B, respectively. Due to space constraints, we present these comparisons only for the parameters θ for \({{{\mathcal {H}}_{0}}}\) and \(s_{31}^{\prime \prime \prime }\) for \({{{\mathcal {H}}_{1}}}\). Figures 3 and 4 show the results. As we can see, parameter estimates get close to their respective CRLBs as the noise variances decrease.
We next evaluate the performance of the proposed spoofing detection technique by plotting the probability of detection versus the probability of false alarm for various different values of M (or equivalently, different noise power \(\frac {{{\sigma ^{2}}}}{M}\) in the averaged range measurements). To generate the simulation results and find the threshold of the GLRT, we proceed as follows. First, we run a case without spoofers and empirically calculate the probability of false alarm using the GLRT test in (14) for various values of γ_{th}. Next, we simulate the presence of spoofers and calculate the probability of detection using the GLRT test in (14) for various values of γ_{th}. Finally, we plot the soobtained probabilities of detection and false alarm.
In the first simulation scenario, we investigate how the difference between the true and spoofed positions of the GNSS receivers affect the spoofing detection probability. We present the probability of detection versus false alarm in Figs. 5 and 6 for different values of the spoofed translation vector, \(\mathbf {b}_{0}^{sp}\). The results show that as the adversary tries to mislead the victims more from their true locations, the chance to spot the spoofing attack increases.
In the next scenario, we quantify the performance of the proposed technique when the position of each spoofer deviates from the optimal designed positions. The probability of detection versus false alarm is shown in Fig. 7 when each spoofer is moved by \({{2\mathbf {p}_{i}^{A}} \left /\right. {\left \ {\mathbf {p}_{i}^{A}} \right \}}\) from the optimal position. As we see, the probability of detection increases as the spoofers fail to occupy their optimal locations.
Finally, we investigate the effect of the number of GNSS receivers on the performance of the proposed algorithm. We consider the same satellite formation with I=3 and three spoofers, i.e., A=3, while increasing the number of GNSS receivers from three to five. The performance of the proposed algorithm when increasing the number of GNSS receivers is shown in Fig. 8. Compared to Fig. 5, we see that adding two extra GNSS receivers increases the detection performance of the proposed scheme considerably.
As we see in Figs. 58, increasing the number of samples taken by the GNSS receivers consistently increases the detection probability for a given false alarm probability.
Conclusions
We proposed an antispoofing approach for GNSS based on a statistical test. The test exploits multiple GNSS receivers mounted on a rigidbody platform (with a priori unknown position and orientation) and essentially performs a consistency check between all pairs of measured receiversatellite distances and available prior knowledge about the relative positions of the receivers on the platform. Numerical simulations proved the feasibility of our method and specifically showed that the more the spoofers try to manipulate the estimated GNSS receiver positions from their nominal locations, the higher is the probability of attack detection. Also, the more GNSS receivers on the platform, the higher the probability of detecting a spoofing attack.
We furthermore showed that using multiple GNSS receivers limits the feasible attacker position to few locations, and we designed a framework for finding the optimal attack positions as well as the artificial time delays of the spoofers. Simulations showed that when the spoofers do not occupy their optimal locations, it is easier to detect them.
For analytical tractability and to achieve a first proofofconcept of our statistical test methodology, we considered a twodimensional geometry. Future work may include extensions to a threedimensional world or combining our approach with anomaly detection in the autocorrelation function of the received signals, in order to enhance overall detection performance. In addition, new analysis can be performed by considering synchronization errors among the clocks of the GNSS receivers and the satellites. Also, the noise variance may be treated as an unknown parameter in the GLR tests.
It would be interesting to test our proposed approach in practice. We hope that this paper will stimulate both further theoretical research and experimental work.
Appendix A
Proof of CRLB for _{0}
In this appendix, we calculate the CRLB for estimated parameters under hypothesis \({{\mathcal {H}}_{0}}\). Since the range measurements in (5) follow a normal distribution, we can use the SlepianBang formula [56] to calculate the CRLB as,
where
and \({\mathbf {C}^{ 1}}\left (\boldsymbol {\alpha } \right) = {\sigma ^{  2}}\) since the noises across the GNSS receivers and the measurements are assumed to be independent.
To calculate the CRLB for \({{\mathcal {H}}_{0}}\), first, we calculate the values of \(\frac {{\partial \mu \left (\boldsymbol {\alpha } \right)}}{{\partial {\alpha _{j}}}}\) for j=1,2,3. After some algebraic calculations, these values are derived as
where
By inserting the calculated values of (61) into the SlepianBang formula in (59), the elements of the Fisher information matrix are derived as
and \({\left [ {\mathbf {I}\left (\boldsymbol {\alpha } \right)} \right ]_{21}} = {\left [ {\mathbf {I}\left (\boldsymbol {\alpha } \right)} \right ]_{12}}\), \({\left [ {\mathbf {I}\left (\boldsymbol {\alpha } \right)} \right ]_{31}} = {\left [ {\mathbf {I}\left (\boldsymbol {\alpha } \right)} \right ]_{13}}\), \({\left [ {\mathbf {I}\left (\boldsymbol {\alpha } \right)} \right ]_{32}} = {\left [ {\mathbf {I}\left (\boldsymbol {\alpha } \right)} \right ]_{23}}\). Using the calculated elements of the Fisher matrix, we can derive closedform expressions for the CRLB by inverting the Fisher information matrix. For the sake of conciseness, here, we avoid showing these expressions.
Appendix B
Proof of CRLB for _{1}
In this appendix, we calculate the CRLB for the parameters under hypothesis \({{\mathcal {H}}_{1}}\). Since the range measurements in (5) follow a normal distribution, we can use the SlepianBang formula [56] to calculate the CRLB.
Based on Algorithm 2, the first step is to find initial values of the parameters τ_{i} for i=1,..,I. As we see in (45), estimation of \(\mathbf {s}^{\prime \prime \prime }_{i}\) depends on \(\overline r_{n,i}^{2}\) for n=1,...,N where \(\overline r_{n,i}^{2}\) depends on τ_{i} for n=1,...,N. Hence, only τ_{i} is used in (43) to estimate \(\mathbf {s}^{\prime \prime \prime }_{i}\) for i=1,...I.
In the next step of Algorithm 2, calculated values of \(\mathbf {s}^{\prime \prime \prime }_{i}\) are used to estimate τ_{i} for i=1,..,I. Based on (50), only \(\mathbf {s}^{\prime \prime \prime }_{i}\) is used to estimate τ_{i} for i=1,..,I. According to the previous explanations, each pair \((\mathbf {s}^{\prime \prime \prime }_{i},\tau _{i})\) is estimated independently for i=1,...,I. In the following, we provide the details to calculate the CRLB for \({{\mathcal {H}}_{1}}\).
Similar to the calculations for \({{\mathcal {H}}_{0}}\), we use the SlepianBang relation (59) to calculate the CRLB for \({{\mathcal {H}}_{1}}\). The problem parameters and the mean of the hypothesis are defined as
and \({\mathbf {C}^{ 1}}\left (\boldsymbol {\alpha } \right) = {\sigma ^{  2}}\) since the noises across the GNSS receivers and the measurements are assumed to be independent. As we see, α depends on different parameters of one specific satellite for each value of i. To avoid confusion, we can assume that for \({\left [ {\mu \left (\boldsymbol {\alpha } \right)} \right ]_{n,i}}\) the parameters with index i=1,...,i−1,i+1,...,I have coefficient zero. Hence, the FIM will be block diagonal and each block is 3×3 since three parameters from each satellite need to be estimated. Considering that M samples are captured from the same satellite by the same GNSS receiver, we factor out M.
The derivative of \({\left [ {\mu \left (\boldsymbol {\alpha } \right)} \right ]_{n,i}}\) with respect to the parameters related to the ith satellite are defined as
The elements of the FIM are calculated as
Similar as in Appendix Appendix A, we can build the FIM matrix using the above derivations and calculate the inverse to derive the CRLB for the parameters \(\mathbf {s}_{i}^{\prime \prime \prime }\) and τ_{i} for i=1,...,I.
Availability of data and materials
Not applicable.
Abbreviations
 GNSS:

Global navigation satellite systems
 GLRT:

Generalized likelihood ratio test
 SRLS:

Squared rangeleast squares
 CRLB:

CramérRao lower bound
References
J. V. Carroll, Vulnerability assessment of the U.S. transportation infrastructure that relies on the global positioning system. J. Navig.56(2), 185–193 (2003).
T. E. Humphreys, in Proceedings of the Institute of Navigation GNSS (ION GNSS). Assessing the spoofing threat: development of a portable GPS civilian spoofer (Savannah International Convention CenterSavannah, 2008).
A. Cavaleri, B. Motella, M. Pini, M. Fantino, in ESA Workshop on Satellite Navigation Technologies and European Workshop on GNSS Signals and Signal Processing (NAVITEC). Detection of spoofed GPS signals at code and carrier tracking level, (2010).
K. D. Wesson, D. P. Shepard, J. A. Bhatti, T. E. Humphreys, An evaluation of the vestigial signal defense for civil GPS antispoofing, (Portland, 2011).
J. M. ParroJimenez, R. T. Ioannides, M. Crisci, J. A. LopezSalcedo, in ESA Workshop on Satellite Navigation Technologies (Navitec) and European Workshop on GNSS Signals and Signal Process. Detection and mitigation of nonauthentic GNSS signals: preliminary sensitivity analysis of receiver tracking loops (Noordwijk, 2012).
M. T. Gamba, B. Motella, M. Pini, in International Conference on Localization and GNSS (ICLGNSS). Statistical test applied to detect distortions of GNSS signals (Turin, 2013).
A. Broumandan, A. J. Jahromi, S. Daneshmand, G. Lachapelle, in International Technical Meeting of The Satellite Division of the Institute of Navigation (ION GNSS). Effect of tracking parameters on GNSS receivers vulnerability to spoofing attack (Portland, 2016), pp. 3033–3043.
J. Huang, L. Lo Presti, B. Motella, M. Pini, GNSS spoofing detection: theoretical analysis and performance of the ratio test metric in open sky. ICT Express. 2(1), 37–40 (2016).
A. Pirsiavash, A. Broumandan, G. Lachapelle, in ESA/ESTEC NAVITEC Conference. Twodimensional signal quality monitoring for spoofing detection (Noordwijk, 2016).
A. Broumandan, R. Siddakatte, G. Lachapelle, An approach to detect GNSS spoofing. IEEE Aerosp. Electron. Syst. Mag.32(8), 64–75 (2017).
A. Farhadi, M. Moazedi, M. R. Mosavi, A. Sadr, A novel ratiophase metric of signal quality monitoring for realtime detection of GPS interference. Wirel. Pers. Commun.97(2), 2799–2818 (2017).
Y. Guo, L. Miao, X. Zhang, Spoofing detection and mitigation in a multicorrelator GPS receiver based on the maximum likelihood principle. 19(37), 1–17 (Sensors 2019. https://www.ncbi.nlm.nih.gov/pmc/articles/PMC6339142/).
S. Semanjski, A. Muls, I. Semanjski, W. De Wilde, in International Conference on Localization and GNSS (ICLGNSS). Use and validation of supervised machine learning approach for detection of gnss signal spoofing (nuremberg, 2019), pp. 1–6.
A. J. Jahromi, A. Broumandan, J. Nielsen, G. Lachapelle, GPS spoofer countermeasure effectiveness based on signal strength, noise power, and C/N_{0} measurements. Int. J. Satell. Commun. Netw.30(4), 181–191 (2012).
V. Dehghanian, J. Nielsen, G. Lachapelle, GNSS spoofing detection based on signal power measurements: statistical analysis. Int. J. Navig. Obs.2012: (2012). https://www.hindawi.com/journals/ijno/2012/313527/.
D. Yuan, H. Li, M. Lu, in IEEE/ION Position, Location and Navigation Symposium (PLANS). A method for GNSS spoofing detection based on sequential probability ratio test (Monterey, 2014), pp. 351–358.
J. Li, J. Zhang, S. Chang, M. Zhou, Performance evaluation of multimodal detection method for GNSS intermediate spoofing. IEEE Access. 4:, 9459–9468 (2017).
C. Sun, J. W. Cheong, A. G. Dempster, L. Demicheli, E. Cetin, H. Zhao, W. Feng, Moving variancebased signal quality monitoring method for spoofing detection. GPS Solutions. 22:, 83 (2018).
W. Wang, N. Li, R. Wu, P. Closas, Detection of induced gnss spoofing using scurvebias. Sensors. 19(4), 922 (2019).
K. D. Wesson, B. L. Evans, T. E. Humphreys, in IEEE Global Conference on Signal and Inf. Process.A combined symmetric difference and power monitoring GNSS antispoofing technique (Austin, 2013), pp. 217–220.
K. D. Wesson, J. N. Gross, T. E. Humphreys, B. L. Evans, GNSS signal authentication via power and distortion monitoring. IEEE Trans. Aerosp. Electron. Syst.54(2), 739 –754 (2017).
P. Y. Montgomery, T. E. Humphreys, B. M. Ledvina, in International Technical Meeting of The Institute of Navigation. Receiverautonomous spoofing detection: experimental results of a multiantenna receiver defense against a portable civil GPS spoofer (Savannah, 2009), pp. 124–130.
M. Meurer, A. Konovaltsev, M. Cuntz, C. Hättich, Robust joint multiantenna spoofing detection and attitude estimation using direction assisted multiple hypotheses RAIM. J. Inst. Navig., 3007–3016 (2012).
D. Borio, PANOVA tests and their application to GNSS spoofing detection. IEEE Trans. Aerosp. Electron. Syst.49(1), 381–394 (2013).
M. L. Psiaki, B. W. O’Hanlon, S. P. Powell, J. A. Bhatti, K. D. Wesson, T. E. Humphreys, A. Schofield, in International Technical Meeting of The Satellite Division of the Institute of Navigation (ION GNSS). GNSS spoofing detection using twoantenna differential carrier phase (Tampa, 2014).
A. Konovaltsev, S. Caizzone, M. Cuntz, M. Meurer, in International Technical Meeting of The Satellite Division of the Institute of Navigation (ION GNSS). Autonomous spoofing detection and mitigation with a miniaturized adaptive antenna array (Tampa, 2014).
D. Borio, C. Gioia, A sumofsquares approach to GNSS spoofing detection. IEEE Trans. Aerosp. Electron. Syst.52(4), 1756–1768 (2016).
Y. Hu, S. Bian, B. Li, L. Zhou, A novel arraybased spoofing and jamming suppression method for GNSS receiver. IEEE Sensors J.18(7), 2952–2958 (2018).
Z. Zhang, X. Zhan, Statistical analysis of spoofing detection based on tdoa. IEEJ Trans. Electr. Electron. Eng.13(6), 840–850 (2018). Available: https://onlinelibrary.wiley.com/doi/abs/10.1002/tee.22637. Accessed 01 Feb 2018.
J. Magiera, A multiantenna scheme for early detection and mitigation of intermediate GNSS spoofing. Sensors. 19(10), 2411 (2019).
Z. Gülgün, E. G. Larsson, P. Papadimitratos, in International Symposium on Wireless Communication Systems (ISWCS), Oulu, Finland (IEEE international conference, 2019), pp. 677–681.
A. Broumandan, A. JafarniaJahromi, V. Dehghanian, J. Nielsen, G. Lachapelle, in IEEE/ION Position, Location and Navigation Symposium. GNSS spoofing detection in handheld receivers based on signal spatial correlation (Myrtle Beach, 2012), pp. 479–487.
H. Li, X. Wang, in IEEE Canadian Conference on Electrical and Computer Engineering (CCECE). Detection of GPS spoofing through signal multipath signature analysis (Vancouver, 2016).
S. H. Seo, B. H. Lee, S. H. Im, G. I. Jee, K. S. Kim, Efficient spoofing identification using baseline vector information of multiple receivers. GPS Solutions. 22:, 115 (2018).
M. L. Psiaki, S. P. Powell, B. W. O’Hanlon, in Proceedings of the ION GNSS. GNSS spoofing detection using highfrequency antenna motion and carrierphase data (Nashville, 2013), pp. 2949–2991.
F. Wang, H. Li, M. Lu, GNSS spoofing countermeasure with a single rotating antenna. IEEE Access. 5:, 8039–8047 (2017).
P. F. Swaszek, R. J. Hartnett, in International Technical Meeting of The Satellite Division of the Institute of Navigation (ION GNSS+). Spoof detection using multiple GNSS receivers in safety critical applications (Miami, 2013).
P. F. Swaszek, R. J. Hartnett, in International Technical Meeting of The Institute of Navigation. A multiple COTS receiver GNSS spoof detector – extensions (San Diego, 2014).
E. Axell, E. G. Larsson, D. Persson, in IEEE International Conference on Acoustics, Speech and Signal Processing (ICASSP). GNSS spoofing detection using multiple mobile COTS receivers (South Brisbane, 2015), pp. 3192–3196.
E. Axell, M. Alexandersson, T. Lindgren, in International Conference on Location and GNSS (ICLGNSS). Results on GNSS meaconing detection with multiple GNSS receivers (Gothenburg, 2015).
K. Jansen, N. O. Tippenhauer, C. Pöpper, in Annual Conference on Computer Security Applications. Multireceiver GPS spoofing detection: Error models and realization (New York, 2016), pp. 237–250.
N. O. Tippenhauer, C. Pöpper, K. B. Rasmussen, S. Capkun, in ACM Conference on Computer and Communications Security. On the requirements for successful GPS spoofing attacks (Chicago, 2011).
P. F. Swaszek, R. J. Hartnett, K. C. Seals, in International Technical Meeting of The Satellite Division of the Institute of Navigation (ION GNSS+). Using range information to detect spoofing in platoons of vehicles (Portland, 2017), pp. 2838–2853.
D. Radin, P. F. Swaszek, K. C. Seals, R. J. Hartnett, in International Technical Meeting of The Institute of Navigation. GNSS spoof detection based on pseudoranges from multiple receivers (Tampa, 2015), pp. 657–671.
P. F. Swaszek, R. J. Hartnett, K. C. Seals, in International Technical Meeting of The Satellite Division of the Institute of Navigation (ION GNSS). GNSS spoof detection using passive ranging (Portland, 2016), pp. 2971–2980.
Z. Zhang, X. Zhan, GNSS spoofing network monitoring based on differential pseudorange. Sensors. 16(10) (2016).
F. Wang, H. Li, M. Lu, GNSS spoofing detection based on unsynchronized doubleantenna measurements. IEEE Access. 6:, 31203–31212 (2018).
A. Beck, P. Stoica, J. Li, Exact and approximate solutions of source localization problems. IEEE Trans. Sig. Process.56(5), 1770–1778 (2008).
T. E. Humphreys, in Proceedings of the Institute of Navigation GNSS (ION GNSS). Assessing the spoofing threat: development of a portable GPS civilian spoofer (Savannah, 2008).
J. A. GarcíaMolina, J. A. FernándezRubio, in Proceedings of the 32nd International Technical Meeting of the Satellite Division of The Institute of Navigation (ION GNSS+). Collaborative snapshot positioning via distributed array processing (Miami, 2019). JeanPierre Tignol, Université Catholique de Louvain, Belgium, GaloisŠ theory of algebraic equations, World Scientific Publishing, Singapore, 2001
E. G. Larsson, D. Danev, Accuracy comparison of LS and squaredrange LS for source localization. IEEE Trans. Sig. Process.58(2), 916–923 (2010).
S. P. Chepuri, G. Leus, A. van der Veen, Rigid body localization using sensor networks. IEEE Trans. Sig. Process.62(18), 4911–4924 (2014).
S. Chen, K. C. Ho, Accurate localization of a rigid body using multiple sensors and landmarks. IEEE Trans. Sig. Process.63(24), 6459–6472 (2015).
J. J. More, Generalizations of the trust region problem. Optim. Methods Softw.2(34), 189–209 (1993).
J. Tignol, Université Catholique de Louvain, Belgium, GaloisŠ theory of algebraic equations (World Scientific Publishing, Singapore, 2001).
D. Slepian, Estimation of signal parameters in the presence of noise. Trans. IRE Prof. Group Inf. Theory. 3(3), 68–89 (1954).
Acknowledgements
The simulations were performed on resources provided by the Swedish National Infrastructure for Computing (SNIC) at High Performance Computing Center North (HPC2N).
Funding
This work was supported in part by SecurityLink and by the SURPRISE project funded by the Swedish Foundation for Strategic Research (SSF). Open access funding provided by Linköping University.
Author information
Authors and Affiliations
Contributions
Both authors have contributed to this work. Both authors read and approved the final manuscript.
Corresponding author
Ethics declarations
Ethics approval and consent to participate
Not applicable.
Consent for publication
Not applicable.
Competing interests
The authors declare that they have no competing interests.
Additional information
Publisher’s Note
Springer Nature remains neutral with regard to jurisdictional claims in published maps and institutional affiliations.
Ashkan Kalantari produced this work while working as a Postdoctoral researcher in the Department of Electrical and Computer Engineering (ISY), Link\"oping University, Sweden.
Rights and permissions
Open Access This article is distributed under the terms of the Creative Commons Attribution 4.0 International License(http://creativecommons.org/licenses/by/4.0/), which permits unrestricted use, distribution, and reproduction in any medium, provided you give appropriate credit to the original author(s) and the source, provide a link to the Creative Commons license, and indicate if changes were made.
About this article
Cite this article
Kalantari, A., Larsson, E.G. Statistical test for GNSS spoofing attack detection by using multiple receivers on a rigid body. EURASIP J. Adv. Signal Process. 2020, 8 (2020). https://doi.org/10.1186/s136340200663z
Received:
Accepted:
Published:
DOI: https://doi.org/10.1186/s136340200663z
Keywords
 Global navigation satellite systems (GNSS)
 Spoofing
 Generalized likelihood ratio test (GLRT)