# Blind Spoofing GNSS Constellation Detection Using a Multi-Antenna Snapshot Receiver +
## 3 Single Detection
Each correlation can be regarded as the cosine of the angle \(\xi_{n,m}\) between two array steering vectors. This is not the spatial angle of the DOA between two satellites (also referred to as the incident angle of the array), but a measure of how similar the two steering vectors are. For the remainder of this article, this angle will be referred to as the steering vector angle. As an example, a uniform linear array (ULA) with an inter-element spacing of half a wavelength has beamforming steering vectors in the form of:  
\[\mathbf{b}=\left[\mathrm{e}^{\mathrm{i}\tau\cdot 1\cdot\mathrm{sin}\theta}, \mathrm{e}^{\mathrm{i}\tau\cdot 2\cdot\mathrm{sin}\theta},...,\mathrm{e}^{ \mathrm{i}\tau\cdot N_{\text{e}}\cdot\mathrm{sin}\theta}\right]^{\intercal}\,, \tag{18}\]  
where \(\theta\) is the spatial angle (incident angle) to the broadside of the array. For a two-element array, the steering vector can be proven to have the form:  
\[\cos\left(\xi_{1,2}\right)=\cos\left(\xi_{2,1}\right)=\cos^{2}\left(\frac{ \tau}{2}\mathrm{sin}\theta\right)\,. \tag{19}\]  
In this case, the steering vector angle \(\xi_{2,1}\) diverges rapidly from the spatial angle \(\theta\) (array incident angle). Figure 2 shows the expected behavior for ULAs with different number of elements. As the number of elements increases, the beamforming angle separates quicker with smaller spatial angles. Consequently, with more elements used, increased diversity can be exploited for detection. Figure 2: Spatial angle \(\theta\) vs. steering vector angle \(\xi_{m,n}\) for a ULA. ©IEEE. Reprinted, with permission, from [22]. ULAs are straightforward to analyze. However, they are not suitable for GNSS applications as these antenna arrays only have beamforming capabilities in a single dimension. GNSS signals can originate from any direction above the horizon; hence, two-dimensional beamforming capabilities are required. Therefore, uniform circular arrays (UCAs) are often used for GNSS receivers [38]. As the beamforming properties of arrays are dependent on the array configuration, the performance of this method will be fundamentally different. Figure 3 shows the expected behavior for a UCA under similar circumstances. The previous two figures only show the ideal case of one signal being on the broadside of the antenna array and the other signal moving relative to it. ULAs and UCAs have ambiguities: two satellites at different locations can have similar steering vectors. The result is that these signals would seem to be originating from the same direction and would be detected and classified as spoofed signals. In order to reduce the false detection probability due to array ambiguities, the cumulative distribution function (CDF) for all the difference angles are calculated. The CDF is used to summarize the statistics for different array orientations, as the array steering vector is dependent on the array geometry, orientation, and incident angle. Hence, the CDF represents the average likelihood that the difference value is below a certain value. More details of CDFs and statistical distributions are presented in Section 5. Figure 4 shows the CDF function of the steering vector angle for a UCA consisting of six elements. The test angles are for a single cross-section consisting of all elevation angles and a single azimuth value. The angles to which the CDF first achieves a value equal to one (i.e., 100 % certainty), follows the ideal case as shown in Figure 3. However, it can also be seen that there are many cases where the steering vector angle is spread which may result in poor performance in these cases. Figure 3: Spatial angle \(\theta\) vs. steering vector angle \(\xi_{m,n}\) for a UCA. ©IEEE. Reprinted, with permission, from [22]. This analysis shows that the separation between the spatial and steering vector angle can be used as a good detector to determine how similar the origins of two signals are. The detector threshold is tuned according to a symbolic steering vector separation angle.