朱瑞晨,王文益
(中國民航大學(xué) 天津市智能信號與圖像處理重點(diǎn)實(shí)驗(yàn)室,天津 300300)
隨著全球衛(wèi)星導(dǎo)航系統(tǒng)(Global Navigation Satellite System, GNSS)的建立與發(fā)展,更多的用戶享受到了高精度及全天候的定位、導(dǎo)航與授時服務(wù)[1-2]。然而,民用GNSS信號由于其公開的信號結(jié)構(gòu)與極低的信號功率,極易受到各種干擾[3-4]。其中,欺騙式干擾可以使接收機(jī)解算出錯誤的位置與時間,給接收機(jī)的信息安全帶來了極大威脅[5-6]。
根據(jù)實(shí)現(xiàn)與檢測的難度,可以將欺騙技術(shù)分為簡單欺騙式干擾[7]、中級欺騙式干擾與高級欺騙式干擾[8]。簡單欺騙式干擾首先發(fā)射大功率的壓制式干擾,解除接收機(jī)跟蹤環(huán)路的鎖定狀態(tài),隱蔽性較差[9];高級欺騙式干擾往往采用多個發(fā)射天線發(fā)射欺騙信號,系統(tǒng)的復(fù)雜度與造價成倍提升[10];中級欺騙式干擾需要對真實(shí)信號的碼相位與載波頻率進(jìn)行大致的估計(jì),其中的誘導(dǎo)式欺騙干擾可以在不中斷接收機(jī)跟蹤狀態(tài)的前提下,隱蔽地奪取跟蹤環(huán)路的控制權(quán),將接收機(jī)逐漸誘騙至預(yù)設(shè)的欺騙地點(diǎn),較簡單欺騙式干擾更加隱蔽,比復(fù)雜欺騙式干擾更易實(shí)現(xiàn),逐漸成為一種主流的欺騙技術(shù)[11-12]。因此,如何能夠準(zhǔn)確并迅速地檢測誘導(dǎo)式欺騙攻擊,已成為一個亟待解決的問題。
SQM(Signal Quality Monitoring)技術(shù)已在多徑與欺騙檢測領(lǐng)域得到了廣泛應(yīng)用[13],通過接收機(jī)跟蹤環(huán)路中超前、即時與滯后相關(guān)器的輸出構(gòu)建SQM 指標(biāo)[14-15],相較于基于天線陣列與多源信息融合的方法,沒有引入額外的硬件設(shè)備,實(shí)用性大大提高。文獻(xiàn)[16]首先提出了Ratio 與Delta 算法,用于檢測多徑效應(yīng),Delta 算法主要利用了相關(guān)峰的對稱性,而Ratio 算法主要檢測相關(guān)峰異常的尖銳與平坦。隨后,文獻(xiàn)[17]在一系列欺騙場景中,驗(yàn)證了Ratio 與Delta 算法檢測欺騙攻擊時的有效性。文獻(xiàn)[18]通過檢測欺騙超前與滯后相關(guān)器的相位差建立了ELP 度量。此外,文獻(xiàn)[19]提出了對SQM 指標(biāo)進(jìn)行滑動窗口均值與方差的方法,顯著降低了環(huán)路噪聲的影響,提升了欺騙檢測的有效性。
隨著誘導(dǎo)式欺騙干擾技術(shù)不斷精進(jìn)[20],欺騙攻擊的隱蔽性也逐漸提高,導(dǎo)致傳統(tǒng)SQM 算法的欺騙檢測性能有所下降。此外,當(dāng)前接收機(jī)工作的環(huán)境十分復(fù)雜,多徑干擾是常見的定位誤差來源[21],與欺騙干擾類似,多徑干擾同樣會引起相關(guān)峰畸變,進(jìn)而引起基于SQM 的欺騙檢測算法虛警,使得算法的檢測性能進(jìn)一步惡化。
S 曲線是指在接收機(jī)碼跟蹤環(huán)路中,超前減滯后相關(guān)值的碼鑒別曲線,S 曲線的過零點(diǎn)偏差(S Curve Bias,SCB)與SCS(S Curve Slope)常用于評估衛(wèi)星導(dǎo)航信號質(zhì)量[22]。當(dāng)衛(wèi)星信號受到通道特性、多徑干擾及接收機(jī)熱噪聲影響時,S 曲線過零點(diǎn)不再鎖定至0 碼片處,產(chǎn)生不同程度的偏差[23]。文獻(xiàn)[24]最先提出了SCS 的定義,并使用SCS 對衛(wèi)星導(dǎo)航信號存在群時延失真的情況進(jìn)行了分析。文獻(xiàn)[25]首次將SCB 應(yīng)用于誘導(dǎo)式欺騙檢測,隨后又使用滑動窗口方差方法進(jìn)行了改進(jìn),取得了較好的檢測效果。本文提出了一種基于SCS 的多星聯(lián)合誘導(dǎo)式欺騙干擾檢測算法,利用誘導(dǎo)式欺騙攻擊時的動態(tài)特性,使用SCS 構(gòu)建欺騙檢測指標(biāo),并通過檢驗(yàn)接收機(jī)遭受欺騙攻擊時不同方向衛(wèi)星的一致性[26],區(qū)分多徑效應(yīng)與欺騙攻擊,極大地降低了多徑干擾引起的欺騙檢測算法虛警,同時提升了檢測性能。本文選用美國德州大學(xué)公開的TEXBAT(Texas Spoofing Test Battery)實(shí)采信號數(shù)據(jù)集[27]評估所提算法的檢測性能,并與Ratio、Delta、ELP 三種傳統(tǒng)的SQM 算法進(jìn)行了比較。使用衛(wèi)星信號模擬器生成了含有多徑干擾的衛(wèi)星信號,檢驗(yàn)所提算法的抗多徑性能,實(shí)驗(yàn)結(jié)果表明,所提算法對于誘導(dǎo)式欺騙干擾有較好的檢測效果,并且提升了遭遇多徑干擾的魯棒性。
誘導(dǎo)式欺騙干擾通過逐漸調(diào)整欺騙信號碼相位、功率等參數(shù)來控制目標(biāo)接收機(jī)跟蹤環(huán)路,使其偏離正確的位置或時間。通過真實(shí)信號與欺騙信號的相關(guān)峰模型來演示典型的誘導(dǎo)式欺騙攻擊的過程,如圖1 所示。欺騙信號首先以較低的功率偽裝成多徑信號逐漸與真實(shí)信號碼相位對齊,對齊之后,逐漸提升欺騙信號的功率,直至高于真實(shí)信號,奪取目標(biāo)接收機(jī)跟蹤環(huán)路的控制權(quán)。隨后,欺騙信號調(diào)整碼速率,緩慢偏離真實(shí)信號。當(dāng)跟蹤環(huán)路鑒相器不再受真實(shí)信號影響后,接收機(jī)便完全由欺騙信號控制,欺騙成功。
圖1 誘導(dǎo)式欺騙攻擊過程
以GPS L1 C/A 信號為例,當(dāng)單天線接收機(jī)遭受到誘導(dǎo)式欺騙攻擊時,接收到的混合中頻信號由真實(shí)信號、欺騙信號與噪聲組成,可表示為:
式中:xa(t)表示真實(shí)信號;xs(t)表示欺騙信號;n(t)表示均值為0、方差為的加性高斯白噪聲。真實(shí)信號與欺騙信號又可表示為:
式中:下角標(biāo)a、s 分別表示真實(shí)與欺騙信號;上角標(biāo)i表示第i顆衛(wèi)星信號;N表示目標(biāo)接收機(jī)可見衛(wèi)星總數(shù);P表示信號功率;D表示取值為±1 的導(dǎo)航數(shù)據(jù)位;C表示偽隨機(jī)碼;τ表示信號的碼延時;f0表示混頻后信號的中心頻率;fd表示由于衛(wèi)星與目標(biāo)接收機(jī)之間相對運(yùn)動產(chǎn)生的多普勒頻率;φ表示信號的初始載波相位。
剝離中頻信號剩余的載波,并經(jīng)過Tms 的相干積分后,輸入碼跟蹤環(huán)路,當(dāng)碼跟蹤環(huán)路采用非相干型鑒相器時,超前、即時與滯后的相關(guān)器輸出可表示為:
式中:d為超前與滯后相關(guān)器的間隔,本文設(shè)為1 chip;sinc( ·)為信號經(jīng)過相干積分后的損耗;Δfd,s和Δfd,a分別為本地生成信號與欺騙信號以及真實(shí)信號的載波多普勒頻差;Ra(t,τ)與Rs(t,τ)分別表示真實(shí)信號和欺騙信號與本地生成信號的互相關(guān)函數(shù)。
S 曲線過零點(diǎn)斜率在無干擾的理想環(huán)境下,為τ∈( 0,1 )時自相關(guān)函數(shù)斜率的二倍[28]。以GPS L1 C/A信號為例,將相關(guān)峰的幅值歸一化后,當(dāng)不存在誘導(dǎo)式欺騙干擾時[24],如圖2所示,SCS的理論值為-2;當(dāng)遭受誘導(dǎo)式欺騙干擾攻擊時,S 曲線產(chǎn)生畸變,SCS 會受到欺騙信號影響而偏離理論值,故SCS可作為欺騙檢測的檢測量。
圖2 S 曲線示意圖
由于相干幅值型鑒相器的計(jì)算量比較大,實(shí)際中大多采用非相干功率型鑒相器,使用非相干超前減滯后功率型鑒相器的S 曲線可用下式表示:
τ(t)為碼相位的偏差,S 曲線過零點(diǎn)εbias(t)與SCS的定義式[24]如下:
SCS 值偏差的大小取決于欺騙信號參數(shù)、接收機(jī)跟蹤環(huán)路配置等因素。為了能夠更清晰地觀察在誘導(dǎo)式欺騙過程中SCS 的變化過程,減小噪聲帶來的影響,如圖3 所示,使用滑動窗口均值的方法[19]對原始SCS 值進(jìn)行處理,表達(dá)式如下:
圖3 滑動窗口均值示意圖
式中:W表示滑動均值窗口的長度;N表示滑動窗口的總個數(shù);L表示滑動間隔,即為滑動窗口從當(dāng)前位置移動到下個位置的步長,決定了檢測的頻次,本文設(shè)為10 ms。
根據(jù)N-P(Neyman Pearson)準(zhǔn)則,欺騙檢測的驗(yàn)證分析可視為二元信號檢測問題,將欺騙攻擊檢測分為兩種判決假設(shè)情況:H0為不存在欺騙攻擊,H1為存在欺騙攻擊。二元信號檢測函數(shù)?可表示為:
針對欺騙檢測問題來說,虛警概率Pf為不存在欺騙干擾時,錯誤判斷欺騙干擾存在的概率,檢測概率Pd為存在欺騙干擾時,正確判斷欺騙干擾存在的概率。通過設(shè)定檢測門限Thl與Thu,便可通過SCS 的概率密度函數(shù)求得虛警概率與檢測概率,計(jì)算公式如下:
式中:p(ε(t);H0)與p(ε(t);H1)分別表示存在與不存在欺騙干擾時,SCS 的概率密度函數(shù)。若要求得SCS 的概率密度函數(shù),則首先需要求出S 曲線的概率密度函數(shù)。當(dāng)S 曲線采用功率型相關(guān)器時,即時碼相關(guān)器的輸出值服從自由度為1 的卡方分布,根據(jù)卡方分布的性質(zhì)可知,卡方分布僅具有可加性,因此很難求出S 曲線的概率密度。此外,存在欺騙干擾時,SCS 的概率密度函數(shù)還受到欺騙信號的功率、多普勒頻率與碼延時的影響,但是受到欺騙攻擊的目標(biāo)接收機(jī)無從得知欺騙信號的具體參數(shù),故難以推導(dǎo)出SCS 的概率密度函數(shù)。
因此,采用文獻(xiàn)[29]提出的統(tǒng)計(jì)方法代替概率密度函數(shù)的計(jì)算方法得出虛警概率P?f,表達(dá)式如下:
在實(shí)際場景中,衛(wèi)星導(dǎo)航接收機(jī)的工作環(huán)境十分復(fù)雜,接收到的信號中可能會混入多徑干擾,同樣會造成SCS 的變化,觸發(fā)接收機(jī)欺騙檢測算法報警,因此當(dāng)SCS指標(biāo)超過欺騙檢測閾值時,需要進(jìn)一步確定接收機(jī)受到的是欺騙攻擊還是多徑效應(yīng)。
多徑效應(yīng)取決于接收機(jī)所處周圍環(huán)境,對于不同方位角與仰角的衛(wèi)星,通常會受到不同程度的多徑效應(yīng)。如圖4a)所示,僅當(dāng)衛(wèi)星信號來向存在反射障礙物時,該通道才受到多徑信號的影響。而欺騙器為了達(dá)到預(yù)期的欺騙效果,如將目標(biāo)接收機(jī)欺騙至預(yù)設(shè)的欺騙地點(diǎn),通常需要將所有可見星全部欺騙,如圖4b)所示,接收機(jī)所有通道均受到欺騙信號攻擊帶來的影響。因此,可利用多顆衛(wèi)星遭受欺騙攻擊時的一致性來區(qū)分多徑效應(yīng)與欺騙攻擊[26],檢測算法流程圖如圖5 所示。
圖4 欺騙攻擊與多徑效應(yīng)對比
圖5 檢測算法流程圖
為了減少算法的復(fù)雜度,當(dāng)接收機(jī)穩(wěn)定跟蹤K顆衛(wèi)星時,首先遴選M顆仰角高、方位角相差大的衛(wèi)星進(jìn)行多星聯(lián)合校驗(yàn)。對選取的每顆衛(wèi)星信號,通過式(12)計(jì)算得出SCS 值,然后經(jīng)過式(13)進(jìn)行滑動窗口平均得到MSCS;隨后,在預(yù)設(shè)的虛警率下計(jì)算得出檢測門限,并將MSCS與檢測門限Th進(jìn)行比較來判定當(dāng)前通道衛(wèi)星是否受到干擾;最后,對M個檢測結(jié)果進(jìn)行聯(lián)合檢驗(yàn),如果M顆可見衛(wèi)星的SCS 值同時超過閾值,則判定存在欺騙干擾,如果僅有部分通道檢測結(jié)果超過閾值,則判定存在多徑干擾。所提算法的虛警率如式(19)所示,由參與檢驗(yàn)所有衛(wèi)星的虛警率共同決定[26]。
在上文分析的基礎(chǔ)上,將本文提出的欺騙檢測算法嵌入至GPS 軟件接收機(jī)中。本節(jié)使用美國德州大學(xué)公開的TEXBAT 欺騙干擾實(shí)采數(shù)據(jù)集評估SCS 欺騙檢測算法的性能,并與傳統(tǒng)的Ratio、Delta、ELP 算法的檢測能力進(jìn)行比較。
TEXBAT 數(shù)據(jù)集共包含8 條欺騙數(shù)據(jù),采樣率為25 MHz,中心頻率為0 MHz,量化位數(shù)為16 bits,C/A 碼速率為1.023 MHz。其中ds7 數(shù)據(jù)為誘導(dǎo)式欺騙干擾場景,從110 s 開始,向各通道GPS L1 C/A 信號注入欺騙信號,110~150 s 欺騙信號逐漸與真實(shí)信號對齊,并提升功率奪取跟蹤環(huán)路的控制權(quán),150 s 后欺騙信號在碼域上以相對于真實(shí)信號1.2 m/s 的速度牽引,最終使目標(biāo)接收機(jī)產(chǎn)生1.27 μs 的時鐘偏移,在本節(jié)中,使用ds7 進(jìn)行實(shí)驗(yàn)分析。
首先,以第23 號衛(wèi)星為例,SCS 算法檢測結(jié)果如圖6a)所示。在同步階段,即110~150 s 期間,SCS 值略有波動。從150 s 開始,由于欺騙信號開始提升碼速率,逐漸遠(yuǎn)離真實(shí)信號碼相位,SCS 值發(fā)生了較大變化。SCS 均值算法檢測結(jié)果如圖6b)所示,可以看出,SCS 值 經(jīng) 過 了100 ms 的 滑 動 窗 口W平 均 后,SCS 值 的變化過程更加明顯,有效地降低了噪聲對欺騙檢測指標(biāo)的影響。
圖6 SCS 算法檢測結(jié)果
為了更好地表現(xiàn)SCS 算法的檢測性能,并與其他SQM 算法進(jìn)行比較。圖7 顯示了設(shè)定虛警率為1%,檢測時間窗口為5 s,傳統(tǒng)SQM 值和SCS 值經(jīng)過100 ms 的滑動窗口平均后,檢測率Pd的變化。在0~110 s 之間沒有被欺騙干擾攻擊時,4 種指標(biāo)的Pd均約為1%,與設(shè)定的虛警率1%一致。110~150 s 欺騙信號與真實(shí)信號同步階段,SCS 的檢測效果最優(yōu),最高達(dá)到93.27%,ELP 次之,最高達(dá)到62.31%,但是檢測效果皆不甚穩(wěn)定。150 s后,隨著欺騙信號與真實(shí)信號之間的碼相位逐漸拉大,相關(guān)峰的畸變越來越明顯,SCS 算法的檢測性能快速提升,SCS 算法檢測率在170 s 時達(dá)到100%,并一直保持。在傳統(tǒng)SQM 算法中,表現(xiàn)最好的是Ratio 算法,然而Ratio 算法檢測率在160~230 s 內(nèi)波動劇烈,一度完全不能檢出欺騙干擾。從整個誘導(dǎo)過程來看,SCS 算法的欺騙檢測響應(yīng)快,并且穩(wěn)定保持較高的檢測率,顯著優(yōu)于三種傳統(tǒng)的SQM 指標(biāo)。
圖7 SCS 與其他算法檢測概率比較
圖8 展示了在任意假設(shè)的虛警概率下對欺騙攻擊的檢測能力,即接收機(jī)工作特征(Receiver Operating Characteristic, ROC)曲線??梢钥吹剑姆N算法經(jīng)過100 ms 的滑動窗口平均后,在相同的虛警率下,SCS 算法的Pd均高于三種傳統(tǒng)SQM 算法。虛警率為1%時,SCS 的Pd達(dá)到了86.87%。而在傳統(tǒng)算法中,表現(xiàn)最好的Ratio 度量此時的Pd僅為68.15%。
圖8 SCS 與其他算法ROC 曲線比較
單星和多星SCS 聯(lián)合檢測的ROC 曲線如圖9 所示。從圖9 中可以看出,當(dāng)使用PRN13 與PRN23 聯(lián)合進(jìn)行欺騙檢測時,相比于PRN13單顆星的檢測效果,在任意的虛警率下,欺騙檢測率均有小幅提升。虛警率5%時,單顆星SCS 的Pd達(dá)到了88.95%,雙星SCS 的Pd提升至91.06%。
圖9 單星和多星SCS 聯(lián)合檢測的ROC 曲線
但是,欺騙檢測性能并不能隨著參與聯(lián)合檢測衛(wèi)星數(shù)的增加而無限提升。當(dāng)使用PRN3、PRN13 與PRN23聯(lián)合進(jìn)行欺騙檢測時,三星SCS 聯(lián)合檢測的ROC 曲線并無明顯提高,這是因?yàn)閐s7 中欺騙信號在同步階段逐漸改變載波相位將真實(shí)信號調(diào)零,此時相關(guān)峰曲線僅可見單個峰,欺騙攻擊帶來的畸變并不明顯。
本文使用衛(wèi)星信號模擬器生成含有多徑干擾的衛(wèi)星信號,驗(yàn)證多星聯(lián)合檢測算法在多徑環(huán)境下的性能,仿真實(shí)驗(yàn)的詳細(xì)參數(shù)如表1 所示。
表1 仿真參數(shù)
圖10 展示了該時刻衛(wèi)星天頂圖共有6 顆衛(wèi)星可見,其中PRN3 的仰角最低,最有可能在信號傳輸路徑上發(fā)生信號的反射,故在PRN3 信號中添加多徑信號。多徑信號于第50 s 注入真實(shí)信號,多徑干擾與真實(shí)信號的相對碼時延為0.5 chip,干擾功率較真實(shí)信號低4 dB。從圖11 中可以看出,0~50 s 內(nèi),真實(shí)信號相關(guān)峰保持良好的對稱性,50 s 后由于多徑信號的影響,相關(guān)峰的左側(cè)與右側(cè)不再對稱,整體向右側(cè)偏移。
圖10 衛(wèi)星天頂圖
圖11 相關(guān)峰變化圖
PRN3 和PRN25 方位角分別位于189°與68°,相差較大,可認(rèn)為兩顆衛(wèi)星信號來向的環(huán)境不同,且PRN25的仰角最高為67°,最接近垂直入射目標(biāo)接收機(jī),故選用PRN25 與PRN3 進(jìn)行聯(lián)合檢測。圖12 展示了對PRN3 與PRN25分別進(jìn)行SCS檢測的結(jié)果,可以看到PRN3在50 s后由于受到了多徑信號的影響,SCS 指標(biāo)偏離了理論值,而PRN25 的SCS 指標(biāo)則一直圍繞理論值波動。
圖12 PRN3 與PRN25 SCS 算法檢測結(jié)果
圖13 展示了虛警率為1%時,單顆星與雙星聯(lián)合SCS 檢測的結(jié)果。從圖中可以看到:當(dāng)接收機(jī)僅對PRN3 進(jìn)行欺騙檢測時,0~50 s 內(nèi)Pd約為1%,與設(shè)定的虛警率一致,50 s 多徑信號加入后,Pd急劇提高,并長時間維持在60%~90%,但此時并不存在欺騙信號攻擊,欺騙檢測算法錯誤地將多徑信號判別為欺騙信號;當(dāng)對PRN3 與PRN25 聯(lián)合進(jìn)行欺騙檢測時,即使在多徑信號加入后,多星聯(lián)合檢測算法仍能將Pd壓制在35%以下,展現(xiàn)了算法良好的魯棒性。
圖13 單顆星與雙星聯(lián)合SCS 檢測率
使用二元判決評估多星聯(lián)合檢測算法對多徑干擾的抑制效果,當(dāng)檢測概率低于50%時,判定不存在欺騙干擾,當(dāng)檢測概率高于50%時,即判定存在欺騙干擾。從圖14 中可以看出,在50 s 加入多徑信號后,當(dāng)僅采用PRN3 進(jìn)行SCS 檢測時,欺騙檢測率高達(dá)92%,在絕大多數(shù)時刻都觸發(fā)了欺騙檢測警報,但此時,實(shí)際上是由多徑信號引起的虛警。而當(dāng)使用PRN3 與PRN25 進(jìn)行聯(lián)合SCS 檢驗(yàn)時,欺騙檢測率始終保持為0%,多徑信號引發(fā)的欺騙檢測算法虛警被顯著抑制,雖然付出了額外的運(yùn)算資源,但顯著提高了欺騙檢測算法的實(shí)用性。
圖14 單顆星與雙星聯(lián)合SCS 檢測二元判決對比
本文提出了一種基于S 曲線過零點(diǎn)斜率的多星聯(lián)合誘導(dǎo)式欺騙檢測算法,使用美國德州大學(xué)公開的TEXBAT 實(shí)采欺騙信號數(shù)據(jù)集進(jìn)行了實(shí)驗(yàn)分析,驗(yàn)證了算法性能,并與三種傳統(tǒng)的SQM 算法進(jìn)行了對比,實(shí)驗(yàn)結(jié)果表明,所提算法的檢測性能優(yōu)于三種傳統(tǒng)SQM 算法。通過信號模擬器生成含有多徑干擾的衛(wèi)星信號,來評估多星聯(lián)合檢驗(yàn)算法的抗多徑能力,從實(shí)驗(yàn)結(jié)果可以看出,多徑信號引起接收機(jī)欺騙檢測算法的虛警被顯著抑制,提高了欺騙檢測算法的魯棒性。