Global Navigation Satellite System integrated circuits and related communication systems
By using memory and processor in GNSS integrated circuits, using ephemeris auxiliary data to determine whether the GNSS signal is a spoofed signal, the problem of GNSS signal identification in the prior art is solved, and effective identification and protection of spoofed signals is achieved, and the cost is controllable.
Patent Information
- Application Number
- CN202110395263.7
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2021-04-13
- Publication Date
- 2025-05-27
- Estimated Expiration
- 2041-04-13
AI Technical Summary
The existing GNSS signal identification method has flaws in the face of spoofed signal attacks by malicious third parties, making it difficult to effectively identify and prevent attacks, and is difficult to improve without increasing design costs.
By introducing memory and processor into the GNSS integrated circuit, using the ephemeris auxiliary data stored in the integrated circuit as reference information, it is determined whether the broadcast GNSS signal to be identified is a spoofed signal.
Effectively prevent the invalidation of reference information caused by GNSS signals provided by malicious third parties, ensure that it can accurately determine whether it is attacked by spoofed signals without increasing design costs.
Smart Images

Figure CN115209414B_ABST
Abstract
Description
Technical Field
[0001] The present invention relates to an integrated circuit of a global navigation satellite system (GNSS), and particularly to a GNSS integrated circuit and a communication system capable of identifying spoofing signals. Background Art
[0002] Nowadays, the applications of the global navigation satellite system (GNSS) have become widespread. For example, an electronic device can use GNSS for positioning. However, once the electronic device is attacked by spoofing signals from a malicious third party, the positioning result of the electronic device will be different from the true position of the electronic device. Existing signal identification methods still have defects. Therefore, improving the spoofing signal identification ability without significantly increasing the design cost has become one of the urgent problems to be solved in this field. Summary of the Invention
[0003] In view of this, one of the purposes of this application is to disclose a GNSS integrated circuit and a communication system to solve the above problems.
[0004] An embodiment of this application discloses an integrated circuit of a global navigation satellite system (GNSS). The GNSS integrated circuit includes a GNSS module, a memory, and a processor. The GNSS module is used to receive the broadcast GNSS signal to be identified. The memory is used to store a plurality of candidate ephemeris auxiliary data, where the plurality of candidate ephemeris auxiliary data is not provided by the GNSS module. The processor is used to judge whether the broadcast GNSS signal to be identified is a spoofing signal based on the reference ephemeris auxiliary data among the plurality of candidate ephemeris auxiliary data.
[0005] An embodiment of this application discloses a communication system. The communication system includes the aforementioned GNSS integrated circuit, the aforementioned non-GNSS transceiver, and an antenna. The aforementioned non-GNSS transceiver is used to provide the plurality of candidate ephemeris auxiliary data to the GNSS integrated circuit. The antenna is coupled to the GNSS integrated circuit.
[0006] The GNSS integrated circuit and the communication system disclosed in this application do not use the ephemeris data of the GNSS signal as the reference information to identify spoofing signals, but use the ephemeris auxiliary data stored in the GNSS integrated circuit as the reference information to identify spoofing signals. In this way, the situation where the GNSS signal is provided by a malicious third party and the reference information no longer has the identification effect can be prevented. Therefore, it can effectively judge whether it is attacked by spoofing signals. Brief Description of the Drawings
[0007] The accompanying drawings described herein are used to provide a further understanding of the present application, and constitute a part of the present application. The schematic embodiments of the present application and their descriptions are used to explain the present application, and do not constitute an improper limitation to the present application.
[0008] Figure 1 It is a schematic diagram of positioning for an electronic device applying the global navigation satellite system (GNSS) of the present application.
[0009] Figure 2 For the present application Figure 1 block schematic diagram of the communication system.
[0010] Figure 3 In, A is a schematic diagram of the data format of a data packet including multiple candidate ephemeris auxiliary data of the present application.
[0011] Figure 3 In, B is Figure 3 a schematic diagram of the data format of a specific day in 15 days of A in the present application.
[0012] Figure 3 In, C is Figure 3 a schematic diagram of the data format of a specific section among four sections of B in the present application.
[0013] Figure 3 In, D is Figure 3 a schematic diagram of the data format of data of a specific satellite among data of 32 satellites of C in the present application.
[0014] Figure 4 It is a flowchart of the identification and positioning method of the present application.
[0015] Figure 5 It is a flowchart of another identification and positioning method of the present application.
[0016] Figure 6 It is a flowchart of yet another identification and positioning method of the present application.
[0017] Among them, a simple description of the symbols in the accompanying drawings is as follows:
[0018] 10: Electronic device; 14: Reliable source; 16: Satellite; 18: Attacker; 20: GNSS integrated circuit; 22: Antenna; 24: Non-GNSS receiver; 40, 50, 60: Identification and positioning methods; 100: Communication system; 120: Broadcast GNSS signal to be identified; 160: Broadcast GNSS signal; 180: Spoofing signal; 200: Memory; 202: Candidate ephemeris auxiliary data; 220: GNSS module; 240: Real-time clock; 260: Transmission interface; 280: Processor; 400, 402, 404, 406, 408, 410, 412, 414, 500, 502, 600, 602, 604, 606, 608, 610, 612, 614, 616, 618: Operations. Detailed implementation
[0019] The embodiments of the present invention will be described below in conjunction with the relevant drawings. In these drawings, the same reference numerals denote the same or similar components or method flows.
[0020] It must be understood that the words "comprising", "including", etc. used in this specification are used to indicate the existence of specific technical features, numerical values, method steps, operations, components, and / or components, but do not exclude the addition of more technical features, numerical values, method steps, operations, components, components, or any combination of the above.
[0021] In the present invention, words such as "first", "second", "third", etc. are used to modify the components in the claims, and are not used to indicate a priority order, precedence relationship, or that one component precedes another component, or the chronological order when performing method steps, but only to distinguish components with the same name.
[0022] It must be understood that when a component is described as "connected" or "coupled" to another component, it can be directly connected or coupled to other components, and intermediate components may occur. On the contrary, when a component is described as "directly connected" or "directly coupled" to another component, there are no intermediate components. Other words used to describe the relationship between components can be interpreted in a similar manner, for example, "between" versus "directly between", or "adjacent" versus "directly adjacent", etc.
[0023] Figure 1Schematic diagram for positioning the electronic device 10 applying the global navigation satellite system (GNSS) in this application. GNSS includes but is not limited to the global positioning system (GPS), the global navigation satellite system (GLONASS), the BeiDou navigation satellite system (BDS), the Galileo positioning system, the navigation with Indian constellation (NAVIC), or the Quasi-Zenith satellite system (QZSS). The electronic device 10 is, for example, a wearable device. Wearable devices include but are not limited to smart watches or smart bracelets.
[0024] Reference Figure 1 , the electronic device 10 receives the broadcast GNSS signal 120 to be identified and determines whether the broadcast GNSS signal 120 to be identified is the broadcast GNSS signal 160 from the satellite 16 or the spoofing signal 180 from the attacker 18 based on the ephemeris auxiliary data provided by the reliable source 14. In some embodiments, the reliable source 14 is the MediaTek (MTK) network server, and the ephemeris auxiliary data is the extended prediction orbit (EPO) data, but this application is not limited thereto. In other embodiments, the reliable source 14 may be a trustworthy website other than the MTK network server.
[0025] Since the ephemeris auxiliary data is relatively easy-to-obtain information, identifying whether an attack has occurred based on the ephemeris auxiliary data will not significantly increase the design cost.
[0026] In the existing identification methods, whether it is a software identification method or a hardware identification method, they are relatively complex and result in relatively high design costs, as described below.
[0027] Software methods include, for example: (a) using a cryptographic authentication mechanism to identify whether an attack has occurred; and, (b) identifying whether an attack has occurred based on the difference between a previously received GNSS signal and a subsequently received GNSS signal. For example, the previously received GNSS signal is from a satellite. Since the distance between the satellite and the GNSS receiver is relatively far, a relatively large gain is required to amplify the GNSS signal. The subsequently received GNSS signal is from an attacker. Since the distance between the attacker and the GNSS receiver is relatively close, a relatively small gain is required to amplify the GNSS signal. The magnitude of the gain is achieved through automatic gain control. Based on the change in automatic gain control, it is at least possible to identify that the subsequently received GNSS signal is not from a satellite, and thus it can be inferred that the subsequently received GNSS signal may be from an attacker. Based on a similar principle, it is possible to identify whether an attack has occurred through the noise floor, the number of operating satellites, the peak quality, or the navigation information.
[0028] Hardware methods include, for example: (a) using an antenna array to identify whether an attack has occurred. Further, since the angle at which a spoofing signal from an attacker enters the antenna array is essentially smaller than the angle at which a broadcast GNSS signal from a satellite enters the antenna array, it is possible to identify whether an attack has occurred based on the angle difference; and, (b) identifying whether an attack has occurred by moving the GNSS receiver. Further, the positions determined by the GNSS receiver before and after movement should be different. If they are the same, it may indicate that an attack has occurred.
[0029] When the communication system 100 of the electronic device 10 determines that the broadcast GNSS signal 120 to be identified is the broadcast GNSS signal 160 from the satellite 16, the communication system 100 of the electronic device 10 performs positioning based on the broadcast GNSS signal 160; in contrast, when the communication system 100 of the electronic device 10 determines that the broadcast GNSS signal 120 to be identified is the spoofing signal 180 from the attacker 18, the communication system 100 of the electronic device 10 performs positioning based on the ephemeris assistance data provided by the reliable source 14, which will be described in detail below.
[0030] Figure 2 For the present application Figure 1 Block diagram of the communication system 100. Refer to Figure 2 , the communication system 100 includes a GNSS integrated circuit 20, an antenna 22, and a non-GNSS receiver 24.
[0031] The non-GNSS receiver 24 is coupled to the GNSS integrated circuit 20 to receive a data packet including a plurality of candidate ephemeris assistance data 202 from a reliable source 14 and provide the plurality of candidate ephemeris assistance data 202 to the GNSS integrated circuit 20. In some embodiments, the non-GNSS receiver 24 is further configured to provide a valid time to the GNSS integrated circuit 20. In some embodiments, the non-GNSS receiver 24 includes a WiFi receiver, a Bluetooth receiver, or a long term evolution (LTE) receiver.
[0032] In this embodiment, the GNSS integrated circuit 20 and the non-GNSS receiver 24 are independent electronic components, but the present application is not limited thereto. In some embodiments, the GNSS integrated circuit 20 and the non-GNSS receiver 24 can be integrated into a single integrated circuit.
[0033] The GNSS integrated circuit 20 includes a memory 200, a GNSS module 220, a real-time clock (RTC) 240, a transmission interface 260, and a processor 280.
[0034] The memory 200 is configured to store the plurality of candidate ephemeris assistance data 202 provided by the non-GNSS receiver 24 or the transmission interface 260. In other words, the plurality of candidate ephemeris assistance data 202 is not provided by the GNSS module 220. In some embodiments, the memory 200 includes a volatile memory and a nonvolatile memory. The volatile memory includes, for example, a dynamic random access memory (DRAM) and a static random access memory (SRAM). The nonvolatile memory includes a mask read only memory (ROM), an erasable programmable read only memory (EPROM), an electrically-erasable programmable read-only memory (EEPROM), and a flash memory.
[0035] The GNSS module 220 is configured to receive the broadcast GNSS signal 120 to be identified through the antenna 22, obtain navigation information by decoding and identifying the broadcast GNSS signal 120, and provide the navigation information to the processor 280. In some embodiments, the GNSS module 220 includes a radio frequency circuit and a baseband processor.
[0036] The real-time clock 240 is used to provide clock time to the processor 280. Generally, once a general GNSS receiver has successfully positioned with a satellite, the clock time of the general GNSS receiver will be synchronized to the reference time of the satellite. Accordingly, the synchronized clock time can be regarded as valid clock time. Based on this principle, if the GNSS integrated circuit 20 has not positioned with the satellite 16, the clock time provided by the real-time clock 240 is regarded as invalid clock time. Conversely, once the GNSS integrated circuit 20 has successfully positioned with the satellite 16, the clock time provided by the real-time clock 240 will be synchronized to the reference time of the satellite 16. Accordingly, the synchronized clock time can be regarded as valid clock time and used as the effective time.
[0037] The transmission interface 260, in some embodiments, is used to provide the effective time to the processor 280. Further, the user can obtain the effective time from, for example, a network time protocol server and provide the effective time to the processor 280 through the transmission interface 260. In some embodiments, the transmission interface 260 is also used to provide a plurality of candidate ephemeris assistance data 202. In some embodiments, the transmission interface 260 includes a Serial Peripheral Interface (SPI), a secure digital input and output (SDIO), an inter integrated circuit (I2C), or a universal asynchronous receiver-transmitter (UART).
[0038] The processor 280 is used to use the effective time provided by any one of the non-GNSS receiver 24, the real-time clock 240, and the transmission interface 260 as the effective time reference point. The processor 280 is used to determine whether the broadcast GNSS signal 120 to be identified is a spoofing signal based on the effective time reference point and the reference ephemeris assistance data in the plurality of candidate ephemeris assistance data 202, which will be described in detail in Figures 4 to 6 the embodiments. In some embodiments, the processor 280 includes a microcontroller unit (MCU).
[0039] To easily understand how to make a judgment based on the candidate ephemeris assistance data 202, first describe the data format of the data packet including the plurality of candidate ephemeris assistance data 202, for details refer to Figure 3 A to D in
[0040] Figure 3A in this figure is a schematic diagram of the data format of a data packet including multiple candidate ephemeris auxiliary data 202 of this application. Refer to Figure 3 A in this figure, the data packet includes data for a total of 15 days from the 1st day, the 2nd day, the 3rd day to the 15th day. In this application, the data packet is not limited to 15 days of data. In other embodiments, the data packet may include data other than 15 days.
[0041] Figure 3 B in this figure is of this application Figure 3 A schematic diagram of the data format of a specific day's data out of 15 days of A. Refer to Figure 3 B in this figure, the data for one day includes data for a total of four sections: section 1, section 2, section 3, and section 4. The time range corresponding to section 1 is from 00:00 to 06:00, and it serves as the first candidate ephemeris auxiliary data among the multiple candidate ephemeris auxiliary data 202; the time range corresponding to section 2 is from 06:00 to 12:00, and it serves as the second candidate ephemeris auxiliary data among the multiple candidate ephemeris auxiliary data 202; the time range corresponding to section 3 is from 12:00 to 18:00, and it serves as the third candidate ephemeris auxiliary data among the multiple candidate ephemeris auxiliary data 202; and the time range corresponding to section 4 is from 18:00 to 24:00, and it serves as the fourth candidate ephemeris auxiliary data among the multiple candidate ephemeris auxiliary data 202.
[0042] In this embodiment, one section is six hours, but this application is not limited to this. In other embodiments, the time length for one section can be other than six hours.
[0043] Figure 3 C in this figure is of this application Figure 3 A schematic diagram of the data format of a specific one of the four sections of B in this figure. Refer to Figure 3 C in this figure, the data for one section includes data for a total of thirty-two satellites: satellite SV1, SV2, SV3 to SV32. However, the number of satellites in this application is not limited to this. In other embodiments, the number of satellites can be other than thirty-two.
[0044] Figure 3 D in this figure is of this application Figure 3 A schematic diagram of the data format of the data of a specific one of the thirty-two satellites of C in this figure. Refer to Figure 3For D in [the above], the data length of a satellite is 72 bytes. The 0th to 2nd bytes represent GNSS time, the 3rd byte represents the identification (ID) of the satellite, the 4th to 67th bytes represent the content of the ephemeris data, and the 68th to 72nd bytes represent the checksum corresponding to the aforementioned ephemeris data (the ephemeris data represented by the 4th to 67th bytes). The ephemeris data (the ephemeris data represented by the 4th to 67th bytes) includes, but is not limited to, Keplerian parameters.
[0045] After explaining A to D in [the above], how to identify whether an attack has occurred based on the candidate ephemeris auxiliary data 202 will be explained. Figure 3 After explaining A to D in [the above], how to identify whether an attack has occurred based on the candidate ephemeris auxiliary data 202 will be explained.
[0046] Figure 4 This is a flowchart of the identification and positioning method 40 of the present application. Referring to Figure 4 the identification and positioning method 40 includes operations 400, 402, 404, 406, 408, 410, 412, and 414.
[0047] In operation 400, when the GNSS integrated circuit 20 is powered on, the processor 280 determines whether the clock time is valid. In some applications, if the GNSS integrated circuit 20 has successfully positioned with the satellite 16, the clock time provided by the real-time clock 240 will be synchronized to the reference time of the satellite 16 and is a valid clock time; conversely, if the GNSS integrated circuit 20 has not positioned with the satellite 16, the clock time provided by the real-time clock 240 is regarded as an invalid clock time. However, the reasons for the invalid clock time are not limited to the above scheme. When the clock time is valid, the identification and positioning method 40 proceeds to operation 402. When the clock time is invalid, the identification and positioning method 40 proceeds to operation 404.
[0048] In operation 404, the GNSS module 220 receives the GNSS signal 120 to be broadcast. Similar to Figure 3 the candidate ephemeris auxiliary data 202 of B in [the above], the information content of the GNSS signal 120 to be identified and broadcast includes GNSS time and the GNSS ephemeris data to be identified. For ease of understanding, it is assumed that the GNSS time indicated by the GNSS signal 120 to be identified and broadcast is 12:30.
[0049] In operation 406, the processor 280 regards the GNSS time of 12:30 as a valid time reference point. The processor 280, based on the valid time reference point of 12:30, obtains the reference ephemeris auxiliary data from multiple candidate ephemeris auxiliary data 202. Further, referring back to Figure 3For B, the valid time reference point of 12:30 falls within the time range of section 3. Therefore, the processor 280 uses the candidate ephemeris assistance data 202 of section 3 among the multiple candidate ephemeris assistance data 202 as the reference ephemeris assistance data.
[0050] In operation 402, the valid clock time is, for example, 12:30. The processor 280 regards the valid clock time of 12:30 as the valid time reference point. Based on the valid time reference point of 12:30, the processor 280 obtains the reference ephemeris assistance data from among the multiple candidate ephemeris assistance data 202. Further, referring back to Figure 3 For B, the valid time reference point of 12:30 falls within the time range of section 3, and the processor 280 uses the candidate ephemeris assistance data 202 of section 3 among the multiple candidate ephemeris assistance data 202 as the reference ephemeris assistance data.
[0051] In operation 408, the GNSS module 220 receives the broadcast GNSS signal 120 to be identified. Different from operation 404, the processor 280 does not regard the GNSS time of the broadcast GNSS signal 120 to be identified as the valid time reference point.
[0052] In operation 410, the processor 280 determines whether the broadcast GNSS signal 120 to be identified is from satellite 16 based on the reference ephemeris assistance data of section 3. Further, in one embodiment, the processor 280 is configured to determine that the broadcast GNSS signal 120 to be identified is a spoofing signal when the difference between the same parameters in the reference ephemeris assistance data of section 3 and the to-be-identified ephemeris data included in the broadcast GNSS signal 120 to be identified is greater than a critical value. When the difference is greater than the critical value, the processor 280 determines that an attack event occurs where the broadcast GNSS signal 120 to be identified is a spoofing signal 180, the broadcast GNSS signal 120 to be identified is not from satellite 16, and the identification and positioning method 40 proceeds to operation 412. When the difference is not greater than the critical value, the processor 280 determines that no attack event occurs where the broadcast GNSS signal 120 to be identified is a spoofing signal 180, the broadcast GNSS signal 120 to be identified is from satellite 16, and the identification and positioning method 40 proceeds to operation 414.
[0053] In operation 412, the processor 280 performs positioning based on the reference ephemeris assistance data of section 3. That is, in response to the attack event where the broadcast GNSS signal 120 to be identified is a spoofing signal 180, the processor 280 performs positioning based on the reference ephemeris assistance data but not based on the to-be-identified ephemeris data of the broadcast GNSS signal 120 to be identified.
[0054] In operation 414, the processor 280 performs positioning based on the to-be-identified ephemeris data of the broadcast GNSS signal 120 to be identified.
[0055] In some applications, the GNSS time of the GNSS signal 120 to be identified may also be tampered with by an attacker 18. Therefore, the reference ephemeris auxiliary data selected based on the GNSS time of the GNSS signal 120 to be identified may be unreliable. Accordingly, the present application further provides an identification and positioning method, which is described in detail in the Figure 5 embodiment.
[0056] Figure 5 is a flowchart of another identification and positioning method 50 of the present application. Referring to Figure 5 , the identification and positioning method 50 is similar to the Figure 4 identification and positioning method 40, except that the identification and positioning method 50 includes operations 500 and 502.
[0057] In operation 500, the processor 280 receives a valid time via either the transmission interface 260 or the non-GNSS receiver 24. For example, a user may input a valid time to the GNSS integrated circuit 20 through an input interface (not shown). Alternatively, the GNSS integrated circuit 20 may obtain a valid time from a reliable website via, for example, WiFi.
[0058] In operation 502, the processor 280 obtains reference ephemeris auxiliary data from a plurality of candidate ephemeris auxiliary data 202 based on the valid time.
[0059] In some applications, the processor 280 is used to identify whether each received GNSS signal 120 to be identified is a spoofing signal 180. However, the time interval between the first received GNSS signal 120 to be identified and the second received GNSS signal 120 to be identified may be relatively long, which may render the reference ephemeris auxiliary data obtained for the first time unsuitable for identifying whether the second received GNSS signal 120 to be identified is a spoofing signal 180. Therefore, an update operation for the ephemeris auxiliary data needs to be added. For details, refer to the Figure 6 embodiment.
[0060] Figure 6 is a flowchart of yet another identification and positioning method 60 of the present application. Referring to Figure 6 , the identification and positioning method 60 includes operations 600, 602, 604, 606, 608, 610, 612, 614, 616, and 618.
[0061] In operation 600, operation 600 is similar to the Figure 4 operations 402 and 406 of Figure 5 or the operation 502 ofFigure 4 Operation 410, based on the first reference ephemeris auxiliary data, completes the determination of whether the first broadcast GNSS signal to be identified comes from satellite 16.
[0062] In operation 602, after receiving the first broadcast GNSS signal to be identified, GNSS module 220 receives a second broadcast GNSS signal to be identified. The second broadcast GNSS signal to be identified includes a second GNSS time. Briefly, the signal reception time of the second broadcast GNSS signal to be identified is later than the signal reception time of the first broadcast GNSS signal to be identified.
[0063] In operation 604, processor 280 determines whether the second GNSS time falls within the time range corresponding to the first reference ephemeris auxiliary data. For ease of understanding, assume that the first reference ephemeris auxiliary data is Figure 3 The reference ephemeris auxiliary data of section 3 of B of, and its corresponding time range is from 12:00 to 18:00. If the second GNSS time is 17:30, then the second GNSS time of 17:30 falls within the time range corresponding to the first reference ephemeris auxiliary data, and the identification and positioning method 60 proceeds to operation 606. In contrast, if the second GNSS time is 19:00, then the second GNSS time of 19:00 falls outside the time range corresponding to the first reference ephemeris auxiliary data, and the identification and positioning method 60 proceeds to operation 608.
[0064] In operation 606, since the second GNSS time falls within the time range corresponding to the first reference ephemeris auxiliary data, the first reference ephemeris auxiliary data is still applicable to identify whether the second broadcast GNSS signal to be identified is a spoofing signal 180. Therefore, processor 280 does not update the first reference ephemeris auxiliary data.
[0065] In operation 608, since the second GNSS time falls outside the time range corresponding to the first reference ephemeris auxiliary data, the first reference ephemeris auxiliary data is no longer applicable to identify whether the second broadcast GNSS signal to be identified is a spoofing signal 180. Therefore, processor 280, based on the second GNSS time of 19:00, updates the reference ephemeris auxiliary data from Figure 3 The candidate ephemeris auxiliary data 202 of section 3 of B of to the candidate ephemeris auxiliary data 202 of section 4. The candidate ephemeris auxiliary data 202 of section 4 is used as the second reference ephemeris auxiliary data.
[0066] In operation 610, processor 280 determines whether the second broadcast GNSS signal to be identified comes from satellite 16 based on the first reference ephemeris auxiliary data, and its operation method is similar to Figure 4Operation 410 is not described in detail here. When it is determined that the signal is not from satellite 16, identification and positioning method 60 proceeds to operation 612. When it is determined that the signal is from satellite 16, identification and positioning method 60 proceeds to operation 614.
[0067] In operation 612, processor 280 performs positioning based on the first reference ephemeris auxiliary data.
[0068] In operation 614, processor 280 performs positioning based on the second broadcast ephemeris data to be identified.
[0069] In operation 616, processor 280 determines whether the second broadcast GNSS signal to be identified is from satellite 16 based on the second reference ephemeris auxiliary data, and the operation method is similar to Figure 4 Operation 410 is not described in detail here. When it is determined that the signal is not from satellite 16, identification and positioning method 60 proceeds to operation 618. When it is determined that the signal is from satellite 16, identification and positioning method 60 proceeds to operation 614.
[0070] In operation 618, processor 280 performs positioning based on the second reference ephemeris auxiliary data.
[0071] The above is only a preferred embodiment of the present invention, but it is not intended to limit the scope of the present invention. Any person familiar with this technology can make further improvements and changes without departing from the spirit and scope of the present invention. Therefore, the protection scope of the present invention shall be subject to the scope defined by the claims of this application.
Claims
1. A global navigation satellite system integrated circuit, characterized in that, comprising: a global navigation satellite system module for receiving a broadcast global navigation satellite system signal to be identified; a memory for storing a plurality of candidate ephemeris auxiliary data, wherein the plurality of candidate ephemeris auxiliary data are not provided by the global navigation satellite system module; and a processor for determining whether the broadcast global navigation satellite system signal to be identified is a spoofing signal based on reference ephemeris auxiliary data among the plurality of candidate ephemeris auxiliary data, wherein the global navigation satellite system integrated circuit has an effective time reference point, and the processor is configured to obtain the reference ephemeris auxiliary data from the plurality of candidate ephemeris auxiliary data based on the effective time reference point.
2. The global navigation satellite system integrated circuit according to claim 1, characterized in that, the processor is configured to determine that the broadcast global navigation satellite system signal to be identified is a spoofing signal when a difference between the same parameters between the reference ephemeris auxiliary data and the ephemeris data to be identified included in the broadcast global navigation satellite system signal to be identified is greater than a critical value.
3. The global navigation satellite system integrated circuit according to claim 2, characterized in that, in response to an attack event that the broadcast global navigation satellite system signal to be identified is a spoofing signal, the processor performs positioning based on the reference ephemeris auxiliary data but not based on the ephemeris data to be identified.
4. The global navigation satellite system integrated circuit according to claim 3, characterized in that, the plurality of candidate ephemeris auxiliary data are provided by a WiFi receiver.
5. The global navigation satellite system integrated circuit according to claim 1, characterized in that, further comprising: a real-time clock for providing an effective clock time, wherein the processor uses the effective clock time as the effective time reference point.
6. The global navigation satellite system integrated circuit according to claim 1, characterized in that, further comprising: a transmission interface, wherein the processor receives an effective time via either the transmission interface or a non-global navigation satellite system receiver, and uses the effective time as the effective time reference point.
7. The global navigation satellite system integrated circuit according to claim 1, characterized in that, the processor uses the global navigation satellite system time of the broadcast global navigation satellite system signal to be identified as the effective time reference point.
8. The global navigation satellite system integrated circuit according to claim 1, characterized in that, the broadcast global navigation satellite system signal to be identified is a first broadcast global navigation satellite system signal to be identified, and the reference ephemeris auxiliary data is first reference ephemeris auxiliary data, wherein, after receiving the first broadcast global navigation satellite system signal to be identified, the global navigation satellite system module receives a second broadcast global navigation satellite system signal, and the second broadcast global navigation satellite system signal includes a second global navigation satellite system time. When the second global navigation satellite system time falls outside the time range corresponding to the first reference ephemeris assistance data, the processor is configured to use the second global navigation satellite system time to select, as the second reference ephemeris assistance data, one of the plurality of candidate ephemeris assistance data other than the first reference ephemeris assistance data, wherein the processor is configured to determine whether the second broadcast global navigation satellite system signal to be identified is a spoofing signal based on the second reference ephemeris assistance data.
9. A communication system, characterized in that, it comprises: a global navigation satellite system integrated circuit according to any one of claims 1 to 8; and an antenna coupled to the global navigation satellite system integrated circuit.
Citation Information
Patent Citations
Method for enhanced stand-alone global navigation satellite system (GNSS) performance
US20170299724A1
GNSS receiving device
WO2020100455A1