GNSS Spoofing Detection and Mitigation Based on Maximum Likelihood Estimation
<p>MLE cost function in a scenario with eight authentic signals and eight spoofing ones.</p> "> Figure 2
<p>Three different cases when spoofing signals are present. The circles represent the PVT domains in which spoofing signals or authentic signals are present. The highest peak of the MLE cost function at <math display="inline"> <semantics> <msub> <mover accent="true"> <mi mathvariant="bold-italic">ρ</mi> <mo stretchy="false">^</mo> </mover> <mn>1</mn> </msub> </semantics> </math> is superimposed by the signal components in the area emphasized by the dashed lines. (<b>a</b>) <math display="inline"> <semantics> <msub> <mover accent="true"> <mi mathvariant="bold-italic">ρ</mi> <mo stretchy="false">^</mo> </mover> <mn>1</mn> </msub> </semantics> </math> is equal to <math display="inline"> <semantics> <msub> <mi mathvariant="bold-italic">ρ</mi> <mi>s</mi> </msub> </semantics> </math>; (<b>b</b>) <math display="inline"> <semantics> <msub> <mover accent="true"> <mi mathvariant="bold-italic">ρ</mi> <mo stretchy="false">^</mo> </mover> <mn>1</mn> </msub> </semantics> </math> is equal to <math display="inline"> <semantics> <msub> <mi mathvariant="bold-italic">ρ</mi> <mi>a</mi> </msub> </semantics> </math>; (<b>c</b>) <math display="inline"> <semantics> <msub> <mover accent="true"> <mi mathvariant="bold-italic">ρ</mi> <mo stretchy="false">^</mo> </mover> <mn>1</mn> </msub> </semantics> </math> is neither equal to <math display="inline"> <semantics> <msub> <mi mathvariant="bold-italic">ρ</mi> <mi>s</mi> </msub> </semantics> </math> nor to <math display="inline"> <semantics> <msub> <mi mathvariant="bold-italic">ρ</mi> <mi>a</mi> </msub> </semantics> </math>.</p> "> Figure 3
<p>MLE cost function after estimation-cancellation.</p> "> Figure 4
<p>Implementation architecture.</p> "> Figure 5
<p>Detection probabilities versus <math display="inline"> <semantics> <mrow> <mi>C</mi> <mo>/</mo> <msub> <mi>N</mi> <mn>0</mn> </msub> </mrow> </semantics> </math> for different numbers of satellites and a fixed false alarm probability <math display="inline"> <semantics> <mrow> <msub> <mi>P</mi> <mrow> <mi>f</mi> <mi>a</mi> </mrow> </msub> <mo>=</mo> <msup> <mn>10</mn> <mrow> <mo>-</mo> <mn>6</mn> </mrow> </msup> </mrow> </semantics> </math>. <math display="inline"> <semantics> <mrow> <mi>C</mi> <mo>/</mo> <msub> <mi>N</mi> <mn>0</mn> </msub> </mrow> </semantics> </math> of all of the spoofing signals are 50 dB-Hz. ’T’ represents the theoretical results. ’NC’ represents corresponding noncoherent integration results. ’EC’ represents the estimation-cancellation results.</p> "> Figure 6
<p>ROC curves for different numbers of satellites. <math display="inline"> <semantics> <mrow> <mi>C</mi> <mo>/</mo> <msub> <mi>N</mi> <mn>0</mn> </msub> </mrow> </semantics> </math> of all of the authentic signals are 31 dB-Hz, and those of the spoofing signals are 50 dB-Hz. ’T’ represents the theoretical results. ’NC’ represents corresponding noncoherent integration results. ’EC’ represents the estimation-cancellation results.</p> "> Figure 7
<p>Spoofing validation probabilities versus <math display="inline"> <semantics> <mrow> <mi>C</mi> <mo>/</mo> <msub> <mi>N</mi> <mn>0</mn> </msub> </mrow> </semantics> </math> for different numbers of satellites and <math display="inline"> <semantics> <mrow> <msub> <mi>P</mi> <mrow> <mi>F</mi> <mi>A</mi> </mrow> </msub> <mo>=</mo> <msup> <mn>10</mn> <mrow> <mo>-</mo> <mn>6</mn> </mrow> </msup> </mrow> </semantics> </math>.</p> "> Figure 8
<p>Detection probabilities versus code phase difference between spoofing and authentic signals for different numbers of satellites. <math display="inline"> <semantics> <mrow> <mi>C</mi> <mo>/</mo> <msub> <mi>N</mi> <mn>0</mn> </msub> </mrow> </semantics> </math> of authentic and spoofing signals are 45 dB-Hz and 50 dB-Hz, respectively.</p> "> Figure 9
<p>(<b>a</b>) Ratio metric of signal quality monitoring (SQM) in Scenario 2; (<b>b</b>) SSE of RAIM in Scenario 2; the red dashed line denotes the threshold.</p> "> Figure 10
<p>(<b>a</b>) Test statistics and threshold in Scenario 2; (<b>b</b>) Detection results in Scenario 2; results larger than 0.5 mean that there are evil signals. The red circles correspond to the results when seven signals are processed together, and the blue points correspond to the results when one signal is processed.</p> "> Figure 11
<p>(<b>a</b>) <math display="inline"> <semantics> <msub> <mi>r</mi> <mn>2</mn> </msub> </semantics> </math> in Scenario 2; results larger than four indicate that consistent signals are detected in the residual signal and the spoofing attack is validated; (<b>b</b>) Biases of the user clock offsets from the clock offset in Epoch 0: <math display="inline"> <semantics> <mrow> <mi>δ</mi> <msub> <mi>t</mi> <mi>u</mi> </msub> <mo>=</mo> <msub> <mi>t</mi> <mi>u</mi> </msub> <mrow> <mo>(</mo> <mi>t</mi> <mo>)</mo> </mrow> <mo>-</mo> <msub> <mi>t</mi> <mi>u</mi> </msub> <mrow> <mo>(</mo> <mn>0</mn> <mo>)</mo> </mrow> </mrow> </semantics> </math>. The green trace shows the receiver’s unspoofed response; the blue trace shows the receiver’s spoofed response; and the red dots show the recovered results.</p> "> Figure 12
<p>(<b>a</b>) Ratio metric of SQM in Scenario 2; (<b>b</b>) SSE of RAIM in Scenario 2; the red dashed line denotes the threshold.</p> "> Figure 13
<p>(<b>a</b>) Test statistics and threshold in Scenario 6; (<b>b</b>) Detection results in Scenario 6; results larger than 0.5 mean that there are evil signals. The red circles correspond to the results when seven signals are processed together, and the blue points correspond to the results when one signal is processed.</p> "> Figure 14
<p>(<b>a</b>) <math display="inline"> <semantics> <msub> <mi>r</mi> <mn>2</mn> </msub> </semantics> </math> in Scenario 6; results larger than four indicate that consistent signals are detected in the residual signals and the spoofing attack is validated; (<b>b</b>) Biases of user position in the z-coordinate from the position in Epoch 0: <math display="inline"> <semantics> <mrow> <mi>δ</mi> <msub> <mi>z</mi> <mi>u</mi> </msub> <mo>=</mo> <msub> <mi>z</mi> <mi>u</mi> </msub> <mrow> <mo>(</mo> <mi>t</mi> <mo>)</mo> </mrow> <mo>-</mo> <msub> <mi>z</mi> <mi>u</mi> </msub> <mrow> <mo>(</mo> <mn>0</mn> <mo>)</mo> </mrow> </mrow> </semantics> </math>. The green trace shows the receiver’s unspoofed response; the blue trace shows the receiver’s spoofed response; and the red dots show the recovered results.</p> ">
Abstract
:1. Introduction
2. Signal Model
- is the sampling frequency;
- M stands for the number of in-view satellites;
- K stands for the number of samples;
- is the amplitude of the i-th satellite signal;
- is the navigation data of the i-th signal at time t;
- is the pseudorandom code of the i-th signal at time t;
- is the propagation delay of the i-th signal;
- is the Doppler frequency offset of the i-th signal;
- is the carrier phase of the i-th signal;
- is complex zero-mean additive white Gaussian noise (AWGN) with variance .
- is the measurement vector;
- can be expressed as , being , and ;
- , . During the observation period, and can be regarded as constants under static or low dynamic condition;
- represents complex amplitudes of the received signals;
- is the AWGN vector, and each element has a variance during the observation period.
3. Review on MLE-Based Positioning
3.1. Maximum Likelihood Estimation
3.2. Position Estimation
- c is the speed of light;
- is the coordinates of the i-th satellite in Earth-centered earth-fixed (ECEF) coordinate system;
- is the coordinates of the user in ECEF coordinate system;
- is the offset of the user clock from system time;
- is the offset of the i-th satellite clock from system time;
- denotes ionospheric and tropospheric delays and errors induced by relativistic effects; these errors can be eliminated by models or differential techniques;
- is the frequency of the transmitted satellite signals;
- is the velocity of the i-th satellite in ECEF coordinate system;
- is the velocity of the user in ECEF coordinate system;
- is the unit vector pointing along the line of sight from the user to the i-th satellite and can be expressed as Equation (10);
- is the drift rate of the user clock relative to system time;
- is the drift rate of the i-th satellite clock relative to system time.
4. MLE-Based GNSS Anti-Spoofing Method
4.1. Model of Spoofing Signal
4.2. Estimation-Cancellation Approach
4.3. Spoofing Validation and Recovery of Navigation Solution
4.4. Implementation Architecture
5. Simulation Results
6. Performance Evaluation with TEXBAT
6.1. Scenario 2 of TEXBAT
6.2. Scenario 6 of TEXBAT
7. Conclusions
Acknowledgments
Author Contributions
Conflicts of Interest
Abbreviations
GNSS | Global navigation satellite system |
MLE | Maximum likelihood estimation |
GLRT | Generalized likelihood ratio test |
PVT | Position, velocity, and time |
GPS | Global Positioning System |
PMU | Phasor measurement units |
INS | Inertial navigation system |
SSSC | Spread spectrum security code |
NMA | Navigation message authentication |
SQM | Signal quality monitoring |
RAIM | Receiver autonomous integrity monitoring |
TEXBAT | Texas Spoofing Test Battery |
AWGN | Additive white Gaussian noise |
ECEF | Earth-centered Earth-fixed |
ROC | Receiver operating characteristic |
SCER | Security code estimation and replay |
References
- Cavaleri, A.; Motella, B.; Pini, M.; Fantino, M. Detection of spoofed GPS signals at code and carrier tracking level. In Proceedings of the 2010 5th ESA Workshop on Satellite Navigation Technologies and European Workshop on GNSS Signals and Signal Processing (NAVITEC), Noordwijk, The Netherlands, 8–10 December 2010; pp. 1–6. [Google Scholar]
- Wen, H.; Huang, P.Y.; Dyer, J.; Archinal, A.; Fagan, J. Countermeasures for GPS signal spoofing. In Proceedings of the 18th International Technical Meeting of the Satellite Division of The Institute of Navigation (ION GNSS 2005), Long Beach, CA, USA, 13–16 September 2005; pp. 13–16. [Google Scholar]
- Humphreys, T.E.; Ledvina, B.M.; Psiaki, M.L.; O’Hanlon, B.; Kintner, P.M. Assessing the spoofing threat: Development of a portable GPS civilian spoofer. In Proceedings of the ION GNSS International Technical Meeting of the Satellite Division, Savannah, GA, USA, 16–19 September 2008. [Google Scholar]
- Warner, J.S.; Johnston, R.G. A simple demonstration that the global positioning system (GPS) is vulnerable to spoofing. J. Secur. Adm. 2002, 25, 19–27. [Google Scholar]
- Bhatti, J.; Humphreys, T.E. Hostile control of ships via false GPS signals: Demonstration and detection. Navigation 2017, 64, 51–66. [Google Scholar] [CrossRef]
- Shepard, D.P.; Humphreys, T.E.; Fansler, A.A. Evaluation of the vulnerability of phasor measurement units to GPS spoofing attacks. Int. J. Crit. Infrastruct. Prot. 2012, 5, 146–153. [Google Scholar] [CrossRef]
- Montgomery, P.Y.; Humphreys, T.E.; Ledvina, B.M. A multi-antenna defense: Receiver-autonomous GPS spoofing detection. Inside GNSS 2009, 4, 40–46. [Google Scholar]
- Jafarnia-Jahromi, A.; Broumandan, A.; Nielsen, J.; Lachapelle, G. GPS spoofer countermeasure effectiveness based on signal strength, noise power, and C/N0 measurements. Int. J. Satell. Commun. Netw. 2012, 30, 181–191. [Google Scholar] [CrossRef]
- Tanil, C.; Khanafseh, S.; Joerger, M.; Pervan, B. Kalman filter-based INS monitor to detect GNSS spoofers capable of tracking aircraft position. In Proceedings of the IEEE/ION PLANS Meeting, Savannah, GA, USA, 11–14 April 2016; pp. 1027–1034. [Google Scholar]
- Psiaki, M.L.; O’Hanlon, B.W.; Bhatti, J.; Shepard, D.P.; Humphreys, T.E. GPS spoofing detection via dual-receiver correlation of military signals. IEEE Trans. Aerosp. Electron. Syst. 2013, 49, 2250–2267. [Google Scholar] [CrossRef]
- Scott, L. Anti-spoofing and authenticated signal architectures for civil navigation systems. In Proceedings of the 16th International Technical Meeting of the Satellite Division of The Institute of Navigation (ION GPS/GNSS 2003), Portland, OR, USA, 9–12 September 2003; pp. 1542–1552. [Google Scholar]
- Kerns, A.J.; Wesson, K.D.; Humphreys, T.E. A blueprint for civil GPS navigation message authentication. In Proceedings of the IEEE/ION PLANS Meeting, Monterey, CA, USA, 5–8 May 2014; pp. 262–269. [Google Scholar]
- Humphreys, T.E. Detection strategy for cryptographic GNSS anti-spoofing. IEEE Trans. Aerosp. Electron. Syst. 2013, 49, 1073–1090. [Google Scholar] [CrossRef]
- Wesson, K.D.; Shepard, D.P.; Humphreys, T.E. Straight talk on anti-spoofing. GPS World 2012, 23, 32–39. [Google Scholar]
- Manfredini, E.G.; Dovis, F.; Motella, B. Validation of a signal quality monitoring technique over a set of spoofed scenarios. In Proceedings of the 7th ESA workshop on satellite navigation technologies and European workshop on GNSS signals and signal processing 2014 (NAVITEC 2014), Noordwijk, The Netherlands, 3–5 December 2014. [Google Scholar]
- Juang, J. Analysis of global navigation satellite system position deviation under spoofing. IET Radar Sonar Navig. 2009, 3, 1–7. [Google Scholar] [CrossRef]
- Xie, G. Principles of GPS and Receiver Design; Publishing House of Electronics Industry: Beijing, China, 2009. [Google Scholar]
- Broumandan, A.; Jafarnia-Jahromi, A.; Dehghanian, V.; Nielsen, J.; Lachapelle, G. GNSS spoofing detection in handheld receivers based on signal spatial correlation. In Proceedings of the Position Location and Navigation Symposium (PLANS), Myrtle Beach, SC, USA, 23–26 April 2012; pp. 479–487. [Google Scholar]
- Psiaki, M.L.; Powell, S.P.; O’Hanlon, B.W. GNSS spoofing detection using high-frequency antenna motion and carrier-phase data. In Proceedings of the 26th International Technical Meeting of the Satellite Division of the Institute of Navigation (ION GNSS+ 2013), Nashville, TN, USA, 16–20 September 2013; pp. 2949–2991. [Google Scholar]
- Nielsen, J.; Broumandan, A.; Lachapelle, G. GNSS Spoofing Detection for Single Antenna Handheld Receivers. Navig. J. Inst. Navig. 2011, 58, 335–344. [Google Scholar] [CrossRef]
- Broumandan, A.; Jafarnia-Jahromi, A.; Lachapelle, G. Spoofing detection, classification and cancellation (SDCC) receiver architecture for a moving GNSS receiver. GPS Solut. 2014, 19, 475–487. [Google Scholar] [CrossRef]
- Psiaki, M.L.; Humphreys, T.E. GNSS spoofing and detection. Proc. IEEE 2016, 104, 1258–1270. [Google Scholar] [CrossRef]
- Closas, P.; Fernndez-Prades, C.; Fernndez-Rubio, J. Maximum likelihood estimation of position in GNSS. IEEE Signal Process. Lett. 2007, 14, 359–362. [Google Scholar] [CrossRef]
- Parkinson, B.W. Global Positioning System: Theory and Applications; AIAA: Reston, VA, USA, 1996. [Google Scholar]
- Kay, S.M. Fundamentals of Statistical Signal Processing: Detection Theory; Prentice Hall: Upper Saddle River, NJ, USA, 1998. [Google Scholar]
- Kaplan, E.D. Understanding GPS: Principles and Applications; Artech House: Norwood, MA, USA, 1996. [Google Scholar]
- Borio, D.; Akos, D. Noncoherent integrations for GNSS detection: Analysis and comparisons. IEEE Trans. Aerosp. Electron. Syst. 2009, 45, 360–375. [Google Scholar] [CrossRef]
- Simon, M.K. Probability Distributions Involving Gaussian Random Variables: A Handbook for Engineers and Scientists; Springer Science & Business Media: Berlin, Germany, 2007. [Google Scholar]
- Gao, G.X.; Enge, P. How many GNSS satellites are too many? IEEE Trans. Aerosp. Electron. Syst. 2012, 48, 2865–2874. [Google Scholar] [CrossRef]
- Humphreys, T.E.; Bhatti, J.A.; Shepard, D.P.; Wesson, K.D. The Texas spoofing test battery: Toward a standard for evaluating GPS signal authentication techniques. In Proceedings of the 25th International Technical Meeting of The Satellite Division of the Institute of Navigation (ION GNSS+ 2012), Nashville, TN, USA, 17–21 September 2012; pp. 3569–3583. [Google Scholar]
No. | Case | x | y | r | Detection | Validation | |||||
---|---|---|---|---|---|---|---|---|---|---|---|
spf | auth | spf | auth | ||||||||
1 | Case 1 | >4 | >4 | = | =0 | >4 | = | >4 | >4 | √ | √ |
2 | >4 | >4 | = | =0 | ≤4 | 1 | >4 | ≤4 | √ | × | |
3 | >4 | ≤4 | = | =0 | ≤4 | >4 | ≤4 | √ | × | ||
4 | Case 2 | >4 | >4 | = | >4 | =0 | = | >4 | >4 | √ | √ |
5 | >4 | >4 | = | ≤4 | =0 | >4 | ≤4 | √ | × | ||
6 | ≤4 | >4 | = | ≤4 | =0 | >4 | ≤4 | √ | × | ||
7 | Case 3 | >4 | ≤4 | ≠ | ≠0 | ≤4 | ≤4 | √ | × | ||
8 | ≤4 | >4 | ≠ | ≤4 | ≠0 | ≤4 | √ | × | |||
9 | ≤4 | ≤4 | ≤4 | ≤4 | ≤4 | ≤4 | √ 2 | × |
Num | Range (m) | Step (m) |
---|---|---|
1 | −50 ∼ 50 | 2 |
2 | −750 ∼ 750 | 50 |
M | (%) | (%) | (%) | (%) | |
---|---|---|---|---|---|
ds2 | 7 | 79.7 | 97.3 | 17.6 | 82.5 |
ds3 | 6 | 77.3 | 84.9 | 7.6 | 77.3 |
ds4 | 8 | 64.9 | 78.7 | 13.8 | 61.2 |
ds5 | 6 | 69.4 | 93.5 | 24.1 | 49.0 |
ds6 | 6 | 46.4 | 81.8 | 35.4 | 71.5 |
ds7 | 7 | 74.7 | 82.0 | 7.3 | 72.2 |
© 2017 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 (http://creativecommons.org/licenses/by/4.0/).
Share and Cite
Wang, F.; Li, H.; Lu, M. GNSS Spoofing Detection and Mitigation Based on Maximum Likelihood Estimation. Sensors 2017, 17, 1532. https://doi.org/10.3390/s17071532
Wang F, Li H, Lu M. GNSS Spoofing Detection and Mitigation Based on Maximum Likelihood Estimation. Sensors. 2017; 17(7):1532. https://doi.org/10.3390/s17071532
Chicago/Turabian StyleWang, Fei, Hong Li, and Mingquan Lu. 2017. "GNSS Spoofing Detection and Mitigation Based on Maximum Likelihood Estimation" Sensors 17, no. 7: 1532. https://doi.org/10.3390/s17071532
APA StyleWang, F., Li, H., & Lu, M. (2017). GNSS Spoofing Detection and Mitigation Based on Maximum Likelihood Estimation. Sensors, 17(7), 1532. https://doi.org/10.3390/s17071532