Satellite navigation anti-spoofing method and system based on multi-dimensional cooperative detection
By employing a multi-dimensional collaborative detection method that combines satellite visibility, pseudorange rate, dual-satellite pseudorange difference, and receiver clock drift detection, the problem of easy omissions in single-detection methods in satellite navigation anti-spoofing technology is solved, achieving effective identification of spoofing signals and ensuring navigation accuracy.
Patent Information
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- BEIJING ZHONGJIE TIMES AVIATION TECH CO LTD
- Filing Date
- 2025-12-24
- Publication Date
- 2026-07-21
Smart Images

Figure CN121763317B_ABST
Abstract
Description
Technical Field
[0001] This invention relates to the field of precise positioning technology, specifically to a multi-dimensional collaborative detection method and system for satellite navigation anti-spoofing. Background Technology
[0002] Global Navigation Satellite Systems (GNSS), as a crucial national space infrastructure, provide positioning, navigation, and timing (PNT) services that are widely applied in key sectors such as transportation, energy, communications, and the military. Currently, four major global navigation systems have emerged: BeiDou (BDS), GPS, GLONASS, and Galileo. Among them, the BeiDou-3 system has achieved global networking, covering over 200 countries and regions worldwide, becoming a core supporting technology for safeguarding national economy, people's livelihoods, and national security.
[0003] With the widespread adoption of satellite navigation applications, the security risks posed by its signal propagation characteristics are becoming increasingly prominent. When satellite navigation signals travel from space to the ground, their power attenuates to below -120dBm, making them extremely weak and susceptible to human interference. Among these, deceptive interference, a highly concealed and destructive method, has become a major threat to satellite navigation security. Deceptive signals simulate the carrier frequency, pseudo-code, and navigation message characteristics of real satellite signals, inducing receivers to lock onto incorrect signals and output false positioning results. This attack is non-destructive and highly concealed, making it difficult for receivers to detect independently, and can easily lead to major security incidents and economic losses.
[0004] Currently, anti-spoofing technology for satellite navigation has become a research hotspot both domestically and internationally. Related technical approaches can be mainly divided into three categories: The first category is single-dimensional detection technologies based on signal characteristics, such as pseudorange residual detection, carrier phase change detection, and pseudorange rate consistency detection. This type of technology requires no additional hardware support, but its single detection dimension leads to blind spots and a high false negative rate in complex scenarios such as gradual spoofing and multi-satellite collaborative spoofing. The second category is detection technologies based on multi-device collaboration, such as multi-receiver differential detection, multi-antenna array direction finding, and inertial navigation (INS)-assisted verification. This type of technology offers high detection accuracy but requires the deployment of multiple receivers or dedicated antennas, resulting in high hardware costs and stringent requirements for device synchronization accuracy, making it difficult to adapt to the widespread application scenarios of existing commercial receivers. The third category is technologies based on signal encryption and authentication, such as GPS's SAASM military encryption system and BeiDou's B1C / B2a civilian encrypted signals. This type of technology ensures signal security from the source, but it relies on hardware upgrades to the satellite system, and the reception of encrypted signals requires a dedicated decryption module, leading to poor compatibility and making widespread adoption difficult in the short term. Summary of the Invention
[0005] The purpose of this invention is to provide a multi-dimensional collaborative detection method and system for satellite navigation anti-spoofing, so as to solve the problems of easy missed detection and weak anti-interference ability of single detection methods in the prior art.
[0006] To achieve the above objectives, embodiments of this application provide a multi-dimensional collaborative detection method for satellite navigation anti-spoofing, comprising:
[0007] Satellite visibility prediction and detection are performed based on the receiver's real-time dynamic position, satellite almanac, and time information.
[0008] Calculate the satellite pseudorange rate; calculate the predicted pseudorange rate based on the relative motion relationship between the receiver's velocity and the satellite's orbital velocity; perform pseudorange rate detection based on the deviation between the satellite pseudorange rate and the predicted pseudorange rate.
[0009] A pseudorange difference model for binary stars is constructed, and the pseudorange difference of binary stars is detected by observing the residual between the pseudorange difference and the theoretical pseudorange difference;
[0010] The receiver clock drift value is derived from the pseudorange data of adjacent epochs, and the receiver clock drift is detected by the characteristics of clock drift change.
[0011] Based on the fusion of the above-mentioned satellite visibility prediction detection, pseudorange rate detection, dual-satellite pseudorange difference detection, and receiver clock drift detection results, the spoofing signal was identified.
[0012] The satellite visibility prediction detection also includes:
[0013] Satellite information is predicted based on satellite almanac information, and a theoretically visible satellite list is obtained based on the predicted information for each satellite; the list of satellite signals actually captured by the receiver is then compared one by one with the theoretically visible satellite list:
[0014] If the actually captured satellite is not in the theoretically visible list, it is marked as a suspicious signal;
[0015] If the actual captured satellite is in the theoretically visible list, but the measured azimuth angle deviates from the theoretical prediction value by more than ±5°, or the measured elevation angle deviates from the theoretical prediction value by more than ±5°, it is marked as a suspicious signal.
[0016] The satellite visibility prediction detection specifically includes:
[0017] Obtain parameters from the latest satellite almanac data, including: almanac reference time. Satellite clock offset coefficient Satellite clock drift coefficient Semi-major axis parameters Longitude of the ascending node calculated at zero hour of the cyclic calendar Rate of change of right ascension at the ascending node The angle of approach at the reference time ;
[0018] Calculate the time difference between the current time and the almanac reference time, i.e., the normalized time:
[0019]
[0020] in, For the current time, For reference time in the almanac;
[0021]
[0022] in, The satellite ranging code phase time at the moment of signal transmission; For satellite ranging code phase time offset;
[0023]
[0024] Calculate the satellite's average angular velocity at the reference time:
[0025]
[0026] Where μ is the Earth's gravitational constant;
[0027] Calculate the angle of approach and the rate of change:
[0028]
[0029]
[0030]
[0031] Where e is the satellite orbital eccentricity, and E is the anomaly angle;
[0032] Calculate the true anterior angle and rate of change:
[0033]
[0034]
[0035] Calculate the latitude argument and rate of change:
[0036]
[0037]
[0038] Where ω is the angular distance from the perigee;
[0039] Calculate the radial distance and rate of change:
[0040]
[0041]
[0042] Calculate the corrected longitude of the ascending node:
[0043]
[0044] in, The Earth's rotational angular velocity in the BDCS coordinate system;
[0045] Calculate the orbital inclination at the reference time:
[0046]
[0047] Calculate the satellite's coordinates and velocity in the BDCS coordinate system:
[0048]
[0049]
[0050] Calculate the satellite's relative position and pseudorange rate:
[0051] The relative positions and velocities of the satellite and the receiver are:
[0052]
[0053]
[0054] in,( ) represents the receiver location, ( , , ( ) represents the receiver speed;
[0055] Calculate the distance between the satellite and the receiver:
[0056]
[0057] Projecting the relative velocity between the satellite and the receiver radially:
[0058]
[0059]
[0060] in, The pseudorange rate of the satellite;
[0061] Calculate the satellite's elevation angle:
[0062]
[0063] Determining satellite visibility:
[0064]
[0065] right Conduct testing; when When the value is greater than 0, the satellite is visible; when When the value is less than 0, the satellite is not visible;
[0066] Signals received from invisible satellites are marked as suspicious signals.
[0067] The pseudorange rate detection specifically includes:
[0068] By continuously acquiring carrier Doppler observations from the same satellite, the satellite pseudorange rate information can be calculated. ;
[0069] A pseudorange rate prediction model is established by combining the acquired receiver motion state information;
[0070] The theoretical pseudorange rate is calculated based on the relative motion relationship between the receiver's velocity and the satellite's orbital velocity.
[0071] Calculate the deviation between the actual pseudorange rate and the predicted pseudorange rate:
[0072]
[0073] The analysis will determine the deviation between the actual pseudorange rate and the predicted pseudorange rate. Deviation in static scenes >3m / s or deviation in dynamic scenarios Signals >10 m / s are marked as suspicious.
[0074] Monitor the changing characteristics of the actual pseudorange rate and calculate the pseudorange rate difference between different time points:
[0075]
[0076] in, The measured pseudorange rate at time t1 The measured pseudorange rate at time t2;
[0077] like Any sudden changes or constant-speed traction without physical significance are marked as suspicious signals.
[0078] The binary star pseudorange difference detection specifically includes:
[0079] A satellite pair is formed by selecting the satellite with the highest elevation angle from the actual captured satellites and the tracked satellites using a traversal method.
[0080] For each satellite pair, pseudorange observations of the two satellites are read at the same epoch, and the difference between the two is calculated to obtain the observation pseudorange difference:
[0081]
[0082] in, The pseudorange of satellite S1 at time t1. The pseudorange of satellite S2 at time t1. The pseudorange difference observed at time t1;
[0083] The pseudorange difference between the two satellites is obtained based on the pseudorange measurements of the two satellites, and compared with the pseudorange difference measurement results of the two satellites at the previous time step.
[0084]
[0085] If the pseudorange difference between two moments If the absolute value of the change is greater than 5m and continues to exceed the limit for three consecutive epochs, it is marked as a suspicious signal.
[0086] The receiver clock drift detection specifically includes:
[0087] Obtain the clock drift information from the receiver and compare it with the clock drift information from the previous moment.
[0088]
[0089] in, For receiver clock drift at time t1, For receiver clock drift at time t2, This represents the change in clock drift.
[0090] If the change in clock drift If the value is greater than 50ns, it is marked as a suspicious signal.
[0091] The process of determining spoofing signals based on the fusion of the above-mentioned satellite visibility prediction detection, pseudorange rate detection, dual-satellite pseudorange difference detection, and receiver clock drift detection results includes:
[0092] A four-dimensional detection voting mechanism is set up to integrate the detection results of the four dimensions: satellite visibility prediction detection, pseudorange rate detection, dual-satellite pseudorange difference detection, and receiver clock drift detection. For the same satellite signal, if any two or more dimensions are marked as suspicious signals, the satellite signal is determined to be a deception signal.
[0093] On the other hand, this application provides a multi-dimensional collaborative detection satellite navigation anti-spoofing system, including:
[0094] The visibility prediction and detection unit is used to perform satellite visibility prediction and detection based on the receiver's real-time dynamic position, satellite almanac, and time information.
[0095] The pseudorange rate detection unit is used to calculate the satellite pseudorange rate; calculate the predicted pseudorange rate based on the relative motion relationship between the receiver's motion speed and the satellite's orbital speed; and perform pseudorange rate detection based on the deviation between the satellite pseudorange rate and the predicted pseudorange rate.
[0096] The binary pseudorange difference detection unit is used to construct a binary pseudorange difference model and detect binary pseudorange differences by observing the residual between the pseudorange difference and the theoretical pseudorange difference.
[0097] The receiver clock drift detection unit is used to deduce the receiver clock drift value based on adjacent epoch pseudorange data and to detect the receiver clock drift through the characteristics of clock drift change.
[0098] The collaborative decision and signal processing unit is used to determine the spoofing signal by fusing the four-dimensional detection results of the above-mentioned satellite visibility prediction detection, pseudorange rate detection, dual-satellite pseudorange difference detection and receiver clock drift detection.
[0099] The visibility prediction and detection unit is further configured to: predict satellite information based on satellite almanac information; obtain a theoretically visible satellite list based on the predicted information of each satellite; and compare the list of satellite signals actually captured by the receiver with the theoretically visible satellite list one by one: if the actually captured satellite is not in the theoretically visible list, it is marked as a suspicious signal; if the actually captured satellite is in the theoretically visible list, but the measured azimuth angle deviates from the theoretically predicted value by more than ±5°, or the measured elevation angle deviates from the theoretically predicted value by more than ±5°, it is marked as a suspicious signal.
[0100] The collaborative decision and signal processing unit is specifically used to: set up a four-dimensional detection voting mechanism for satellite visibility prediction detection, pseudorange rate detection, dual-satellite pseudorange difference detection and receiver clock drift detection to fuse the detection results of the four dimensions: for the same satellite signal, if any two or more dimensions are marked as suspicious signals, the satellite signal is determined to be a deception signal.
[0101] The method and system provided in this application, based on receiver position and time information combined with satellite almanac, complete satellite visibility prediction and detection; calculate the satellite pseudorange rate and compare it with the predicted value to achieve pseudorange rate detection; construct a two-satellite pseudorange difference model and complete detection by the residual between the observed pseudorange difference and the theoretical pseudorange difference; derive the receiver clock drift value based on pseudorange data from adjacent epochs and complete detection by the clock drift change characteristics; and collaboratively determine spoofing signals based on the four-dimensional detection results, triggering alarms and eliminating the signals. The scheme in this application, through multi-dimensional detection mechanism collaborative verification, solves the problems of easy missed detection and weak anti-interference capability of single detection methods. It only requires a single receiver, has strong compatibility and excellent real-time performance, and can effectively identify various types of spoofing signals, ensuring navigation and positioning accuracy. Attached Figure Description
[0102] Figure 1 A flowchart illustrating the principle of the multi-dimensional collaborative detection satellite navigation anti-spoofing method provided in this application embodiment;
[0103] Figure 2 A flowchart illustrating a specific implementation of satellite visibility prediction detection provided in this application embodiment;
[0104] Figure 3 A schematic diagram of the structure of a satellite navigation anti-spoofing system with multi-dimensional collaborative detection provided in this application embodiment. Detailed Implementation
[0105] To better understand the present invention, specific embodiments of the present invention will be described in detail below with reference to the accompanying drawings. It should be understood that the specific embodiments described herein are only for illustration and explanation of the embodiments of the present invention and are not intended to limit the embodiments of the present invention. Various modifications can be made to the embodiments as long as the effects of the present invention are achieved.
[0106] This application proposes a satellite navigation anti-spoofing method and apparatus based on multi-dimensional collaborative detection. The method includes: performing satellite visibility prediction detection based on receiver position and time information combined with satellite almanac; calculating the satellite pseudorange rate and comparing it with the predicted value to achieve pseudorange rate detection; constructing a two-satellite pseudorange difference model and performing detection by the residual between the observed pseudorange difference and the theoretical pseudorange difference; deriving the receiver clock drift value based on pseudorange data from adjacent epochs and performing detection by the clock drift change characteristics; and collaboratively determining spoofing signals based on the four-dimensional detection results, triggering an alarm, and removing the signal.
[0107] This application involves the specific application of various satellite positioning technologies, such as satellite position, pseudorange rate calculation, and clock drift calculation, and improves the algorithm based on existing calculation methods. Specific technical details not explicitly shown in the following embodiments are the same as those in existing positioning calculation processes and will not be repeated here.
[0108] Figure 1 The flowchart of the satellite navigation anti-spoofing method with multi-dimensional collaborative detection provided in this application embodiment is shown, wherein,
[0109] Step 101: Perform satellite visibility prediction detection based on the receiver's real-time dynamic position, satellite almanac, and time information.
[0110] First, the receiver's current position and system time are obtained, and the latest satellite almanac data (stored during the device's last operation) is retrieved. Kepler's laws are then used to calculate the satellite's theoretical orbital parameters, yielding predicted information including key parameters such as satellite number, azimuth, and elevation angle.
[0111] Satellite information is predicted based on satellite almanac information. A theoretically visible satellite list is obtained for each satellite based on the predicted information. The list of satellite signals actually captured by the receiver is then compared one by one with the theoretically visible satellite list. If the actually captured satellite is not in the theoretically visible list, it is directly marked as a suspicious signal. If the satellite is in the theoretically visible list, but the measured azimuth angle or the measured elevation angle deviates from the theoretical prediction by more than ±5°, it is also marked as a suspicious signal. This step can quickly eliminate spoofed signals with forged satellite numbers or abnormal signal directions.
[0112] In one embodiment of this application, such as Figure 2 The diagram shown is a flowchart illustrating a specific implementation of satellite visibility prediction and detection according to an embodiment of this application.
[0113] Use parameters from the latest satellite almanac data, including the almanac reference time. Satellite clock offset coefficient Satellite clock drift coefficient Semi-major axis parameters Longitude of the ascending node calculated at zero hour of the cyclic calendar Rate of change of right ascension at the ascending node The angle of approach at the reference time wait.
[0114] Calculate the normalized time, which is the time difference between the current time and the ephemeris reference time:
[0115]
[0116] in, For the current time, For reference time in the almanac.
[0117]
[0118] in, The unit is seconds; The satellite ranging code phase time at the moment of signal transmission, in seconds; This represents the phase time offset of the satellite ranging code, in seconds.
[0119]
[0120] Calculate the satellite's average angular velocity at the reference time:
[0121]
[0122] Where μ is the Earth's gravitational constant.
[0123] Calculate the angle of approach and the rate of change:
[0124]
[0125]
[0126]
[0127] Where e is the satellite orbital eccentricity and E is the anomalous angle.
[0128] Calculate the true anterior angle and rate of change:
[0129]
[0130]
[0131] Calculate the latitude argument and rate of change:
[0132]
[0133]
[0134] Where ω is the angular distance from the perigee.
[0135] Calculate the radial distance and rate of change:
[0136]
[0137]
[0138] Calculate the corrected longitude of the ascending node:
[0139]
[0140] in, ω represents the Earth's rotational angular velocity in the BDCS coordinate system.
[0141] Calculate the orbital inclination at the reference time:
[0142]
[0143] Calculate the satellite's coordinates and velocity in the BDCS coordinate system:
[0144]
[0145]
[0146] Calculate the satellite's relative position and pseudorange rate:
[0147] The relative positions and velocities of the satellite and the receiver are:
[0148]
[0149]
[0150] in,( ) represents the receiver location, ( , , () represents the receiver speed.
[0151] The distance between the satellite and the receiver is calculated as follows:
[0152]
[0153] Projecting the relative velocity between the satellite and the receiver radially:
[0154]
[0155]
[0156] That is, the pseudorange rate of the satellite.
[0157] Calculate the satellite's elevation angle:
[0158]
[0159] Determining satellite visibility:
[0160]
[0161] Through the When testing is conducted, When the value is greater than 0, the satellite is considered visible. When the value is less than 0, the satellite is considered invisible.
[0162] In this embodiment, satellite visibility is uniquely determined by orbital parameters, receiver position, and time. Spoofing signals often forge satellite signals that do not exist in the given time and space or block normally visible satellites. Initial screening is achieved through "theoretical-actual" set matching. This embodiment combines the receiver's real-time dynamic position (e.g., continuous positioning output) with a high-precision almanac to achieve dynamic visibility prediction (adapting to receiver movement scenarios). A time synchronization verification mechanism is also introduced to ensure the spatiotemporal consistency of the prediction. Visibility detection is used as a "pre-screening layer" to eliminate obviously abnormal satellite signals in advance, reducing the computational load for subsequent detection. It can quickly eliminate spoofing signals with "spatiotemporal mismatch" (such as forging satellites that do not exist in the current area), with a detection delay of ≤1 epoch (approximately 1 second), improving real-time performance. It reduces the amount of data processed in subsequent detection stages, lowers hardware computational overhead, avoids the loss of normal signal lock due to "false satellite signals occupying tracking channels," and ensures navigation continuity.
[0163] Step 102: Calculate the satellite pseudorange rate; calculate the predicted pseudorange rate based on the relative motion relationship between the receiver's velocity and the satellite's orbital velocity; perform pseudorange rate detection based on the deviation between the satellite pseudorange rate and the predicted pseudorange rate.
[0164] In one embodiment of this application, carrier Doppler observations of the same satellite are continuously acquired by the measurement unit of the receiver, with a sampling frequency of 1~10Hz. Satellite pseudorange rate information is then calculated. (Unit: m / s).
[0165] Combining the motion state information (velocity, acceleration) obtained by the receiver positioning calculation unit, a pseudorange rate prediction model is established. Based on the relative motion relationship between the receiver's motion velocity and the satellite's orbital velocity, the theoretical pseudorange rate is calculated as described in step 101 above.
[0166] Next, the deviation between the actual pseudorange rate and the predicted pseudorange rate is calculated.
[0167]
[0168] The deviation between the actual pseudorange rate and the predicted pseudorange rate Analysis was conducted: Signals with a deviation >3 m / s in static scenes and >10 m / s in dynamic scenes were marked as suspicious. Simultaneously, the changing characteristics of the actual pseudorange rate were monitored, and the difference in pseudorange rate between different time points was calculated.
[0169]
[0170] in, The measured pseudorange rate at time t1 The pseudorange rate is the actual measured value at time t2. By default, t1 is the current measurement time and t2 is the previous measurement time. The detection cycle of t1 and t2 can be set according to the application scenario.
[0171] like Suspicious signals are also marked as those that exhibit no physical significance (single mutation amplitude > 10 m / s) or constant-speed traction (pseudorange rate remains constant for 5 consecutive epochs and deviation from predicted value exceeds the limit).
[0172] Spoofing signals often simulate "fixed pseudorange offset" or "slowly adjusted pseudorange," making it difficult to accurately reproduce the true relative motion velocity between the satellite and the receiver, resulting in a pseudorange rate deviation significantly outside the normal range. This embodiment integrates satellite orbital velocity and receiver dynamic velocity (supporting positioning results in IMU-less scenarios) to improve the accuracy of theoretical pseudorange rate prediction. A dynamic threshold mechanism (adjusted based on receiver dynamic characteristics) is employed to adapt to different observation environments. Focusing on "relative motion velocity consistency," it compensates for the vulnerability of absolute pseudorange values to static interference, forming a dual verification of "pseudorange-pseudorange rate." It can accurately detect spoofing signals such as "slow pseudorange offset" (e.g., progressive pseudorange tampering), which are difficult to detect using absolute pseudorange values. The dynamic threshold adapts to complex scenarios, reducing the false detection rate and complementing other detection methods, thus reducing the risk of missed detections from single-dimensional detection.
[0173] Step 103: Construct a binary pseudorange difference model and detect binary pseudorange difference by using the residual between observed pseudorange difference and theoretical pseudorange difference.
[0174] In one embodiment of this application, a satellite pair is formed by selecting the satellite with the highest elevation angle among the actual acquired satellites and the tracked satellites using a traversal method. For each satellite pair, the pseudorange observation values of the two satellites are read at the same epoch, and the difference between the two is calculated to obtain the observed pseudorange difference.
[0175]
[0176] The pseudorange of satellite S1 at time t1. The pseudorange of satellite S2 at time t1. The pseudorange difference observed at time t1.
[0177] The pseudorange difference between the two satellites is obtained based on the pseudorange measurement results acquired by the measurement unit, and compared with the pseudorange difference measurement results of the two satellites at the previous time.
[0178]
[0179] If the pseudo-distance difference between two moments If the absolute value of the change is greater than 5m and continues to exceed the limit for three consecutive epochs, the satellite signal is marked as a suspicious signal.
[0180] This step utilizes the consistency characteristics of pseudorange differences between two satellites to effectively identify scenarios where one or more satellites are being deceived, avoiding the limitations of single pseudorange detection.
[0181] Errors such as receiver clock bias, ionospheric delay, and tropospheric delay are considered "common errors" (having a consistent impact on the pseudorange of both satellites). These common errors can be offset by using the pseudorange difference between the two satellites, allowing the residuals to primarily reflect anomalies in pseudorange observations (spoofing signals or gross errors), thus improving detection robustness. In this embodiment, the common errors are offset using the pseudorange difference between the two satellites, eliminating the need for complex error correction models and remaining stable even under scenarios with drastic changes in the ionosphere and troposphere. Utilizing the geometric correlation between satellites, the focus is on "relative pseudorange consistency" rather than "absolute pseudorange accuracy," reducing reliance on absolute positioning accuracy. Dynamic satellite selection strategies are supported (prioritizing the satellite with the highest elevation angle as the reference satellite), and adjustments can be made according to the application scenario to further enhance the effectiveness of residual detection. This approach enables the offsetting of common errors, improves residual detection accuracy, effectively distinguishes between "error interference" and "spoofing signals," reduces reliance on error correction models, and adapts to complex electromagnetic environments (such as electromagnetic interference and ionospheric scintillation), demonstrating stronger environmental adaptability. The use of the geometric correlation between satellite pairs makes it difficult for spoofing signals to simultaneously forge the pseudo-range difference between two satellites (it requires precise matching of the orbital parameters and relative positions of the two satellites), thus reducing the success rate of spoofing.
[0182] Step 104: Derive the receiver clock drift value based on the pseudorange data of adjacent epochs, and detect the receiver clock drift by using the clock drift change characteristics.
[0183] In one embodiment of this application, the clock drift information output by the receiver positioning calculation unit is obtained and compared with the clock drift information of the previous moment:
[0184]
[0185] For receiver clock drift at time t1, For receiver clock drift at time t2, This represents the change in clock drift.
[0186] If the change in clock drift If the value is greater than 50ns, all satellite signals are marked as suspicious. Receiver clock drift characteristics are determined by hardware and are normally stable. Abnormal changes in clock drift are usually induced by deception signals, and this step can accurately capture such characteristics.
[0187] The spoofing signal simulates normal pseudorange and requires forging the receiver clock bias. However, clock drift reflects the physical characteristics of the clock (such as the stability of the crystal oscillator), and the spoofing signal cannot accurately reproduce the stable changes of clock drift, easily exhibiting abrupt changes or abnormal fluctuations. In this embodiment, we focus on the "clock drift variation characteristics" rather than the "absolute value of clock bias," directly addressing the core weakness of the spoofing signal in forging clock bias (the difficulty in simulating physical characteristics). Based on the collaborative calculation of pseudorange in adjacent epochs, the clock drift is improved by utilizing the correlation between epochs.
[0188] In this embodiment, based on the physical characteristics of clock drift, the difficulty of forging deception signals is greatly increased (it is necessary to simulate the crystal oscillator characteristics of the receiver clock), the detection delay is ≤1 epoch (about 1 second), and the real-time performance is improved.
[0189] Step 105: Based on the four-dimensional detection results fused from the above satellite visibility prediction detection, pseudorange rate detection, dual-satellite pseudorange difference detection, and receiver clock drift detection, the spoofing signal is determined.
[0190] In one embodiment of this application, a four-dimensional detection voting mechanism is set up to fuse the detection results of the above four dimensions: for the same satellite signal, if any two or more dimensions are marked as suspicious signals, the satellite signal can be determined to be a deceptive signal, and the remaining signals are real signals.
[0191] The pseudorange observations corresponding to the deceptive signals are removed, and only the true signals are retained. The pseudorange observations of the true signals are then input into the positioning solution module to complete the navigation and positioning solution, ensuring the accuracy of the solution results.
[0192] In this embodiment, a multi-dimensional detection mechanism is used for collaborative verification, which solves the problems of easy missed detection and weak anti-interference ability of single detection methods. It can be implemented with only a single receiver, has strong compatibility and excellent real-time performance, and can effectively identify various types of spoofing signals to ensure navigation and positioning accuracy.
[0193] In this embodiment, a four-dimensional detection fusion mechanism is first proposed, which integrates satellite visibility prediction, pseudorange rate, pseudorange difference between two satellites, and receiver clock drift. This mechanism breaks through the blind zone limitation of single-dimensional detection and achieves full-type coverage identification of forwarding, generating, and gradual spoofing signals through voting judgment, thus solving the core pain point of high false negative rate in existing technologies.
[0194] In this embodiment, there is no need to deploy multiple receivers or special antennas. Multidimensional data acquisition and detection are completed solely by the built-in modules (measurement unit and positioning calculation unit) of a single receiver. It can be directly embedded into existing commercial receiver firmware and is compatible with multiple systems such as Beidou and GPS, significantly reducing deployment costs.
[0195] In this embodiment, the system dynamically adapts to static / dynamic scenes, identifies motion states through positioning results, and automatically adjusts detection thresholds such as pseudorange rate and clock drift (e.g., static pseudorange rate deviation threshold of 3 m / s, dynamic 10 m / s) to improve detection robustness in complex environments.
[0196] In this embodiment, a voting logic of "judgment if 2-dimensional or higher dimensions exceed the limit" is designed. Combined with detailed optimizations such as clock drift variance analysis and continuous epoch residual monitoring, the recognition accuracy is guaranteed to be ≥99.5% while the single epoch processing time is ≤10ms, thus balancing detection accuracy and response speed.
[0197] The entire solution is based on a complete multi-dimensional collaborative detection satellite navigation anti-spoofing system, which, as follows: Figure 3 As shown, it includes:
[0198] The visibility prediction and detection unit 21 is used to perform satellite visibility prediction and detection based on the receiver's real-time dynamic position, satellite almanac, and time information.
[0199] The pseudorange rate detection unit 22 is used to calculate the satellite pseudorange rate; calculate the predicted pseudorange rate based on the relative motion relationship between the receiver's motion speed and the satellite's orbital speed; and perform pseudorange rate detection based on the deviation between the satellite pseudorange rate and the predicted pseudorange rate.
[0200] The binary pseudo-range difference detection unit 23 is used to construct a binary pseudo-range difference model and to detect binary pseudo-range difference by observing the residual between the pseudo-range difference and the theoretical pseudo-range difference.
[0201] The receiver clock drift detection unit 24 is used to deduce the receiver clock drift value based on adjacent epoch pseudorange data and to detect the receiver clock drift through the clock drift change characteristics.
[0202] The collaborative decision and signal processing unit 25 is used to determine the spoofing signal by fusing the four-dimensional detection results of the above-mentioned satellite visibility prediction detection, pseudorange rate detection, dual-satellite pseudorange difference detection and receiver clock drift detection.
[0203] The visibility prediction and detection unit 21 is further configured to: predict satellite information based on satellite almanac information; obtain a theoretically visible satellite list based on the predicted information of each satellite; compare the list of satellite signals actually captured by the receiver with the theoretically visible satellite list one by one; if the actually captured satellite is not in the theoretically visible list, it is marked as a suspicious signal; if the actually captured satellite is in the theoretically visible list, but the measured azimuth angle deviates from the theoretically predicted value by more than ±5°, or the measured elevation angle deviates from the theoretically predicted value by more than ±5°, it is marked as a suspicious signal.
[0204] The collaborative decision and signal processing unit 25 is specifically used to: set up a four-dimensional detection voting mechanism for satellite visibility prediction detection, pseudorange rate detection, dual-satellite pseudorange difference detection and receiver clock drift detection to fuse the detection results of the four dimensions: for the same satellite signal, if any two or more dimensions are marked as suspicious signals, the satellite signal is determined to be a deception signal.
[0205] Those skilled in the art will understand that embodiments of this application can be provided as methods, apparatus, or computer program products. Therefore, this application can take the form of a completely hardware embodiment, a completely software embodiment, or an embodiment combining software and hardware aspects. Furthermore, this application can take the form of a computer program product embodied on one or more computer-usable storage media (including but not limited to disk storage, CD-ROM, optical storage, etc.) containing computer-usable program code.
[0206] This application is described with reference to flowchart illustrations and / or block diagrams of methods, apparatus (systems), and computer program products according to embodiments of this application. It will be understood that each block of the flowchart illustrations and / or block diagrams, and combinations of blocks in the flowchart illustrations and / or block diagrams, can be implemented by computer program instructions. These computer program instructions can be provided to a processor of a general-purpose computer, special-purpose computer, embedded processor, or other programmable data processing apparatus to produce a machine, such that the instructions, which execute via the processor of the computer or other programmable data processing apparatus, generate instructions for implementing the flowchart... Figure 1 One or more processes and / or boxes Figure 1 A device that provides the functions specified in one or more boxes.
[0207] These computer program instructions may also be stored in a computer-readable storage medium that can direct a computer or other programmable data processing device to function in a particular manner, such that the instructions stored in the computer-readable storage medium produce an article of manufacture including instruction means, which are implemented in a process Figure 1 One or more processes and / or boxes Figure 1 The function specified in one or more boxes.
[0208] These computer program instructions may also be loaded onto a computer or other programmable data processing equipment to cause a series of operational steps to be performed on the computer or other programmable equipment to produce a computer-implemented process, thereby providing instructions that execute on the computer or other programmable equipment for implementing the process. Figure 1 One or more processes and / or boxes Figure 1 The steps of the function specified in one or more boxes.
[0209] In a typical configuration, a computing device includes one or more processors (CPU), input / output interfaces, network interfaces, and memory.
[0210] Memory may include non-persistent memory in computer-readable media, such as random access memory (RAM) and / or non-volatile memory, like read-only memory (ROM) or flash RAM. Memory is an example of computer-readable media.
[0211] Computer-readable media include both permanent and non-permanent, removable and non-removable media that can store information by any method or technology. Information can be computer-readable instructions, data structures, modules of programs, or other data. Examples of computer storage media include, but are not limited to, phase-change memory (PRAM), static random access memory (SRAM), dynamic random access memory (DRAM), other types of random access memory (RAM), read-only memory (ROM), electrically erasable programmable read-only memory (EEPROM), flash memory or other memory technologies, CD-ROM, digital versatile optical disc (DVD) or other optical storage, magnetic tape, magnetic magnetic disk storage or other magnetic storage devices, or any other non-transferable medium that can be used to store information accessible by a computing device. As defined herein, computer-readable media does not include transient computer-readable media, such as modulated data signals and carrier waves.
[0212] The flowcharts and block diagrams in the accompanying drawings illustrate the architecture, functionality, and operation of possible implementations of systems, methods, and computer program products according to various embodiments of this application. In this regard, each block in a flowchart or block diagram may represent a module, segment, or portion of code containing one or more executable instructions for implementing a specified logical function. It should also be noted that in some alternative implementations, the functions indicated in the blocks may occur in a different order than those indicated in the drawings. For example, two consecutively indicated blocks may actually be executed substantially in parallel, or they may sometimes be executed in reverse order, depending on the functions involved. It should also be noted that each block in a block diagram or flowchart, and combinations of blocks in a block diagram or flowchart, may be implemented using a dedicated hardware-based system that performs the specified function or operation, or using a combination of dedicated hardware and computer instructions.
[0213] It should also be noted that the terms "comprising," "including," or any other variations thereof are intended to cover non-exclusive inclusion, such that a process, method, article, or apparatus that comprises a list of elements includes not only those elements but also other elements not expressly listed, or elements inherent to such process, method, article, or apparatus. Unless otherwise specified, an element defined by the phrase "comprising one..." does not exclude the presence of other identical elements in the process, method, article, or apparatus that includes that element.
[0214] The above are merely embodiments of this application and are not intended to limit this application. Various modifications and variations can be made to this application by those skilled in the art. Any modifications, equivalent substitutions, improvements, etc., made within the spirit and principles of this application should be included within the scope of the claims of this application.
[0215] The accompanying drawings illustrate several block diagrams and / or flowcharts. It should be understood that some blocks, or combinations thereof, in the block diagrams and / or flowcharts can be implemented by computer program instructions. These computer program instructions can be provided to a processor of a general-purpose computer, a special-purpose computer, or other programmable data processing device, so that when executed by the processor, these instructions can create means for implementing the functions / operations described in these block diagrams and / or flowcharts. The technology of this application can be implemented in hardware and / or software (including firmware, microcode, etc.). Alternatively, the technology of this application can take the form of a computer program product stored on a computer-readable storage medium, which can be used by or in conjunction with an instruction execution system.
Claims
1. A multi-dimensional collaborative detection method for satellite navigation anti-spoofing, characterized in that, include: Satellite visibility prediction and detection are performed based on the receiver's real-time dynamic position, satellite almanac, and time information. Calculate the satellite pseudorange rate; The predicted pseudorange rate is calculated based on the relative motion relationship between the receiver's velocity and the satellite's orbital velocity; the pseudorange rate is then detected based on the deviation between the satellite pseudorange rate and the predicted pseudorange rate. A pseudorange difference model for binary stars is constructed, and the pseudorange difference of binary stars is detected by observing the residual between the pseudorange difference and the theoretical pseudorange difference; The receiver clock drift value is derived from the pseudorange data of adjacent epochs, and the receiver clock drift is detected by the characteristics of clock drift change. Based on the fusion of the above-mentioned satellite visibility prediction detection, pseudorange rate detection, dual-satellite pseudorange difference detection and receiver clock drift detection results, the spoofing signal is identified. The satellite visibility prediction detection specifically includes: Obtain parameters from the latest satellite almanac data, including: almanac reference time. Satellite clock offset coefficient Satellite clock drift coefficient Semi-major axis parameters Longitude of the ascending node calculated at zero hour of the cyclic calendar Rate of change of right ascension at the ascending node The angle of approach at the reference time ; Calculate the time difference between the current time and the calendar reference time, i.e., the normalized time: ; in, For the current time, For reference time in the almanac; ; in, The satellite ranging code phase time at the moment of signal transmission; For satellite ranging code phase time offset; ; Calculate the satellite's average angular velocity at the reference time: ; in, The gravitational constant of Earth; Calculate the angle of approach and the rate of change: ; ; ; in, For satellite orbital eccentricity, It is a near-point angle; Calculate the true anterior angle and rate of change: ; ; Calculate the latitude argument and rate of change: ; ; in, Angular distance from perigee; Calculate the radial distance and rate of change: ; ; Calculate the corrected longitude of the ascending node: ; in, The Earth's rotational angular velocity in the BDCS coordinate system; Calculate the orbital inclination at the reference time: ; Calculate the satellite's coordinates and velocity in the BDCS coordinate system: ; ; Calculate the satellite's relative position and pseudorange rate: The relative positions and velocities of the satellite and the receiver are: ; ; in, For receiver location, For receiver speed; Calculate the distance between the satellite and the receiver: ; Projecting the relative velocity between the satellite and the receiver radially: ; ; in, The pseudorange rate of the satellite; Calculate the satellite's elevation angle: ; Determining satellite visibility: ; right Conduct testing; when When the value is greater than 0, the satellite is visible; when When the value is less than 0, the satellite is not visible; Signals received from invisible satellites are marked as suspicious signals.
2. The method according to claim 1, characterized in that, The satellite visibility prediction detection also includes: Satellite information is predicted based on satellite almanac information, and a theoretically visible satellite list is obtained based on the predicted information for each satellite; the list of satellite signals actually captured by the receiver is then compared one by one with the theoretically visible satellite list: If the actually captured satellite is not in the theoretically visible list, it is marked as a suspicious signal; If the actually captured satellite is in the theoretically visible list, but the measured azimuth angle deviates from the theoretical prediction by more than [a certain amount], then [the satellite is not visible]. Or the measured elevation angle deviates from the theoretical prediction value by more than [a certain amount]. It is marked as a suspicious signal.
3. The method according to claim 1, characterized in that, The pseudorange rate detection specifically includes: By continuously acquiring carrier Doppler observations from the same satellite, the satellite pseudorange rate information can be calculated. ; A pseudorange rate prediction model is established by combining the acquired receiver motion state information; The theoretical pseudorange rate is calculated based on the relative motion relationship between the receiver's velocity and the satellite's orbital velocity. Calculate the deviation between the actual pseudorange rate and the predicted pseudorange rate: ; Analyze the deviation between the actual pseudorange rate and the predicted pseudorange rate. Deviation in static scenes Or deviation in dynamic scenarios At that time, it was marked as a suspicious signal; Monitor the changing characteristics of the actual pseudorange rate and calculate the pseudorange rate difference between different time points: ; in Real-time pseudorange rate Real-time measured pseudorange rate; like Any sudden changes or constant-speed traction without physical significance are marked as suspicious signals.
4. The method according to claim 1, characterized in that, The binary star pseudorange difference detection specifically includes: A satellite pair is formed by selecting the satellite with the highest elevation angle from the actual captured satellites and the tracked satellites using a traversal method. For each satellite pair, pseudorange observations of the two satellites are read at the same epoch, and the difference between the two is calculated to obtain the observation pseudorange difference: ; in, The pseudorange of satellite S1 at time t1. for The pseudorange of the S2 satellite at time S2 for Observe pseudorange difference at all times; The pseudorange difference between the two satellites is obtained based on the pseudorange measurements of the two satellites, and compared with the pseudorange difference measurement results of the two satellites at the previous time step. ; If the pseudorange difference between two moments If the absolute value of the change is greater than 5m and continues to exceed the limit for three consecutive epochs, it is marked as a suspicious signal.
5. The method according to claim 1, characterized in that, The receiver clock drift detection specifically includes: Obtain the clock drift information from the receiver and compare it with the clock drift information from the previous moment. ; in, Time receiver clock drift for Time receiver clock drift This represents the change in clock drift. If the change in clock drift If it is, then it is marked as a suspicious signal.
6. The method according to claim 1, characterized in that, The process of determining spoofing signals based on the fusion of the above-mentioned satellite visibility prediction detection, pseudorange rate detection, dual-satellite pseudorange difference detection, and receiver clock drift detection results includes: A four-dimensional detection voting mechanism is set up to integrate the detection results of the four dimensions: satellite visibility prediction detection, pseudorange rate detection, dual-satellite pseudorange difference detection, and receiver clock drift detection. For the same satellite signal, if any two or more dimensions are marked as suspicious signals, the satellite signal is determined to be a deception signal.
7. A multi-dimensional collaborative detection satellite navigation anti-spoofing system, characterized in that, The steps for implementing the method according to any one of claims 1 to 6 include: The visibility prediction and detection unit is used to perform satellite visibility prediction and detection based on the receiver's real-time dynamic position, satellite almanac, and time information. The pseudorange rate detection unit is used to calculate the satellite pseudorange rate; calculate the predicted pseudorange rate based on the relative motion relationship between the receiver's motion speed and the satellite's orbital speed; and perform pseudorange rate detection based on the deviation between the satellite pseudorange rate and the predicted pseudorange rate. The binary pseudorange difference detection unit is used to construct a binary pseudorange difference model and detect binary pseudorange differences by observing the residual between the pseudorange difference and the theoretical pseudorange difference. The receiver clock drift detection unit is used to deduce the receiver clock drift value based on adjacent epoch pseudorange data and to detect the receiver clock drift through the characteristics of clock drift change. The collaborative decision and signal processing unit is used to determine the spoofing signal by fusing the four-dimensional detection results of the above-mentioned satellite visibility prediction detection, pseudorange rate detection, dual-satellite pseudorange difference detection and receiver clock drift detection.
8. The system according to claim 7, characterized in that, The visibility prediction and detection unit is also used to: predict satellite information based on satellite almanac information, and obtain a list of theoretically visible satellites based on the predicted information of each satellite. The list of satellite signals actually captured by the receiver is compared one by one with the list of theoretically visible satellites: if the actually captured satellite is not in the theoretically visible list, it is marked as a suspicious signal; if the actually captured satellite is in the theoretically visible list, but the measured azimuth angle deviates from the theoretical prediction value by more than [a certain percentage], it is marked as a suspicious signal. Or the measured elevation angle deviates from the theoretical prediction value by more than [a certain amount]. It is marked as a suspicious signal.
9. The system according to claim 7, characterized in that, The collaborative decision and signal processing unit is specifically used to: set up a four-dimensional detection voting mechanism for satellite visibility prediction detection, pseudorange rate detection, dual-satellite pseudorange difference detection and receiver clock drift detection to fuse the detection results of the four dimensions: for the same satellite signal, if any two or more dimensions are marked as suspicious signals, the satellite signal is determined to be a deception signal.