COMPUTER IMPLEMENTED METHOD, DATA PROCESSING APPARATUS, COMPUTER PROGRAM PRODUCT, AND COMPUTER READABLE STORAGE MEDIUM FOR DETECTING GLOBAL NAVIGATION SATELLITE SYSTEM SIGNAL SPOOFING - Patent application
The method addresses the challenge of detecting zero-delay SCER attacks in GNSS by using partial correlation metrics to compare predictable and unpredictable signal portions, enhancing the detection of spoofing attacks in GNSS systems.
Patent Information
- Application Number
- JP2023505682
- Authority / Receiving Office
- JP · JP
- Patent Type
- Patents
- Current Assignee / Owner
- Priority Date
- 2020-07-31
- Filing Date
- 2021-07-12
- Publication Date
- 2025-04-10
- Estimated Expiration
- 2041-07-12
AI Technical Summary
Existing methods for detecting zero-delay SCER attacks in Global Navigation Satellite Systems (GNSS) face challenges in accurately identifying spoofing signals, particularly due to the spoofer's ability to synchronize signals with near zero delay.
A computer-implemented method that involves digitizing and tracking GNSS signals from multiple satellites, extracting sample sequences of predictable and unpredictable portions, calculating partial correlations, and using specific metrics to compare these correlations and detect spoofing attacks.
The proposed method effectively detects GNSS signal spoofing by leveraging partial correlation metrics, achieving better performance than gain-based test metrics, and providing robust detection capabilities even under conditions of varying signal power and attack types.
Smart Images

Figure 0007660188000027 
Figure 0007660188000028 
Figure 0007660188000029
Abstract
Description
[Technical field]
[0001] The present invention relates to a computer-implemented method for detecting Global Navigation Satellite System (GNSS) signal spoofing, and further to a data processing apparatus for doing so, as well as a computer program product and computer readable storage medium containing instructions therefor. [Background technology]
[0002] A Global Navigation Satellite System (GNSS) spoofing attack is an intentional interference aimed at manipulating the Position, Velocity and Time (PVT) of a target GNSS receiver. Galileo recently adopted the Open Service Navigation Message Authentication (OSNMA) feature (Non-Patent Document 1). In this feature, the E1B signal component transmitted by Galileo satellites contains unpredictable bits to enable GNSS receivers to detect spoofing attacks.
[0003] Types of spoofing attacks are disclosed in Non-Patent Document 2. More specifically, a Security Code Estimation and Replay (SCER) attack is disclosed that includes two steps. First, the spoofer tracks the received signals from GNSS satellites and estimates the value of the unpredictable bit for each satellite in view. Second, the spoofer generates a set of GNSS signals that are transmitted to a target GNSS receiver to control the tracking loop and thus the user position.
[0004] Generating an SCER attack is not an easy task for a spoofer, since he must synchronize the spoofed signal with the authentic signal. If the two signals are not aligned with each other in the time domain when the spoofer launches the attack, it is possible for it to be detected at the receiver using the target's receiver clock. This occurs because the stability of receiver clocks is well known, and high variations in short-term clock offsets during the PVT phase are known side effects that can be caused by a spoofer. Therefore, to perform an SCER attack and avoid being detected by the receiver clock, a spoofer may perform a zero-delay attack, which is based on transmitting a signal that is substantially synchronized with the authentic signal received by the target's receiver. This allows the spoofer to take control of the target's receiver.
[0005] Non-Patent Document 3 proposes the use of Navigation Message Authentication (NMA) to protect against replay attacks. In this method, the receiver stores the first sample of every unpredictable bit, thus creating a sequence with a lower correlation gain if the tracked signal is replayed by a spoofer. In other words, this method measures the gain degradation when tracking unpredictable bits. In this disclosure, there is a simple proposal to compare the gain based on an unpredictable sequence with the gain based on a predictable sequence as a test statistic for detecting zero-delay attacks, but there is no disclosure regarding the detection probability of such a test statistic.
[0006] US Patent No. 5,399,633 discloses a method for combating GNSS spoofing by triggering an indicator when anomalies such as GNSS bit flips or unexpected signal correlation profiles are identified.
[0007] Other methods for detecting GNSS signal spoofing are also known in the art, such as those disclosed in US Pat. No. 5,399,623 and US Pat. No. 5,499,633, which rely on comparing the GNSS signal with information obtained from alternative sources.
[0008] Patent Document 2 discloses a method for detecting GNSS signal spoofing. The method includes providing information to a wireless device that enables the wireless device to determine a navigation data message from a reference network. The method further includes receiving navigation data from the GNSS network and comparing the navigation data from the GNSS network with navigation data derived from the reference network to determine whether one or more of the GNSS signals are spoofed. US Pat. No. 5,399,433 discloses a method for detecting GNSS signal spoofing by comparing a first GNSS signal with a second, non-GNSS signal and using a threshold to detect signal spoofing. [Prior art documents] [Patent documents]
[0009] [Patent Document 1] US Patent Application Publication No. 2011 / 102259 [Patent Document 2] U.S. Pat. No. 7,956,803 [Patent Document 3] European Patent Application Publication No. 3 495 848 [Non-patent literature]
[0010] [Non-Patent Document 1] Fernandez-Hernandez, I., Rijmen, V., Seco-Granados, G., Simon, J., Rodriguez, I., & Calle, J.D. (2016)´´A Navigation Message Authentication Proposal for the Galileo Open Service´´Journal of the Insitute of Navigation(spring), pp.85-102 [Non-Patent Document 2] Humphreys, Todd E.´´Detection strategy for cryptographic GNSS anti-spoofing´´IEEE Transactions on Aerospace and Electronic Systems 49, no. 2(2013), 1073~1090 [Non-Patent Document 3] Fernandez-Hernandez, Ignacio, and Gonzalo Seco-Granados, "Galileo NMA signal unpredictability and anti-replay protection", 2016 International Conference on Localization and GNSS (ICL-GNSS), IEEE, June 28, 2016. Summary of the Invention [Problem to be solved by the invention]
[0011] It is an object of the present invention to provide an improved method for detecting GNSS signal spoofing, in particular a zero-delay SCER attack. [Means for solving the problem]
[0012] This object is achieved according to the present invention with a computer implemented method for detecting Global Navigation Satellite System (GNSS) signal spoofing, the method comprising the steps of: a) digitizing, acquiring and tracking, at a receiver, a GNSS signal from at least one GNSS satellite, the GNSS signal comprising a predictable portion and an unpredictable portion, the predictable portion comprising predictable bits and the unpredictable portion comprising unpredictable bits; and b) acquiring, by the receiver, a sample sequence y* of the predictable portion of the GNSS signal. pred (n) and the sample sequence y* of the unpredictable part unpred (n); c) verifying, by the receiver, the value of the unpredictable bit from which the unpredictable sample sequence is extracted; and d) verifying, by the receiver, a first partial correlation B′ between the unpredictable sample sequence and the locally stored GNSS signal replica x(n). unpred (k), and a second partial correlation B´ between the predictable sample sequence and the locally stored GNSS signal replica x(n) pred (k)
number
number
number
[0013] In one embodiment of the present invention, step b) is to use as the unpredictable sample sequence a sample sequence y* of the leading portion of the unpredictable bits. unpred (n) as a predictable sample sequence; and storing a sample sequence y* of a later part (i.e., any other part except the initial part) such as a tail part of the unpredictable bit as a predictable sample sequence. pred (n) or storing the sample sequence y* of the leading portion of the unpredictable bits as the unpredictable sample sequence. unpred storing the predictable bit sample sequence y* as the predictable sample sequence; pred (n).
[0014] In one embodiment of the present invention, W u,d is the duration of a single sample sequence of the stored unpredictable sample sequence (i.e., the duration of the sample taken at the beginning of the unpredictable bit), and W p,dW is the duration of a single sample sequence of the stored unpredictable sample sequence (i.e., the duration of a sample taken at the end of the unpredictable bit, or from any other part of the unpredictable or predictable bit). u,d and / or W p,d is preferably greater than 0.05 ms, preferably greater than 0.1 ms, more preferably greater than 0.12 ms, and less than 1 ms, preferably less than 0.75 ms, more preferably less than 0.6 ms. The most preferred duration of the stored samples is between 0.125 ms and 0.5 ms.
[0015] In one embodiment of the invention, step b) comprises storing a sample sequence representing at least a portion of at least 50 bits, preferably at least 100 bits, more preferably at least 150 bits, most preferably at least 200 bits for the unpredictable samples and / or the predictable samples.
[0016] In one embodiment of the present invention, the predefined threshold is based on the cumulative density function of the metric R under the hypothesis that the GNSS signal is genuine, and preferably the predefined threshold is set to a value that results in a false alarm probability of 0.02.
[0017] In one embodiment of the present invention, step f) preferably comprises authenticating the GNSS signal when signal spoofing is not detected by: authenticating the GNSS signal when a predefined metric of the GNSS signal is below a predefined threshold; and detecting GNSS signal spoofing when a predefined metric of the GNSS signal is above a predefined threshold.
[0018] In one embodiment of the present invention, step a) comprises receiving GNSS signals from at least four different GNSS satellites, the GNSS signals comprising spreading codes and satellite data, the satellite data comprising an unpredictable portion, and the method further comprises g) calculating, by the receiver, a time of arrival of the GNSS signals from the spreading codes; and h) calculating, by the receiver, a position, velocity and time of the satellites by demodulating the satellite data.
[0019] In one embodiment of the present invention, step f) preferably comprises authenticating the GNSS signal when signal spoofing is not detected by: authenticating the GNSS signal when a predetermined metric of the GNSS signal is below a predetermined threshold; and detecting GNSS signal spoofing when a predetermined metric of the GNSS signal is above a predetermined threshold; and steps g) and h) are only performed when at least four GNSS signals from at least four different GNSS satellites are authenticated.
[0020] In one embodiment of the present invention, step b) comprises deriving a sample sequence y* of the unpredictable part of the GNSS signal based on randomly selected unpredictable bits. unpred or step d) comprises storing a first partial correlation B′ between the unpredictable sample sequence and the locally stored GNSS signal replica x(n) based on a randomly selected subset of the unpredictable sample sequence. unpred The method includes the step of calculating (k).
[0021] This object is achieved according to the invention with a data processing device, in particular a GNSS signal receiver, comprising means for carrying out the above mentioned method.
[0022] This object is achieved according to the invention with a computer program product comprising instructions which, when said program is executed by a computer, cause the computer to carry out the method described above.
[0023] This object is achieved according to the present invention with a computer readable storage medium containing instructions which, when executed by a computer, cause the computer to carry out the above-mentioned method.
[0024] It will be readily understood that one or more of the above embodiments can be readily combined with one another.
[0025] We have realized that in a zero-latency SCER attack, the spoofer needs to estimate the unpredictable bits introduced by OSNMA with nearly zero latency, so the spoofer introduces a small distortion into the signal, which forms the basis of our GNSS signal spoofing detection method.
[0026] More specifically, due to the fact that the spoofer cannot know the value of the unpredictable bit in advance, the signal transmitted by the spoofer contains some errors, especially in the first microseconds of the unpredictable bit. The inventors have realized that this error can be detected by calculating a first partial correlation between the unpredictable sample sequence (especially at the beginning of the unpredictable bit) and the corresponding local replica together with a second partial correlation between the predictable sample sequence (especially at the end of the unpredictable bit) and the corresponding local replica. In particular, various metrics are defined to compare the first and second correlations, which indicate (compared to a threshold) whether the signal under analysis is regenerated (i.e., spoofed) or genuine.
[0027] It has been found (as explained in more detail below) that the metric according to the invention (i.e., based on partial correlation) achieves better results than the gain-based test metric proposed in "Galileo NMA signal unpredictability and anti-replay protection" by Fernandez-Hernandez, Ignacio, and Gonzalo Seco-Granados, 2016 International Conference on Localization and GNSS (ICL-GNSS), IEEE, 28 June 2016. A possible reason for the improved performance is that the partial correlation is complex-valued, whereas the gain (which is derived from the partial correlation) is real-valued, and therefore provides less information about the received signal.
[0028] Using a trailing portion of unpredictable bits as a predictable sample sequence is beneficial as it allows time-dependent signal impairment variations (eg, multipath or unintentional interference) to be minimized in this manner.
[0029] Furthermore, using only randomly selected unpredictable bits or randomly selected stored unpredictable sample sequences improves the robustness of the detection capability of the GNSS signal spoofing method and avoids a spoofer relying on knowledge of which unpredictable bits are used in the detection method. [Brief description of the drawings]
[0030] The present invention is further explained by the following description and the accompanying drawings. [Figure 1] FIG. 1 illustrates a representative example of a spoofing attack against one satellite. [Diagram 2] FIG. 2 is a flow chart illustrating a GNNS signal spoofing detection method according to the present invention. [Figure 3A] FIG. 1 illustrates three different types of zero-delay SCER attacks. [Figure 3B] FIG. 1 illustrates three different types of zero-delay SCER attacks. [Figure 3C] FIG. 1 illustrates three different types of zero-delay SCER attacks. [Figure 4] Probability of detection vs. number of unpredictable bits for a false alarm probability of 0,02. In the top plot, the user and the spoofer receive the signal with the same power. In the bottom plot, the spoofer has a 3 dB advantage. [Diagram 5] Probability of detection versus number of unpredictable bits for a false alarm probability of 0.02. The spoofed signal is received with 3 dB more power than the real signal. [Figure 6] Figure 1 shows the probability of detection versus the number of unpredictable bits for a false alarm probability of 0.02 and different window lengths (window length 0.125ms in the top plot, window length 0.500ms in the bottom plot). The spoofer has a 3dB advantage over the user. [Figure 7] Figure 1 shows a comparison of the probability density function (upper plot) and the false alarm probability (lower plot) under the null hypothesis of the metric R3, and a comparison of the false alarm probability Pfa obtained from a Monte Carlo simulation with the theoretical false alarm probability Pfa based on the Rayleigh equation. DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS
[0031] Description of the invention The present invention will be described with respect to particular embodiments and with reference to certain drawings but the invention is not limited thereto but only by the claims. The drawings described are only schematic and are non-limiting. In the drawings, the size of some of the elements may be exaggerated and not drawn to scale for illustrative purposes. The dimensions and relative dimensions do not necessarily correspond to reductions to actual implementations of the invention.
[0032] Moreover, the terms first, second, third, etc. in the specification and claims are used to distinguish between similar elements and are not necessarily intended to describe a sequential or chronological order. These terms are interchangeable under appropriate circumstances, and embodiments of the invention may be performed in sequences other than those described or illustrated herein.
[0033] Moreover, the terms upper, lower, upward, downward, and the like are used in the specification and claims for descriptive purposes. The terms so used are interchangeable under appropriate circumstances, and the embodiments of the invention described herein can be practiced in orientations other than those described or illustrated herein.
[0034] Moreover, various embodiments, although referred to as "preferred," should not be construed as limiting the scope of the invention but as exemplary ways in which the invention may be practiced.
[0035] Figure 1 shows a representative example of a spoofing attack against one satellite 10, and Table 1 below provides a definition of each parameter shown in Figure 1. A Global Navigation Satellite System (GNSS) satellite 10 broadcasts a GNSS signal that is received by both a spoofer 20 and a GNSS receiver 30. The spoofer 20 then generates and broadcasts its own GNSS signal to control the GNSS receiver 30. [Table 1] Table 1: Parameter definitions for a spoofed zero-delay attack on GNSS signals with unpredictable symbols.
[0036] In general, spoof detection is a binomial hypothesis testing problem that can be modeled under two hypotheses: either the spoofer is present (H1) or it is not present (H0) as follows:
number
[0037] Since the present invention is primarily focused on zero-delay security code estimation and recovery (SCER) attacks, we assume that the spoofer is d,l =f d,p and τ l = τ p Use A p and φ p is β l and φ l We assume that the spoofer can vary the spoofed signal amplitude β l Control the A pWe assume that the carrier phase measurements cannot be aligned to the real value, since aligning the carrier phase measurements requires a very high level of accuracy. There are two further model assumptions. First, we assume that the receiver is tracking the genuine signal at the beginning of the attack, i.e., the receiver starts up and performs acquisition in a controlled environment. Spoofing during acquisition is a relevant case, but in most cases the GNSS receiver is in the tracking phase. Second, we assume that in a zero-delay SCER attack, the spoofer does not force reacquisition of the signal. A spoofer that forces reacquisition to control the loop would need the signal to be lost for more than a minute to properly estimate the unpredictable bits from the start. Moreover, in these conditions, controlling the loop could cause cycle slips that could be detected by the GNSS receiver.
[0038] As mentioned above, the inventors have found that the weakness of the zero-delay attack is that the signal transmitted by the spoofer contains some errors in the first part of the unpredictable bits. In order to avoid being easily detected by the target receiver, the spoofer may mainly carry out three kinds of attacks, namely, the estimated value attack, the random value attack, and the zero value attack, as shown in Figures 3A to 3C.
[0039] An estimate attack is shown in Figure 3A. The spoofer tries to estimate the unpredictable bit sample by sample and introduces this estimate into the spoofed signal. By doing so, the first part of the bit contains some sign changes, since it is not feasible to obtain a reliable estimate of the bit, but after a reasonable number of samples the spoofer provides the actual value of the unpredictable bit.
[0040] A random value attack is shown in Figure 3B: a spoofer introduces a random value of 1 or -1 at the beginning of the bits for a short period of time, and if the spoofer has a reliable estimate of the value of the unpredictable bit, that value is included in the rest of the bits.
[0041] A zero-value attack is shown in Figure 3C. A spoofer introduces a value of 0 to the beginning of the bits for a short period of time, and if the spoofer guesses the value of an unpredictable bit, that value is included in the rest of the bits.
[0042] In FIG. 3A, FIG. 3B, and FIG. 3C, the period during which the spoofer generates random values or 0 is determined by the parameter W defined in Table 1. s Please note that.
[0043] 2 shows a flow chart illustrating a GNSS signal spoofing detection method 100 according to the present invention. In step 110, the GNSS receiver digitizes, acquires and tracks GNSS signals from at least one GNSS satellite, the GNSS signals comprising a predictable portion and an unpredictable portion, the predictable portion comprising predictable bits and the unpredictable portion comprising unpredictable bits. Methods for digitizing, acquiring and tracking GNSS signals are known in the art and will not be described further.
[0044] In step 120, the receiver calculates a sample sequence y* of the predictable portion of one or more tracked GNSS signals. pred (n) and the sample sequence y* of the unpredictable part unpred In the embodiment described below, the stored sequences are parts of the same unpredictable bits. In other words, the initial part of the unpredictable bits is the unpredictable sample sequence y* unpred (n)=y* beg (n), and the trailing unpredictable bits are stored as a predictable sample sequence y* pred (n)=y* end As mentioned above, a predictable sequence of samples is obtained from the unpredictable bits, but the non-initial (i.e., non-leading) portions of the unpredictable bits are usually correctly estimated by the spoofer and are therefore considered predictable.
[0045] In step 125, the receiver verifies the values of the unpredictable part of the signal (i.e. the values of the bits), i.e. the values of the unpredictable bits from which the unpredictable sample sequence is extracted. More specifically, it will be easily understood that while normally the values of all unpredictable bits are verified, the method according to the invention only requires that the values of at least the unpredictable bits from which the sample sequence is stored are verified. This allows to save the computational resources of the receiver. This verification of the unpredictable part can be performed by a GNSS authentication protocol, such as the OSNMA function of Galileo.
[0046] In step 130, the receiver calculates a first partial correlation between the unpredictable sample sequence and the locally stored GNSS signal replica and a second partial correlation between the predictable sample sequence and the locally stored GNSS signal replica. Preferably, step 130 is performed only after the unpredictable bit has been verified in step 125.
[0047] The partial correlations are calculated in step 132 using the following formula:
number
[0048] In the next step 134, B corresponding to the partial cross-correlation after removing the signs of the unpredictable bits is unpred (k) and B pred (k) is B unpred (k)=b(k)B´ unpred (k) and B pred (k)=b(k)B´ pred (k) is defined as follows: where b(k) is the unpredictable bit value (1,-1).
[0049] In step 140, the receiver uses the partial correlation after code removal to calculate one or more of several predefined metrics R. Several metrics are described below.
[0050] An intuitive way to detect spoofing is to use satellite code gain based on some unpredictable bits, which turns out to achieve better results than the gain-based test metric proposed in "Galileo NMA signal unpredictability and anti-replay protection" by Fernandez-Hernandez, Ignacio, and Gonzalo Seco-Granados, 2016 International Conference on Localization and GNSS (ICL-GNSS), IEEE, 28 June 2016. One way to make this comparison (i.e., gain comparison) is to use the partial correlation N b The first step is to calculate the ratio of the sums. Then the absolute value of the ratio between the two metrics is calculated.
number
[0051] If a spoofer is present, R1 should be close to 0; if a spoofer is not present, R1 should be close to 1.
[0052] However, one drawback of the metric R1 is that it can provide arbitrary values in H1 if the received signals contain spoofed and genuine signals with different phase values, and this behavior of different phase values is best represented in the complex part of the complex-valued partial correlation.
[0053] To solve this problem, the present invention relies on four other metrics R2-R5 that are based on comparing complex-valued partial correlations rather than real-valued gains. The first metric, R2, is shown below:
number
[0054] The idea behind R2 is that when no spoofer is present, R2 is close to 0, but when a spoofer is present, R2 is larger, which makes it easier to define the detection threshold.
[0055] An additional metric is R3, which consists in calculating the average of the differences between the initial and final partial correlations.
number
[0056] If R3 is a large value, then a spoofer is present, but if R3 is a small value, then a spoofer is not present.
[0057] Another interesting metric R4 deals with the comparison of the carrier-to-noise ratio (C / N0) estimate of the initial part of the unpredictable bits with the estimate of the other parts of the signal that are considered predictable. To estimate C / N0, the well-known Narrow-band Wide-band Power Ratio (NWPR) estimator can be used. Basically, that estimator requires evaluating the ratio between the wide-band power WBP of the signal and the narrow-band power NBP of the signal.
number
[0058] In the absence of spoofing attacks, the above metric should have a value close to 0, whereas in the presence of spoofer attacks, the magnitude of this metric should provide a larger value, so that this metric can be used to detect spoofing attacks. The final metric R5 uses only the phases of the initial and final partial correlations.
number
[0059] This metric can be used to detect spoofers, if the presence of a spoofed signal changes the phase of the received signal.
[0060] In step 150, the receiver compares the predefined metric R with a predefined threshold in order to detect GNSS signal spoofing. In practice, the threshold is set to obtain a predefined false alarm probability, for example 0.02, or any other desired value of false alarm probability. It will be readily understood that the threshold (and corresponding false alarm probability) may be different for each of the above-mentioned metrics R. For example, for metric R3, the threshold may be set to a value that results in a false alarm probability of 0.02, and the signal may be authenticated in step 152 when metric R3 is below the threshold, and may be considered a spoofed signal in step 154 when metric R3 is above the threshold.
[0061] In general, the predetermined threshold is the false alarm probability P fa = 0.02 and can be determined for each metric R by deriving the cumulative density function of metric R under the null hypothesis (i.e., no spoofers are present). A more detailed example is described below.
[0062] The method shown in Fig. 2 further comprises a step 160 in which the receiver calculates the time of arrival of the GNSS signal from the spreading code, and a step 170 in which the receiver calculates its position, velocity and time by demodulating the satellite data. This is typically done using GNSS signals from at least four different GNSS satellites, each GNSS signal comprising a spreading code and satellite data, the satellite data comprising an unpredictable portion. Preferably, steps 160 and 170 are only performed after the GNSS signals from at least four satellites have been authenticated in step 150.
[0063] It will be readily appreciated that in other embodiments, the predictable sample sequence may be obtained from other parts of the signal, for example from (parts of) the predictable bits and / or from other parts of the unpredictable bits (i.e. not the initial or final parts).
[0064] A spoofer who knows in advance which unpredictable bits and which parts of the unpredictable bits should be correlated can exploit this advantage: firstly, because he can perform a random value attack with variable power depending on the success or failure of the previous guess, and secondly, because he can modify the predictable correlation to spoof the detector. Both advantages can be mitigated by randomization of the correlation. In other words, in some embodiments, not all of the stored sample sequence needs to be used to calculate the metric R. For example, a randomized number of unpredictable bits is not used. This increases the robustness of the detection capability of the GNSS signal spoofing method, especially if the spoofer expects this kind of defense.
[0065] It will be appreciated that the above description focuses on a single spoof signal for just one satellite. However, the method can easily be used to detect multiple spoof signals simultaneously. In fact, as will be shown below, because the method according to the invention can detect a single spoof signal, it performs even better at detecting spoofs, since a spoofer would need to successfully spoof multiple satellite signals simultaneously if he wanted to consistently spoof a complete PVT solution.
[0066] In the following, a performance analysis is presented for different metrics in the presence of zero-delay attacks, where the R1 metric is used as a baseline comparison representing the prior art, and R2-R5 represent the present invention. Below are the results of the simulation of the spoof detection ability of the proposed R1-R5 metrics under the most relevant attack conditions. The presented results constitute the most difficult to detect spoofing scenario, in terms of spoofing power advantage and type of attack. The simulation parameters of the spoofing are given in Table 2 below. In terms of attack type, of the three aforementioned attacks, the inventors focus on the estimate attack to perform the presented simulations, since it provides an upper bound on the number of unpredictable bits required compared to the other two attacks. This attack consists in estimating the unpredictable bit sample per sample and introducing this estimation into the spoofed signal. The estimation of the unpredictable bits performed by the spoofer can be easily performed in the tracking phase by using the following formula:
number
[0067] By doing so, the spoofer obtains an estimate of the bits per m.
[0068] A variant of this attack consists in estimating the bit samples sample by sample, and then transmitting the bit estimates using a scalar coefficient depending on the attacker's confidence. This subcase has also been analyzed and does not differ significantly from the standard estimation attack.
[0069] We also evaluate the case where the spoofer has up to 5 dB C / N0 advantage over the receiver. With regard to the relative power between the spoofed and real signals, we evaluate the same power case and the +3 dB power case of the spoofed signal. The results are tested for AWGN channels with a realistic number of visualized GPS and Galileo satellites. In the simulations, we use a threshold that produces a false alarm probability equal to 0.02, as this provides a good benchmark for comparing the various metrics. [Table 2] Table 2: Parameterization of the spoofing simulation
[0070] In either case, the probability of spoof detection P d Under different combinations of these parameters, we obtain a different number of bits, N b It is measured in.
[0071] Figure 4 shows the probability of detecting a spoofing attack versus the number of unpredictable bits for a false alarm probability of 0.02 with a correlation of 250 ms per bit. The figures are based on estimate attacks and consider that the user receives both real and spoofed signals. In the top figure, the spoofer receives the signal from the satellite with the same power as the user, and in the bottom figure, the spoofer receives the signal with a higher power (3 dB) than the user. The figures show that the R2 and R3 techniques provide the best performance. If the spoofer has a 3 dB advantage over the user's receiver, the R2 and R3 detectors can detect the spoofing attack with a detection probability of 0.9 using 200 and 220 bits, respectively. However, if the spoofer receives the signal with the same power as the user receiver, the user receiver can detect the spoofing attack using 100 and 120 bits, respectively, using the R2 and R3 techniques. The R1 metric performs worse than all other metrics, especially for the unpredictable symbol N bNote that the number of
[0072] In the previous simulation, we consider that the user receives signals from the spoofer and the satellite with the same power. Nevertheless, in the upper plot of Fig. 5, we assume that the user receives a signal transmitted by the spoofer that is 3 dB larger than the signal transmitted by the satellite. In this scenario, the user receiver can detect the spoofing attack more easily than in the previous simulation. If the spoofer has a 3 dB advantage over the user's receiver and the user receives the same signal power from the spoofer and the satellite, the R3 metric requires 200 bits to detect the spoofing attack with a detection probability of 0.9 (Fig. 4, lower plot). However, if the user receives a signal from the spoofer that is 3 dB larger than the signal transmitted from the satellite, R3 requires only 65 bits to detect the spoofing attack with a detection probability of 0.9 (Fig. 5). In these conditions, the best detector is R3. It is worth mentioning that in this simulation, the performance of R1 is not so bad due to the fact that the user's receiver receives more power from the spoofer than from the satellite.
[0073] In Fig. 6 we analyze how the performance of the detector is affected by the use of different window lengths used to calculate the partial correlations: 0.125 ms (top) and 0.500 ms (bottom). Note that the case of a window length of 0.250 ms is shown in the bottom plot of Fig. 4. These correlations are much shorter than the standard 4 ms Galileo E1 code, but ensure that there is the necessary gain for detection even in the case of cross-correlation noise from other satellites. The results show that R3 provides very similar performance for different window lengths used to calculate the partial correlations, while the other metrics are more sensitive to this parameter. The metric R2 also shows promising performance in certain situations and is sensitive to the window length. If the window length is appropriate, it can provide very good performance. However, if the time window is too short or too long, the technique somewhat reduces the detection probability.
[0074] The conclusion from the simulation analysis is that the R2-R5 metrics (based on complex-valued partial correlation) perform significantly better than the R1 metric based on gain (i.e., a real value obtained from the complex-valued partial correlation). Moreover, among the proposed metrics, R3 is the best performing metric and is robust enough for all situations, provided that sufficient energy can be accumulated from the required bits. With a required number of bits of around 200 bits, the detector can detect a spoofing attack with a probability higher than 90%, even when the spoofer has a power advantage over the user receiver.
[0075] One remaining aspect of the implementation of the method is to define the unpredictable parts, symbols or bits of the GNSS signal. The current Galileo OSNMA protocol is aimed at authenticating satellite navigation data. We considered a baseline use case of OSNMA with two Message Authentication Code and Key (MACK) blocks, a 20-bit Message Authentication Code (MAC), a 96-bit key and 4 MACs per block. With this configuration, the receiver can have 80 unpredictable bits per MACK block for 15 seconds if the KEY bits are not taken into account, and about 160 bits for a similar time if the first 80 bits of the key are considered unpredictable. We can conclude that even if the key is predictable, the detector can be based on 30 or 45 seconds (i.e., 2 or 3 MACK blocks) to obtain 160 or 240 unpredictable bits. In light of the simulation results, it can be seen that (part of) the metric can work even in cases where the spoofer has an advantage. The receiver may decide to wait for two Galileo I / NAV subframes for a total of 60 seconds to increase the reliability of the metric, providing 320 unpredictable bits.
[0076] The R3 metric seems to be the most promising metric for detecting GNSS spoofing, so below an example of the calculation of its detection threshold γ is given. Spoofer detection boils down to the comparison of the metric R3 with the detection threshold, which distinguishes whether a user's receiver is spoofed or not. The detection threshold is influenced by the individual probability of a false alarm. P fa =1-cdf R3 (γ|H0)
[0077] where cdfR3(γ|H0) is the cumulative density function of the R3 metric.
[0078] The probability of a false alarm requires knowledge of the cumulative density function of R3 under the null hypothesis H0 (i.e., no spoofer is present). In the absence of a spoofer, the R3 metric closely resembles a Rayleigh distribution. This occurs because the values of the partial correlation at the beginning and end of a bit (or another predictable part of the signal) have substantially the same constant value when Gaussian noise is added. Thus, the terms inside the absolute value can be thought of as zero-mean complex Gaussian noise, and the metric R3 has a Rayleigh distribution. Exploiting the relationship between the Rayleigh distribution and the underlying Gaussian variables, the mean of the Rayleigh distribution is given by end The standard deviation of the partial correlation in (k) can be obtained. That is, the mean of the Rayleigh distribution is JPEG0007660188000022.jpg8153 is equal to σ B is B end (k) is the variance of (k). Therefore, the detection threshold γ can be defined as
number
[0079] Figure 7 compares the theoretical and simulated probability density functions (top plot) with the probability of false alarm (bottom plot) under the null hypothesis of metric R3. The figure shows that metric R3 is indeed well approximated by a Rayleigh distribution.
[0080] It will be readily appreciated that the above example of how to calculate the threshold for metric R3 to have a desired probability of false alarm can also be applied to other metrics. Furthermore, other thresholds not linked to a false alarm probability and / or not based on a cumulative density function of the metric may be used.
[0081] Although the method according to the invention has been described with reference to Galileo's OSNMA protocol, the invention should not be considered so limited and the proposed method can also be applied to other protocols.
[0082] Although aspects of the present disclosure have been described with respect to specific embodiments, it will be readily understood that these aspects may be embodied in other forms within the scope of the present invention as defined by the claims.
Claims
1. A computer-implemented method (100) for detecting Global Navigation Satellite System (GNSS) signal spoofing, the method comprising: a) digitizing, acquiring and tracking (110) at a receiver a GNSS signal from at least one GNSS satellite, the GNSS signal comprising a predictable portion and an unpredictable portion, the predictable portion comprising predictable bits and the unpredictable portion comprising unpredictable bits; b) detecting by the receiver a sample sequence y* of the predictable portion of the GNSS signal; pred (n) and the sample sequence y* of the unpredictable part unpred storing (120) (n); c) verifying (125) by the receiver the values of the unpredictable bits from which the unpredictable sample sequence is derived; d) a first partial correlation B′ between the unpredictable sample sequence and a locally stored GNSS signal replica x(n) by the receiver; unpred (k), and a second partial correlation B′ between the predictable sample sequence and the locally stored GNSS signal replica x(n). pred (k) [0010] and [0025] and calculating (130) b(k) is the value of the bit, B unpred,pred (k)=b(k)B′ unpred,pred removing (134) the signs of the first partial correlation and the second partial correlation by (k); e) calculating (140), by the receiver, a predetermined metric R from the first partial correlation and the second partial correlation, the predetermined metric R being: [0030] and f) comparing said predetermined metric with a predetermined threshold to detect GNSS signal spoofing (150); A method comprising:
2. Step b) is - unpredictable sample sequence y* unpred (n) is the sample sequence y* of the leading part of the unpredictable bits. beg (n) and storing a predictable sample sequence y* pred (n) the sample sequence y* of the part after the unpredictable bit, such as the tail part end storing (n); or - unpredictable sample sequence y* unpred (n) is the sample sequence y* of the leading part of the unpredictable bits. beg (n) and storing a predictable sample sequence y* pred (n) as the sample sequence of predictable bits y* end storing (n); The method of claim 1 , comprising:
3. W u,d is the duration of one of the stored unpredictable sample sequences, and W p,d 3. The method of claim 1, wherein x is the duration of one of the stored predictable sample sequences.
4. W u,d and / or W p,d 4. The method of claim 3, wherein is greater than 0.05 ms, preferably greater than 0.1 ms, more preferably greater than 0.12 ms, and less than 1 ms, preferably less than 0.75 ms, more preferably less than 0.6 ms.
5. 5. The method according to claim 1, wherein step b) comprises storing a sample sequence representing at least a portion of at least 50 bits, preferably at least 100 bits, more preferably at least 150 bits, most preferably at least 200 bits for the unpredictable samples and / or the predictable samples.
6. The method of claim 1 , wherein the predetermined threshold is based on a cumulative density function of the metric R under the hypothesis that the GNSS signal is genuine.
7. The method of claim 6 , wherein the predetermined threshold is set to a value that produces a false alarm probability of 0.
02.
8. Step f) preferably comprises the steps of: - authenticating (152) a GNSS signal when a predetermined metric of said GNSS signal falls below said predetermined threshold; - detecting GNSS signal spoofing when a predetermined metric of the GNSS signal exceeds said predetermined threshold (154); The method of claim 1 , further comprising the step of authenticating the GNSS signal when the GNSS signal is not detected by a GNSS peer.
9. and step a) comprises receiving GNSS signals from at least four different GNSS satellites, the GNSS signals comprising spreading codes and satellite data, the satellite data comprising the unpredictable portion, the method further comprising: g) calculating (160) a time of arrival of a GNSS signal from said spreading code by said receiver; h) calculating (170) by said receiver the position, velocity and time of the satellites by demodulating said satellite data; 9. The method of claim 1 , comprising:
10. Step f) preferably comprises the steps of: - authenticating (152) a GNSS signal when a predetermined metric of said GNSS signal falls below said predetermined threshold; - detecting GNSS signal spoofing when a predetermined metric of the GNSS signal exceeds said predetermined threshold (154); authenticating the GNSS signal when it is not detected by 10. The method of claim 9, wherein steps g) and h) are performed only if at least four GNSS signals from at least four different GNSS satellites are authenticated.
11. Step b) determining the sample sequence y* of the unpredictable portion of the GNSS signal based on randomly selected unpredictable bits. unpred or storing (n) Step d) determines the first partial correlation B′ between the unpredictable sample sequence and a locally stored GNSS signal replica x(n) based on a randomly selected subset of the unpredictable sample sequence. unpred The method of claim 1 , further comprising the step of calculating (k).
12. A data processing device, in particular a signal receiver such as a Global Navigation Satellite System, GNSS, satellite navigation device or a mobile communication device, comprising means for carrying out the method according to any one of the claims 1 to 11.
13. A computer program product comprising instructions which, when executed by a computer, cause the computer to carry out a method according to any one of claims 1 to 11.
14. A computer readable storage medium comprising instructions which, when executed by a computer, cause the computer to perform the method of any one of claims 1 to 11.
Citation Information
Patent Citations
Device and method to detect spoofing of a terminal
EP3495848A1
Digitally signed satellite radio navigation signals
JP2016531465A
Method and System for Optimizing Authentication of Radio Navigation Signals
JP2017517720A
Augmenting GNSS User Equipment to Improve Resistance to Spoofing
US20110102259A1
Cryptographically-secure autonomous detection of spoofed GNSS signals
US20180196141A1