999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

基于XGBoost的混合模式門級硬件木馬檢測方法

2021-10-31 06:21:22姚嘉祺毛志明
電子與信息學報 2021年10期
關鍵詞:特征信號檢測

張 穎 李 森 陳 鑫 姚嘉祺 毛志明

(南京航空航天大學電子信息工程學院 南京 211106)

1 引言

隨著集成電路芯片全球化產業鏈模式的發展,硬件安全問題日益成為繼軟件安全問題后存在的新隱患。硬件木馬電路可能會在芯片設計階段和制造階段被插入到芯片中[1,2]。目前硬件木馬電路的檢測技術主要分為動態檢測和靜態檢測兩類。動態檢測方法指在對待測電路施加外部激勵的情況下,觀察模擬電路或實際電路的行為從而檢測是否存在木馬電路,旁路分析法是其主流方式之一[3,4]。文獻[5]在系統層次對傳統的旁路分析檢測方法進行改進,提出一種基于支持向量機 (Support Vector Machine,SVM)算法檢測的方案。考慮到木馬電路的觸發結構通常較為隱蔽且不易觸發,動態檢測需要建立特殊的測試激勵來提高木馬電路的觸發概率[6]。文獻[7]提出了一種基于變異分析的統計測試生成方法,以激活電路中存在的低活躍性硬件木馬。文獻[8]通過獲取信號的可測性和可觀性,使用聚類的機器學習算法進行硬件木馬檢測。文獻[9]首次提出了一種利用路徑延遲順序的檢測方法。

靜態檢測方法不需要對電路進行仿真測試,利用木馬電路與普通電路的差異分析對木馬電路進行檢測。文獻[10]通過靜態布爾函數分析得到具有弱影響力的輸入,將其標記為可疑信號。但該方法不易檢測時序電路木馬,并且不適用于大規模集成電路。伴隨著新型木馬電路的不斷涌現,近年來,機器學習算法成為解決硬件木馬靜態檢測的有效方法之一[11,12]。文獻[13]提出一種基于隨機森林的木馬檢測方法。首先提出51個硬件木馬特征,最終選擇其中11個特征作為最終特征用于機器學習訓練和分類。文獻[14]是在文獻[13]的基礎上,針對文獻[13]中不足提出的一種基于邊界檢測的優化方法。

動態檢測在順序觸發木馬和不可觀測性木馬方面相對靜態檢測會更有優勢,而靜態檢測在組合觸發、隱式觸發、可觀測性木馬上有較大優勢。因此,本文提出一種基于XGBoost算法的動態和靜態檢測相結合的混合模式門級硬件木馬檢測方法。

本文的貢獻主要體現在以下方面:

(1)提出一種基于XGBoost算法的混合模式門級硬件木馬檢測方法。這是首次提出并使用靜態檢測和動態檢測相結合的多層次檢測方法對硬件木馬進行檢測,為硬件木馬檢測提供新方向。

(2)提出了兩種新的靜態木馬電路特性:3級觸發網絡和環形振蕩器結構,并作為特征用于硬件木馬電路靜態檢測的機器學習算法中。實驗結果證明,這兩種特征對木馬檢測具有積極效應。

(3)針對掃描鏈中存在木馬電路的風險,提出基于掃描鏈的木馬電路特征和檢測方法,進一步優化了靜態硬件木馬檢測方法。

(4)對木馬電路的基準測試集Trust-Hub[15]和DeTrust[16]木馬電路實施檢測,所得的實驗結果表明,與現有的其他檢測方法相比,該方法在大多數情況下具有更準確的硬件木馬電路檢測效果,對Trust-Hub測試集可以達到94.0%的平均真陽率(True Positive Rate,TPR)和99.3%的平均真陰率(True Negative Rate,TNR)的檢測精度。對自實現的DeTrust木馬電路可達到平均82.1%TPR和92.2%TNR的檢測精度。

2 門級硬件木馬特征

本節通過分析木馬電路和普通電路存在的差異,提出兩種全新的靜態木馬電路特征并與傳統木馬電路特征相結合,用于實現靜態硬件木馬檢測。檢測方法以電路的每個線網類型作為節點來提取一系列木馬特征,傳統的木馬電路特征包括邏輯門的扇入數量、多路復用器、循環結構、觸發器、原始輸入輸出距離等,兩種新提出的木馬特征為3級觸發網絡和環形振蕩器結構。

2.1 3級觸發網絡(three_level_trigger)

在組合邏輯電路中,相比于普通電路,木馬電路具有觸發信號常為單一觸發或少數觸發且觸發結構復雜等特點[17,18]。針對這一特點進行分析,提出一種3級觸發網絡特征。設net是待測電路的線網,3級觸發信號(three_trigger_line)定義為連續通過3層邏輯級的輸出信號,每一邏輯級為基本邏輯門中的1個或多個且該信號的第1級扇入數大于16。扇入數的閾值為16是根據對Trust-Hub木馬庫中同類特征電路進行統計分析而設定的。3級觸發網絡(three_level_trigger)定義為與3級觸發信號(three_trigger_line)相關聯的所有輸入信號。3級觸發網絡特征如圖1所示。

圖1 3級觸發網絡特征示意圖

3級觸發信號通過多級基本邏輯門等低觸發的開關門電路,一定程度上減少了該信號在組合電路中觸發的概率,契合木馬電路觸發概率低的特點。同時,較大的第1級扇入數契合木馬觸發電路具有復雜邏輯結構的特點。所以,本文將3級觸發網絡作為區分木馬電路與普通電路的特征之一,并將在4.2節中給出其有效性的驗證。

2.2 環形振蕩器結構(ring_oscillator)

環形振蕩器定義為由奇數個反相器首尾相連組成的環形電路。在相當一部分的硬件攻擊中,環形振蕩器電路會被用作木馬電路的負載模塊[17,18]。例如,圖2所示電路通過木馬觸發信號控制一個29級環形振蕩器木馬負載,以便降低電路性能。

圖2 環形振蕩器結構特征示意圖

因此,本文首次提出一種環形振蕩器的靜態特征提取方案,以靜態特征檢測的方式對環形振蕩器木馬負載進行檢測。設net是待測電路的一個線網類型,環形振蕩器特征定義為線網類型net連續經過3級邏輯級以上的反相器結構,該線網類型net視為木馬可疑信號。由于正常電路中也可能存在環形振蕩器結構,所以環形振蕩器特征還要附加一個判斷條件:如果環形振蕩器的原始觸發信號為已經檢測出的木馬可疑信號且該信號通過一種開關門電路,則該環形振蕩器結構中所有的信號為木馬信號。環形振蕩器特征的有效性將在3.2節中通過實驗證明。

3 混合模式多層級硬件木馬檢測

基于XGboost的混合模式多層級硬件木馬檢測方法具體結構如圖3所示。該方法將靜態檢測與動態檢測相結合,采用多層級的結構對待測電路進行木馬檢測。首先通過分析門級網表的靜態特征,應用XGBoost算法實現第1層級的硬件木馬檢測;繼而對網表中的掃描鏈路進行分析,檢測可能存在的針對掃描電路的木馬攻擊,完成第2層級的木馬檢測;最后利用動態檢測和翻轉率的數據分析,進行第3層級的木馬檢測,最終實現優化的混合多層級門級硬件木馬檢測。

圖3 基于XGBoost的混合多層級硬件木馬檢測框圖

3.1 靜態特征木馬檢測

3.1.1 硬件木馬特征提取

為了便于機器學習算法的執行,需要將待測電路的門級網表劃分為信號模塊和門電路結構模塊。其中,輸入信號、輸出信號、線網信號均屬于信號模塊,它們也被分別放入相應的列表中。門電路結構模塊將進行規范化處理,即將所有門級單元獨立出來,包括門級單元的類型、名稱、輸入輸出信號。

規范化處理后的門級單元將以文本匹配的方式對其進行分析。以線網類型net作為信號的起點,確定該信號所經過的門級單元類型以及該門級單元的輸入輸出信號。每個門級單元建立一個有向圖節點,該節點的標簽表示該門級單元的具體門結構。根據門級單元的輸入輸出信號的相互連接建立有向圖的邊,其中輸入方向的最后一個節點為當前節點,輸出方向的第1個節點為當前節點,這樣就形成了具有輸入輸出特征的有向圖。通過對得到的有向圖的節點特性分析,可獲得前文所述的各節點的木馬電路特征,從而得到待檢測電路的靜態特征數據集。該數據集為第1層級檢測中機器學習算法的處理對象。

3.1.2 XGBoost算法

XGBoost算法是一種梯度提升算法,由多棵回歸樹組成,其核心思想是將許多弱分類器集成在一起,形成一個強分類器,每一個新的分類器都是在原分類器的基礎上沿著損失函數的負梯度方向生成[17]。相比于只通過1階導數對函數進行優化的傳統梯度提升樹(Gradient Boosting Decision Tree,GBDT)算法,XGBoost算法則是對函數進行2階泰勒展開,這使得XGBoost算法具有更快的模型收斂速度。此外,通過在損失函數中添加正則化項來抑制模型復雜度,XGBoost算法還可以有效地防止過擬合。而本文擬使用的實驗樣本數據相較于大規模的機器學習相對較小,較易出現過擬合的現象。此外,提取的門級木馬特征在量綱和單位均有所不同,導致對應的特征值具有較大差異,可能造成機器學習模型難以收斂,而數值高的特征可能具備對模型的較大影響力。基于決策樹的XGBoost算法是通過分析特征數據的分布以及數據特征之間的條件概率來進行葉子節點分裂的,并不是參考特征的具體數值,因而對上述現象具有較好的包容性,因而較為適合用于門級硬件木馬的檢測。

3.1.3 檢測流程

靜態特征的木馬檢測方法的流程是基于靜態特征集和標準木馬庫Trust-Hub所得的訓練數據集,使用XGBoost算法的訓練過程,進行特征集和算法模型的優化,得到最佳特征集和最優參數配置的訓練模型,最后對測試數據集進行硬件木馬檢測,并進行準確率的分析。

其中,最佳特征集是通過交叉驗證的方式對待測電路中提取的靜態特征進行篩選而得到。基于每個特征對檢測結果的重要性排名,設置閾值來篩選特征,最終通過檢測結果的準確率來選擇特征構建最佳特征集。

通過將最佳特征集得到的訓練數據送到機器學習算法中進行模型訓練。針對檢測準確率方面對模型進行評估,調整訓練參數,得到最優的訓練模型。在參數調優過程中對模型性能影響較大的參數主要有學習率、迭代次數、最大樹深度和最小樣本權重。

測試集和訓練集是采用留一法從Trust-Hub的14個門級木馬電路得到的,即每次將14種待測電路中的一種電路作為測試電路,其余的13種電路都作為訓練電路。留一法可以保證每個待測電路對于機器學習模型都是未知的電路結構,為實驗的科學性提供了保證。

3.2 掃描鏈特征的靜態檢測

作為典型的可測性設計技術之一,掃描鏈通常會被添加到門級網表,以提升后期制造測試的效率,然而,由于掃描鏈提供了電路的訪問通路,也極易被木馬制造者所利用。例如,旁路檢測方法需要向待測電路中輸入測試激勵,動態的分析電路實際工作情況,木馬制造者則可能對門級掃描鏈的電路結構進行修改,從而避免木馬電路在測試階段暴露。通過分析硬件木馬電路在掃描鏈電路存在的效應,提出兩種掃描鏈結構中的硬件木馬特征。旨在對基于機器學習的木馬檢測方法進行補充,從而得到更加完善的靜態硬件木馬檢測方案。

3.2.1 掃描鏈使能木馬信號

在添加掃描鏈的過程中,每個正常的時序電路單元都會被轉換為掃描時序單元。例如,原始電路中的D觸發器(D Flip-Flop,DFF)結構在添加過程中會被轉化為掃描D觸發器(Scan D Flip-Flop,SDFF)。木馬制造者可以將木馬電路的觸發信號設置為SE使能信號經過反相器的輸出信號,如圖4中的使能木馬信號所示。這將使得木馬電路在整體電路進行功能測試時一直處于未激活狀態,成功躲避功能檢測。因此掃描鏈使能木馬信號定義為:掃描鏈使能信號SE經過反相器的輸出信號。

3.2.2 未轉換可疑信號

在添加掃描鏈的過程中,還有一些木馬電路的序列單元在木馬設計者的操作下不會被轉換為掃描測試單元,如圖4的未轉換模塊所示。該電路為泄露信息型木馬電路,在添加掃描鏈階段,設計者故意未將木馬電路中的D觸發器轉換為掃描D觸發器,導致在進行功能測試時,木馬電路并未接入掃描電路中,從而躲避檢測。因此,未轉換可疑信號定義為:在添加掃描鏈的過程中,未被轉換成掃描測試單元的正常時序單元中的所有信號。

圖4 掃描鏈中木馬電路結構特征

3.2.3 掃描鏈特征檢測

通過對掃描鏈木馬電路的特征分析,在第2層級對待測電路進行掃描鏈靜態檢測。由于木馬電路在掃描鏈中所展現的特征是獨特的,且是正常電路不可能具備的特征。所以,可以直接對掃描鏈中的木馬電路特征進行提取,將具備特征的信號定義為木馬可疑信號。掃描鏈特征提取使用正則匹配方式,將符合上述提出的特征信號標記為木馬可疑信號。在第2層級檢測中針對第1層級檢測分類出的正常電路繼續進行掃描鏈靜態檢測,并將電路分離為正常電路和木馬電路。

3.3 動態特征檢測

通過總結相關工作,靜態檢測對于木馬電路檢測存在一定的局限性。為了進一步提升檢測效率,在第3層級,將經由第2層級掃描鏈靜態檢測得到的正常電路進行動態檢測,利用動態特征檢測和靜態特征檢測的相互補充,進一步提升檢測方法的準確率。

動態檢測的出發點在于,實際電路工作時,木馬觸發電路的活動率通常低于普通電路,統計分析信號活動率的差異,可以用于鑒別可疑木馬信號。動態翻轉率可以用于標示信號在實際工作時的活動率,假設在m個時鐘周期內節點的翻轉次數為n,則其動態翻轉率為n/m。

選取Trust-Hub上的電路為測試基準,根據電路的功能,注入相應的測試激勵,分析可得木馬電路的平均觸發概率為9.46–10,因此,動態翻轉率小于平均觸發概率的信號將被標記為可疑信號。實驗中,使用Synopsys EDA工具VCS,信號翻轉次數可以從VCS生成的報告中提取。對經由第2層級掃描鏈靜態檢測得到的正常電路進行動態檢測,可得到最終的木馬電路鑒別結果。

4 實驗結果及分析

4.1 檢測環境與指標

目前被廣泛認可的可作為測試基準的數字型木馬電路為Trust-Hub木馬庫和DeTrust項目[19],其中,Trust-Hub提供了門級、RTL級和板級的多種基準木馬電路,DeTrust則是給出了優化隱蔽性的木馬電路設計方法。我們選擇Trust-Hub中的14個基準門級木馬電路和5個自實現的DeTrust木馬作為待測電路,使用基于XGBoost的混合模式檢測方法對待測電路進行檢測。特征提取框架由Python語言構建,使用XGBoost工具庫[20]。靜態特征提取實驗在Win7服務器上進行,使用Intel E5-1607中央處理器,運行頻率為3.1 GHz,內存為16 GB。實驗結果可通過以下指標反映:被標示為木馬樣本(負樣本)的木馬數目(True Negative,TN)、被標示為正確樣本的木馬數目(False Positive,FP)、被標示為木馬的正確樣本數目 (False Negative,FN)、被標示為正確的正確樣本數目 (True Positive,TP),TPR,TNR。其中,TPR,TNR為最重要的檢測準確率指標,分別表示正確樣本被標示為正確的比率、木馬樣本被標示為木馬的比率。而TPR,TNR指標的計算方法為

4.2 特征有效性驗證

為了驗證第2節中木馬特征的有效性,進行如下實驗:采用添加新特征的特征數據集和不添加新特征的特征數據集分別對待測電路進行靜態檢測。考慮到測試電路的基準性,對Trust-Hub中的14個電路進行實驗,根據實驗結果繪制箱線圖,如圖5所示。從箱狀圖中可以看出在添加新特征后,無論TPR值方面還是TNR值方面都有所提高。從箱體結構來看,添加新特征后箱體展現出更優的數據分布,箱體長度明顯縮短,對每個待測電路呈現出較小的波動,有更好的適應性。從平均值來看,TPR平均值提高了8%,TNR平均值提高了2%。這足以證明新提出的特征對特征數據集存在積極效應,有助于獲得更精準的靜態檢測結果。

圖5 特征有效性箱型圖結果對比

4.3 檢測結果

經過對19種待測電路檢測,多層級硬件木馬檢測方法對待測電路的檢測時間平均為2.85~5 s。這表明檢測方法在面對數萬門以上的較大規模的集成電路時,仍然可以在較短的時間內完成待測電路的木馬檢測。待測電路在檢測方法中各層級的檢測結果如表1所示。檢測結果表明,采用多層級檢測平均可以提高3.9%TPR準確率,其中Trust-Hub電路中可提高5.6%TPR準確率,在s38417-T100中甚至提高了36.4%TPR準確率。隨著待測電路通過每個測試層級,檢測方法的檢測效果逐漸提高。在第1層靜態檢測,Trust-Hub電路的TPR平均值為88.4%,DeTrust電路的TPR平均值為80.1%。這證明第1層的靜態檢測可以有效地對木馬電路進行篩選。在經過第2層級檢測后,Trust-Hub電路TPR的平均值增加為90.6%,這表明第2層掃描鏈檢測對檢測結果進行了優化。由于88.4%的木馬電路在第1層級中已經被識別,導致未被檢測到的木馬電路剩余數量基數稀少,且剩余木馬電路檢測難度更加困難。因此,TPR平均值增加2.2%對Trust-Hub電路的第2層級檢測已是較優的結果。由于我們實現的DeTrust電路中并沒包含掃描鏈電路,所以其TPR值并沒變化。經過第3層動態檢測后,Trust-Hub電路TPR的平均值增加為94.0%,DeTrust電路TPR的平均值增加為82.1%,DeTrust電路TNR的平均值增加為92.2%。這證明動態特征檢測與靜態特征檢測相互補充的有效性。同時,最終檢測結果相比于第2層級平均提高了2.8%,這也充分詮釋對木馬電路進行動態靜態結合檢測的必要性。

表1 各層級檢測結果詳細參數

5 與現有方法結果比較

現有的門級硬件木馬檢測方法的相關文獻的檢測對象均為Trust-Hub庫中的門級硬件木馬電路,因此在本節,將通過與現有的其他機器學習檢測方法對于Trust-Hub木馬檢測結果的比較,分析多層級檢測方法的優勢。由于文獻[13]檢測方法使用的測試基準與我們使用的測試基準相同,且文獻[13]無論在檢測效果上還是檢測方法影響因數上都有出色的表現。所以,選擇文獻[13]作為對比較為合適。多層級檢測方法與文獻[13]檢測方法的TPR和TNR的比較結果如圖6所示。

圖6 兩種方法檢測結果比較

從圖6中可以看出在大多數電路中,多層級檢測方法的TPR值均高于文獻[13]檢測方法。特別在一些電路中,如s35932-T200 (網表中具有較為明顯的本文提出的特征),多層級檢測方法相對于文獻[13]高出75%。在平均值方面,多層級檢測方法可以達到94.0%的TPR值,明顯高于文獻[13]的72.8%。這表明多層級檢測方法可以更準確地從待測電路中識別出木馬電路。在TNR方面,從圖6中可以看出兩種檢測方法的TNR值幾乎持平。由于多層級檢測方法需要對木馬進行精準的多層級檢測,可能會導致TNR的值相較于文獻[13]略有不足。硬件木馬檢測方法的主要目的是防止惡意的第三方廠商在電路中插入木馬電路,識別出待測電路中所有的木馬電路是檢測方法的首要任務。所以,可將關注點主要集中在TPR的檢測率,在確保得到較高的TPR檢測率的基礎上,同時保證獲得較高的TNR檢測率。與文獻[13]相較于TNR減少0.4%,多層檢測方法在TPR方面提高21.2%的精度。這對門級硬件木馬電路的檢測效果是最優的且最有效的提高。

6 結束語

基于XGBoost算法的混合模式多層級硬件木馬檢測方法能夠對電路中的每個線網類型節點進行判別分類,并采用動態檢測與靜態檢測相結合的方式識別待測電路中的木馬電路,為硬件木馬檢測提供一個新方向。實驗結果表明,該檢測方法可以高效地識別出大部分木馬電路,且識別效率顯著優于現有的門級電路硬件木馬檢測方法。未來,為了進一步完善混合模式的硬件木馬檢測方法,可以與RTL級的木馬電路檢測相結合,搭建全面且高效的硬件木馬檢測平臺。

猜你喜歡
特征信號檢測
“不等式”檢測題
“一元一次不等式”檢測題
“一元一次不等式組”檢測題
信號
鴨綠江(2021年35期)2021-04-19 12:24:18
完形填空二則
如何表達“特征”
不忠誠的四個特征
當代陜西(2019年10期)2019-06-03 10:12:04
基于FPGA的多功能信號發生器的設計
電子制作(2018年11期)2018-08-04 03:25:42
抓住特征巧觀察
小波變換在PCB缺陷檢測中的應用
主站蜘蛛池模板: 67194在线午夜亚洲| 欧美日本在线播放| 最新加勒比隔壁人妻| 国产99热| 欧美无遮挡国产欧美另类| 99尹人香蕉国产免费天天拍| 欧美a级在线| www.99在线观看| 亚洲精品国偷自产在线91正片| 全免费a级毛片免费看不卡| 在线看国产精品| 国产噜噜噜| 色噜噜综合网| 国产在线精品人成导航| 成人年鲁鲁在线观看视频| 蝴蝶伊人久久中文娱乐网| 国产精品视频猛进猛出| 99热这里只有成人精品国产| 538国产视频| 精品国产三级在线观看| 在线观看91香蕉国产免费| 久久这里只精品国产99热8| 国产麻豆另类AV| 欧洲精品视频在线观看| 精品福利视频网| 亚洲视频欧美不卡| 精品视频一区二区三区在线播| 国产成人a在线观看视频| 欧美国产另类| 亚洲系列中文字幕一区二区| 国产产在线精品亚洲aavv| 欧美一级专区免费大片| 久久不卡国产精品无码| 青青操国产| 狠狠干欧美| av在线人妻熟妇| 91国内外精品自在线播放| 最新国产你懂的在线网址| 中文字幕在线观| 中国一级特黄视频| 中文字幕在线观| 天天综合色天天综合网| 国产91熟女高潮一区二区| 色哟哟国产成人精品| 久久国产成人精品国产成人亚洲 | 亚洲天堂自拍| 欧美成人免费午夜全| 亚洲精品人成网线在线| 五月激情婷婷综合| 国内熟女少妇一线天| 九九这里只有精品视频| 欧美成人免费一区在线播放| 中文字幕资源站| 国产第八页| 亚洲人妖在线| 国产精品综合久久久| 午夜精品影院| 日韩成人在线网站| 国产午夜精品一区二区三区软件| 午夜三级在线| 伊人久久精品无码麻豆精品| 无码精油按摩潮喷在线播放| 亚洲欧美极品| 在线免费无码视频| 亚洲天堂色色人体| 性做久久久久久久免费看| 欧美成人国产| 久久精品91麻豆| 狠狠色噜噜狠狠狠狠奇米777| 亚洲欧洲免费视频| 亚洲国产高清精品线久久| 香蕉网久久| 国产尤物在线播放| 爽爽影院十八禁在线观看| 亚洲男女天堂| 久久天天躁狠狠躁夜夜躁| 久久先锋资源| 精品無碼一區在線觀看 | 亚洲av无码专区久久蜜芽| 欧美精品成人一区二区视频一| 国产综合日韩另类一区二区| 亚洲熟女偷拍|