新四季網

採用功耗分析檢測fpga晶片中惡意電路的方法及其系統的製作方法

2023-05-18 09:46:46 2

專利名稱:採用功耗分析檢測fpga晶片中惡意電路的方法及其系統的製作方法
技術領域:
本發明涉及電路檢測技術,尤其涉及一種分析檢測FPGA晶片中惡意電路的方法及其系統。
背景技術:
近年來,雖然我國的集成電路產業得到了長足的發展,但很多關鍵、高端、高檔集成電路(如高性能CPU、DSP、FPGA等晶片)仍主要依賴進口,這些進口集成電路被廣泛應用於國防系統、武器裝備、政府機構、金融、交通、電信等安全敏感領域。其中的FPGA晶片是可重複配置的,現有的主流FPGA晶片均基於SRAM技術,通過配置數據(bitstream)來確定其實際完成的功能,這使得FPGA晶片在設計、編程配置、使用等階段容易遭到對手的篡改, 使得在使用這些晶片時面臨極大的安全隱患對手可以篡改bitstream配置數據,從而往 FPGA晶片中加入一些額外的惡意電路(這些惡意電路也被稱為「硬體木馬」)。硬體木馬可能在將來某個時刻被對手觸發或在某些情況下自行觸發,從而達到擾亂系統功能、使整個系統失效的目的;而且某些硬體木馬被觸發後能將加密信息、密鑰等隱蔽地洩露給對手。因此,需要對FPGA晶片中惡意電路的檢測方法進行研究。美國從2007年開始關注FPGA等可配置集成電路中的惡意電路問題,目前也已經提出了一些檢測惡意電路的方法和技術。這些方法和技術主要分為三大類基於失效分析的破壞性物理檢測方法、基於ATPG(自動測試圖形生成)的電學測試方法、基於旁路信號分析的非破壞性檢測方法。其中基於旁路信號分析的檢測方法與本發明最相近似。所謂旁路信號主要包括晶片工作過程中所產生的熱、電磁輻射、功耗、時延等信號,它們的特徵與晶片工作的實際情況密切相關,具有緊密的聯繫。IBM的Dakshi Agrawal等人於2007年發表的《Trojan Detection using IC Fingerprinting》一文,首次提出了採用功耗分析檢測惡意電路的方法,該方法與本發明屬於同一領域。此外還有其他研究人員也提出了類似的方法和技術。現有的採用功耗分析檢測惡意電路的研究成果都是利用仿真模擬技術來加以驗證(即通過運行在計算機上的軟體進行仿真模擬來驗證這些成果的有效性),還沒有一個實際的硬體系統可用於這些研究成果的驗證和確認。現有技術還停留在惡意電路檢測的理論研究、仿真數據分析這一層面上。假如給定一個實際的FPGA晶片,由於缺乏相應的硬體檢測系統,現有技術並不能確定該FPGA晶片中是否存在惡意電路。

發明內容
針對現有技術的缺點,本發明的目的是提供一種採用功耗分析檢測FPGA晶片中惡意電路的方法及其系統,對被測FPGA晶片中是否存在惡意電路(硬體木馬)進行檢測, 幫助剔除可疑的FPGA晶片,從而保障使用FPGA晶片的整機系統的安全與可靠性。為了實現上述目的,本發明採用功耗分析檢測FPGA晶片中惡意電路的系統包括 直流穩壓電源,給被測FPGA晶片和施加激勵FPGA晶片提供直流電源;電流探頭,測量被測FPGA晶片電源端的瞬態電流;示波器,在被測FPGA晶片生成的觸發信號的觸發下,採集電流探頭測量到的電流信號;施加激勵FPGA晶片,給被測FPGA晶片施加激勵信號,並將被測 FPGA晶片的響應信號傳輸至計算機中,以備與預期響應進行比較校驗;計算機,接收用戶編寫的激勵約束,產生測試向量,並完成響應校驗、示波器設置、波形數據收集、數據分析與
處理工作。優選地,被測FPGA晶片與施加激勵的FPGA晶片位於同一塊PCB板上,且被測FPGA 晶片通過IC插座的方式安裝到該PCB上。優選地,電流探頭串接在被測FPGA晶片的內核電源端與上述直流穩壓電源輸出端之間。優選地,示波器設置為「單次觸發模式」,示波器的信號輸入端與所述電流探頭連接,示波器的觸發輸入端與被測FPGA晶片的觸發信號波形輸出端相連,示波器的數據傳輸端與計算機相應輸入端相連。優選地,施加激勵FPGA晶片的輸出端與被測FPGA晶片的輸入端相連,而輸入端與計算機的相應輸出端相連。同時,本發明的一種採用功耗分析檢測FPGA晶片中惡意電路的方法包括如下步驟(101)計算機根據用戶提供的激勵約束生成相應的測試向量;(10 採集功耗波形數據;(10 計算機對從示波器中讀取到的功耗波形數據進行處理與分析,通過比較被測 FPGA晶片的功耗波形數據的特徵與參考FPGA晶片功耗波形數據的特徵是否一致,來判斷被測FPGA晶片中是否存在惡意電路。優選地,在步驟(101)中,所述的激勵約束是由用戶手動輸入的。優選地,在步驟(10 中,功耗波形數據的獲得包含以下步驟(102a)計算機通過相應的通信接口對示波器進行設置,設置其處於「單次觸發」模式;(102b)計算機通過相應的通信接口把測試向量傳輸給負責施加激勵的FPGA晶片;(102c)上述負責施加激勵的 FPGA晶片產生相應的激勵信號來驅動被測FPGA晶片工作;(102d)被測FPGA晶片產生一個觸發信號,來觸發示波器採集電流探頭測量到的電流信號,該電流信號再乘以電源電壓以得到功耗波形數據;(102e)計算機校驗被測FPGA晶片返回的響應信號;(102f)計算機從示波器中讀取其採集到的功耗波形數據。優選地,在步驟(103)中,計算機對從示波器中讀取到的功耗波形數據進行處理與分析具體包括(103a)數據處理與分析流程的輸入為參考FPGA晶片和被測FPGA晶片的功耗波形數據;(103b)通過對多個功耗波形取平均,消除測量噪聲;(103c)計算參考FPGA 晶片的逐點平均功耗曲線Pmean ; (103d)將參考FPGA和被測FPGA晶片的所有功耗波形數據都減去Pmean ;103e)利用特徵值分解算法找到投影子空間S ; (103f)將參考FPGA和被測 FPGA晶片的功耗波形數據都投影到子空間S上;(103g)比較上述兩個投影值的特徵。如果特徵一致,表明被測FPGA晶片中不存在惡意電路,否則表明被測FPGA晶片中存在惡意電路。與現有技術相比(1)本發明採用高帶寬、高精度的電流探頭來測量FPGA晶片電源端的瞬態電流,實現了對該電流的高速、高精確度測量,與傳統的利用採樣電阻兩端的電壓降來測量電流的方法相比,本發明的電流測量精度更高。(2)採用另一個FPGA晶片給被測FPGA施加激勵,使得被測FPGA能夠正常工作,從而可以測量得到其正常工作狀態下的電流消耗情況,雖然集成電路ATE(自動測試設備)也能夠完成此項工作,但由於ATE價格一般比較昂貴,因此本發明所採用的實現方案能極大地降低檢測系統的成本。(3)採用集成電路插座的方式把被測FPGA晶片安裝到檢測系統中,從而靈活地實現了被測FPGA晶片的安裝與卸載,避免了焊接,也使得被測FPGA晶片免受焊接過程中可能導致的損傷。(4)用戶在計算機上編寫激勵約束,計算機上的軟體將根據這些約束來自動生成測試向量,並通過一定的通信方式(如RS-232串口等)將這些測試向量發送給負責施加激勵的FPGA晶片,被測FPGA晶片在激勵信號的激勵下,會返回一些響應信號,這些響應信號會被傳送到計算機中,由計算機中的軟體進行校驗,檢查其與預期的響應信號是否一致。在本發明中,上述測試向量生成和響應校驗過程都是自動化的,用戶只需編寫激勵約束,其餘工作都由計算機中的軟體來完成,無需用戶幹預。( 本發明中示波器波形數據的採集也是自動化的,示波器採集模式和相關參數的設置、採集到的波形數據從示波器傳輸至計算機這些過程都由計算機中的軟體來控制,無需用戶手動幹預,減少了操作人員的工作量。下面結合附圖對本發明作進一步詳細說明,但本發明不局限於這些實施例,任何在本發明基本精神上的改進或替代,仍屬於本發明權利要求書中所要求保護的範圍。


圖1是本發明的檢測系統組成示意圖。圖2是本發明的被測FPGA晶片功耗測量結果示意圖。圖3是本發明的檢測方法流程圖。圖4是本發明的檢測方法中的功耗波形數據處理與分析部分的流程圖。圖5是「時間炸彈」惡意電路圖。圖6是內部存在惡意電路I的待測FPGA晶片與參考FPGA晶片的功耗波形數據在子空間上的投影值的對比圖。圖7圖是內部存在惡意電路II的待測FPGA晶片與參考FPGA晶片的功耗波形數據在子空間上的投影值的對比圖。
具體實施例方式請參閱圖1,本發明的檢測系統主要由計算機(包括計算機中運行的軟體程序)、 數字採集示波器、直流穩壓電源、電流探頭、施加激勵FPGA晶片(亦稱參考FPGA晶片)和被測FPGA晶片(亦稱待測FPGA晶片)等部分組成。直流穩壓電源給被測FPGA晶片和施加激勵FPGA晶片提供直流電源。電流探頭測量被測FPGA晶片電源端的瞬態電流,該電流值乘上被測FPGA晶片的直流電壓,可得到被測FPGA晶片的功耗曲線測量結果(一個典型的功耗曲線測量結果如圖2所示),為了保證功耗測量結果的準確性,電流探頭的帶寬應在 200MHz以上,且應具備mA級電流的測量靈敏度;此外需要注意的是,一個FPGA晶片一般具有三種不同類型的電源端內部邏輯電源端、IO電源端和片上輔助邏輯的電源端,而本實施例中的電流探頭應加在被測FPGA晶片的內部邏輯電源端上,其餘兩種電源端上的電流消耗情況不予關心。數據採集示波器在被測FPGA晶片生成的觸發信號的觸發下,採集電流探頭測量到的電流信號,該示波器與計算機之間具有一定的通信連接方式(如GPIB接口等),通過這些通信接口,計算機中的軟體程序能設置示波器的採集模式、採集參數;而且示波器採集得到的波形數據也能通過該通信接口傳輸至計算機中,以備進行下一步的數據處理與分析;本檢測系統中的示波器,其帶寬應在500MHz以上,採樣率2GS/s以上。施加激勵FPGA晶片給被測FPGA晶片施加激勵信號,並將被測FPGA晶片的響應信號傳輸至計算機中,以備與預期響應進行比較校驗;施加激勵的FPGA晶片與計算機之間應具有一定的通信連接方式(如RS-232串口等)。被測FPGA晶片與施加激勵的FPGA晶片位於同一塊PCB板上,且被測FPGA晶片通過IC插座的方式(如各種BGA插座等)安裝到該PCB上;被測FPGA 晶片產生一個具有明顯工作狀態標誌的啟動信號作為示波器採樣的觸發信號,以密碼加密功能為例,如果被測FPGA晶片實現了一個密碼加密功能,那麼它可以在每次加密過程開始的時刻生成一個具有跳變沿的觸發信號。計算機是整個檢測系統的控制核心,它主要依靠運行的軟體程序實現測試向量生成、響應校驗、示波器設置、波形數據收集、數據分析與處理等工作。請參閱圖3,利用上述的檢測系統,可以進行FPGA晶片中惡意電路的檢測,具體檢測方法的流程如下(1)用戶手動輸入激勵約束,計算機中的軟體程序依據該約束生成測試向量;⑵功耗波形數據採集a)示波器設置;b)給FPGA晶片施加測試向量;c)觸發示波器採集電流探頭測量到的電流信號,電流信號乘上電源電壓可得到功耗數據;d)校驗 FPGA晶片返回的響應信號;e)計算機從示波器中讀取其採集到的功耗波形數據;(3)功耗波形數據的處理與分析,這一步驟由計算機中的軟體程序來完成,主要通過比較待測FPGA 晶片的功耗波形數據的特徵與參考FPGA晶片功耗波形數據的特徵是否一致,來判斷待測 FPGA晶片中是否存在惡意電路。需要將待測FPGA晶片與參考FPGA晶片的功耗數據作對比,才能檢測出待測FPGA中是否存在惡意電路。該參考FPGA晶片應該與待測FPGA晶片同型號、同批次,而且其邏輯設計過程和編程下載過程應該是安全可控的,從而保障參考FPGA 晶片內部未被插入任何惡意電路。請參閱圖4,功耗波形數據處理與分析的詳細流程步驟如下(1)數據處理與分析流程的輸入為參考FPGA晶片和待測FPGA晶片的功耗波形數據;( 通過對多個功耗波形取平均,消除測量噪聲;(3)計算參考FPGA晶片的逐點平均功耗曲線Pmean ; (4)將參考FPGA 和待測FPGA晶片的所有功耗波形數據都減去Pmean ; (5)利用特徵值分解算法找到投影子空間S ; (6)將參考FPGA和待測FPGA晶片的功耗波形數據都投影到子空間S上;(7)比較上述兩個投影值的特徵。如果特徵一致,表明待測FPGA晶片中不存在惡意電路,否則表明待測FPGA晶片中存在惡意電路。下面的例子是利用本發明提供的檢測系統和檢測方法對一個Xilinx公司生產的 FPGA晶片(Spartan-3E XC3S500E)進行惡意電路檢測的實例。該待測FPGA晶片採用90nm CMOS工藝製造,規模為50萬門。在實驗中,我們通過直流穩壓電源給待測FPGA晶片的內部邏輯電源端VraNT提供1. 2V的直流電壓,電流探頭選用Tektronix公司的CT1,示波器選用 Tektronix TDS3052B型號。示波器與計算機之間通過GPIB接口進行通信,而施加激勵的 FPGA晶片與計算機之間通過RS-232串口進行通信。待測FPGA晶片所完成的功能是一個 64位的DES加密模塊。實驗中採用的惡意電路是一個同步計數器(又稱為「時間炸彈」), 其電路結構如圖5所示。該惡意電路當計數器計滿數值之後,通過一個異或門使FPGA晶片內部邏輯發生錯誤。在實驗中我們使用了兩個不同規模的「時間炸彈」惡意電路,它們的區別在於計數器的位數不相同。表1總結了這兩個惡意電路所佔待測FPGA晶片內部邏輯資源的情況。從該表可知,惡意電路I和惡意電路II分別佔64位DES加密電路總面積的7. 8%和1. 3%。
表1兩個惡意電路所佔待測FPGA晶片內部邏輯資源的情況
權利要求
1.一種採用功耗分析檢測FPGA晶片中惡意電路的系統,其特徵在於,它包括 直流穩壓電源,給被測FPGA晶片和施加激勵FPGA晶片提供直流電源; 電流探頭,測量被測FPGA晶片電源端的瞬態電流;示波器,在被測FPGA晶片生成的觸發信號的觸發下,採集電流探頭測量到的電流信號;施加激勵FPGA晶片,給被測FPGA晶片施加激勵信號,並將被測FPGA晶片的響應信號傳輸至計算機中,以備與預期響應進行比較校驗;計算機,接收用戶編寫的激勵約束,產生測試向量,並完成響應校驗、示波器設置、波形數據收集、數據分析與處理工作。
2.根據權利要求1所述的採用功耗分析檢測FPGA晶片中惡意電路的系統,其特徵在於,被測FPGA晶片與施加激勵的FPGA晶片位於同一塊PCB板上,且被測FPGA晶片通過IC 插座的方式安裝到該PCB上。
3.根據權利要求1所述的採用功耗分析檢測FPGA晶片中惡意電路的系統,其特徵在於,所述電流探頭串接在被測FPGA晶片的內核電源端與上述直流穩壓電源輸出端之間。
4.根據權利要求1所述的採用功耗分析檢測FPGA晶片中惡意電路的系統,其特徵在於,所述示波器設置為「單次觸發模式」,示波器的信號輸入端與所述電流探頭連接,示波器的觸發輸入端與被測FPGA晶片的觸發信號波形輸出端相連,示波器的數據傳輸端與計算機相應輸入端相連。
5.根據權利要求1所述的採用功耗分析檢測FPGA晶片中惡意電路的系統,其特徵在於,施加激勵FPGA晶片的輸出端與被測FPGA晶片的輸入端相連,而輸入端與計算機的相應輸出端相連。
6.一種採用功耗分析檢測FPGA晶片中惡意電路的方法,其特徵在於,它包括如下步驟(101)計算機根據用戶提供的激勵約束生成相應的測試向量;(102)採集功耗波形數據;(103)計算機對從示波器中讀取到的功耗波形數據進行處理與分析,通過比較被測 FPGA晶片的功耗波形數據的特徵與參考FPGA晶片功耗波形數據的特徵是否一致,來判斷被測FPGA晶片中是否存在惡意電路。
7.根據權利要求6所述的採用功耗分析檢測FPGA晶片中惡意電路的方法,其特徵在於,在步驟(101)中,所述的激勵約束是由用戶手動輸入的。
8.根據權利要求6所述的採用功耗分析檢測FPGA晶片中惡意電路的方法,其特徵在於,在步驟(102)中,功耗波形數據的獲得包含以下步驟(102a)計算機通過相應的通信接口對示波器進行設置,設置其處於「單次觸發」模式; (102b)計算機通過相應的通信接口把測試向量傳輸給負責施加激勵的FPGA晶片; (102c)上述負責施加激勵的FPGA晶片產生相應的激勵信號來驅動被測FPGA晶片工作;(102d)被測FPGA晶片產生一個觸發信號,來觸發示波器採集電流探頭測量到的電流信號,該電流信號再乘以電源電壓以得到功耗波形數據; (102e)計算機校驗被測FPGA晶片返回的響應信號;(102f)計算機從示波器中讀取其採集到的功耗波形數據。
9.根據權利要求6所述的採用功耗分析檢測FPGA晶片中惡意電路的方法,其特徵在於,在步驟(103)中,計算機對從示波器中讀取到的功耗波形數據進行處理與分析具體包括(103a)數據處理與分析流程的輸入為參考FPGA晶片和被測FPGA晶片的功耗波形數據;(103b)通過對多個功耗波形取平均,消除測量噪聲;(103c)計算參考FPGA晶片的逐點平均功耗曲線Pmean ;(103d)將參考FPGA和被測FPGA晶片的所有功耗波形數據都減去Pmean ;(103e)利用特徵值分解算法找到投影子空間S ;(103f)將參考FPGA和被測FPGA晶片的功耗波形數據都投影到子空間S上; (103g)比較上述兩個投影值的特徵。如果特徵一致,表明被測FPGA晶片中不存在惡意電路,否則表明被測FPGA晶片中存在惡意電路。
全文摘要
本發明公開了一種採用功耗分析檢測FPGA晶片中惡意電路的系統,它包括直流穩壓電源,給被測FPGA晶片和施加激勵FPGA晶片提供直流電源;電流探頭,測量被測FPGA晶片電源端的瞬態電流;示波器,在被測FPGA晶片生成的觸發信號的觸發下,採集電流探頭測量到的電流信號;施加激勵FPGA晶片,給被測FPGA晶片施加激勵信號,並將被測FPGA晶片的響應信號傳輸至計算機中,以備與預期響應進行比較校驗;計算機,接收用戶編寫的激勵約束,產生測試向量,並完成響應校驗、示波器設置、波形數據收集、數據分析與處理工作。本發明還公開了一種利用上述系統進行FPGA晶片中惡意電路檢測的方法。
文檔編號G06F21/00GK102592068SQ201110259418
公開日2012年7月18日 申請日期2011年9月5日 優先權日2011年9月5日
發明者王力緯, 羅宏偉 申請人:工業和信息化部電子第五研究所

同类文章

一種新型多功能組合攝影箱的製作方法

一種新型多功能組合攝影箱的製作方法【專利摘要】本實用新型公開了一種新型多功能組合攝影箱,包括敞開式箱體和前攝影蓋,在箱體頂部設有移動式光源盒,在箱體底部設有LED脫影板,LED脫影板放置在底板上;移動式光源盒包括上蓋,上蓋內設有光源,上蓋部設有磨沙透光片,磨沙透光片將光源封閉在上蓋內;所述LED脫影

壓縮模式圖樣重疊檢測方法與裝置與流程

本發明涉及通信領域,特別涉及一種壓縮模式圖樣重疊檢測方法與裝置。背景技術:在寬帶碼分多址(WCDMA,WidebandCodeDivisionMultipleAccess)系統頻分復用(FDD,FrequencyDivisionDuplex)模式下,為了進行異頻硬切換、FDD到時分復用(TDD,Ti

個性化檯曆的製作方法

專利名稱::個性化檯曆的製作方法技術領域::本實用新型涉及一種檯曆,尤其涉及一種既顯示月曆、又能插入照片的個性化檯曆,屬於生活文化藝術用品領域。背景技術::公知的立式檯曆每頁皆由月曆和畫面兩部分構成,這兩部分都是事先印刷好,固定而不能更換的。畫面或為風景,或為模特、明星。功能單一局限性較大。特別是畫

一種實現縮放的視頻解碼方法

專利名稱:一種實現縮放的視頻解碼方法技術領域:本發明涉及視頻信號處理領域,特別是一種實現縮放的視頻解碼方法。背景技術: Mpeg標準是由運動圖像專家組(Moving Picture Expert Group,MPEG)開發的用於視頻和音頻壓縮的一系列演進的標準。按照Mpeg標準,視頻圖像壓縮編碼後包

基於加熱模壓的纖維增強PBT複合材料成型工藝的製作方法

本發明涉及一種基於加熱模壓的纖維增強pbt複合材料成型工藝。背景技術:熱塑性複合材料與傳統熱固性複合材料相比其具有較好的韌性和抗衝擊性能,此外其還具有可回收利用等優點。熱塑性塑料在液態時流動能力差,使得其與纖維結合浸潤困難。環狀對苯二甲酸丁二醇酯(cbt)是一種環狀預聚物,該材料力學性能差不適合做纖

一種pe滾塑儲槽的製作方法

專利名稱:一種pe滾塑儲槽的製作方法技術領域:一種PE滾塑儲槽一、 技術領域 本實用新型涉及一種PE滾塑儲槽,主要用於化工、染料、醫藥、農藥、冶金、稀土、機械、電子、電力、環保、紡織、釀造、釀造、食品、給水、排水等行業儲存液體使用。二、 背景技術 目前,化工液體耐腐蝕貯運設備,普遍使用傳統的玻璃鋼容

釘的製作方法

專利名稱:釘的製作方法技術領域:本實用新型涉及一種釘,尤其涉及一種可提供方便拔除的鐵(鋼)釘。背景技術:考慮到廢木材回收後再加工利用作業的方便性與安全性,根據環保規定,廢木材的回收是必須將釘於廢木材上的鐵(鋼)釘拔除。如圖1、圖2所示,目前用以釘入木材的鐵(鋼)釘10主要是在一釘體11的一端形成一尖

直流氧噴裝置的製作方法

專利名稱:直流氧噴裝置的製作方法技術領域:本實用新型涉及ー種醫療器械,具體地說是ー種直流氧噴裝置。背景技術:臨床上的放療過程極易造成患者的局部皮膚損傷和炎症,被稱為「放射性皮炎」。目前對於放射性皮炎的主要治療措施是塗抹藥膏,而放射性皮炎患者多伴有局部疼痛,對於止痛,多是通過ロ服或靜脈注射進行止痛治療

新型熱網閥門操作手輪的製作方法

專利名稱:新型熱網閥門操作手輪的製作方法技術領域:新型熱網閥門操作手輪技術領域:本實用新型涉及一種新型熱網閥門操作手輪,屬於機械領域。背景技術::閥門作為流體控制裝置應用廣泛,手輪傳動的閥門使用比例佔90%以上。國家標準中提及手輪所起作用為傳動功能,不作為閥門的運輸、起吊裝置,不承受軸向力。現有閥門

用來自動讀取管狀容器所載識別碼的裝置的製作方法

專利名稱:用來自動讀取管狀容器所載識別碼的裝置的製作方法背景技術:1-本發明所屬領域本發明涉及一種用來自動讀取管狀容器所載識別碼的裝置,其中的管狀容器被放在循環於配送鏈上的文檔匣或託架裝置中。本發明特別適用於,然而並非僅僅專用於,對引入自動分析系統的血液樣本試管之類的自動識別。本發明還涉及專為實現讀