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

基于JTAG和SM3的嵌入式儀表設(shè)備可信啟動技術(shù)研究與實現(xiàn)

2021-10-29 12:18:12陳鑫劉賢達張博文王慶輝
關(guān)鍵詞:嵌入式程序設(shè)備

◆陳鑫 劉賢達 張博文 王慶輝

基于JTAG和SM3的嵌入式儀表設(shè)備可信啟動技術(shù)研究與實現(xiàn)

◆陳鑫1,2,3,4劉賢達2,3,4張博文2,3,4王慶輝1

(1.沈陽化工大學信息工程學院 遼寧 110142;2.中國科學院網(wǎng)絡(luò)化控制系統(tǒng)重點實驗室 遼寧 110016;3.中國科學院機器人與智能制造創(chuàng)新研究院 遼寧 110169;4.中國科學院沈陽自動化研究所 遼寧 110016)

以可信計算理論為基礎(chǔ),針對尺寸、成本、能源或其他方面受限而不適合植入可信根的嵌入式設(shè)備在啟動過程中代碼執(zhí)行漏洞帶來的安全威脅等問題,提出外置可信度量環(huán)境進行校驗的觀點,探討了基于JTAG和SM3的可信啟動方法。該方法首先用JTAG控制信號將ZYNQ平臺CPU掛起,依托JTAG傳輸協(xié)議對存儲在Flash中的啟動信息進行讀取,之后在PC端搭建基于SM3的可信度量環(huán)境,對讀取固件程序進行驗證,校驗成功之后,允許平臺啟動,否則,需要重新配置與燒錄,直至達到安全啟動的標準。經(jīng)過在ZYNQ平臺上進行實驗,論證了在沒有可信根的情況下依然可以實現(xiàn)可信啟動的可行性,可以實現(xiàn)對啟動程序的可信度量,提高該ZYNQ平臺的安全性。該方案能夠?qū)σ院笸ㄟ^FPGA編程將外置改進為內(nèi)嵌來實現(xiàn)啟動校驗設(shè)備一體化具有非常重要的意義。

ZYNQ;JTAG技術(shù);可信度量環(huán)境;雜湊算法(SM3)

1 背景

隨著計算機技術(shù)和通信技術(shù)的發(fā)展,特別是互聯(lián)網(wǎng)的普及,嵌入式設(shè)備在世界范圍內(nèi)得到了越來越廣泛的應用。嵌入式設(shè)備領(lǐng)域正在迅速發(fā)展,包括儀表、PDA等設(shè)備。隨著嵌入式設(shè)備功能需求的不斷增加,芯片的連接越來越多,它們也越來越容易受到攻擊(包括網(wǎng)絡(luò)攻擊和物理攻擊)[1]。大部分的防火墻、入侵檢測、病毒防御等網(wǎng)絡(luò)安全防護手段都側(cè)重于保護服務器的信息安全,相對脆弱的終端平臺就越來越成為信息系統(tǒng)安全的主要薄弱環(huán)節(jié)。

引導期間的安全攻擊可以說是最難防御的,因為在設(shè)備生命周期的這個階段,防火墻和防病毒等傳統(tǒng)防御措施不到位,攻擊很難檢測到。因此,在引導期間保護設(shè)備仍然是一個活躍的研究領(lǐng)域[2-6]。針對引導攻擊的常見防御措施是認證或安全引導[7]。在這種形式的引導中,設(shè)備只讀存儲器被提供公鑰,該公鑰用于認證下一層固件。這確保了設(shè)備只能用由授權(quán)實體(例如設(shè)備制造商)簽名的固件來引導。雖然認證引導形成了許多系統(tǒng)的第一道防線,但它仍然容易受到許多攻擊[8-9]。例如,經(jīng)過身份驗證的引導并不能阻止攻擊者使用具有已知漏洞的舊版本固件來引導設(shè)備。為了防止這種攻擊,許多系統(tǒng)部署了一種更強、更安全的引導協(xié)議,稱為測量引導[9-10]。在許多系統(tǒng)中,測量引導使用TPM[11]來支持,TPM是連接到主機CPU的專用硬件芯片。在具有TPM的系統(tǒng)中,每一層固件都被配置為測量和記錄TPM中下一層固件的散列。啟動后,TPM可以使用由TPM制造商提供的唯一簽名密鑰生成固件測量的簽名日志。可以從外部驗證該日志,以確定設(shè)備是否使用預期的固件啟動。

但有許多設(shè)備(如低成本儀表設(shè)備)并沒有搭載用于度量驗證的TPM芯片,為了滿足這種情況下設(shè)備可信啟動的需求,我們提出了一種基于JTAG的外置可信度量方案,能夠解決一些無法搭載TPM系統(tǒng)的嵌入式儀表設(shè)備的可信度量問題,需要的硬件支持少得多。

2 JTAG技術(shù)

JTAG以編碼它的聯(lián)合測試行動小組命名,是一個工業(yè)標準,用于在制造后驗證設(shè)計和測試印刷電路板,被廣泛使用于SoCs中[12]。通常,測試信號作為輸入信號發(fā)送到系統(tǒng)芯片的不同部分,相關(guān)的輸出信號將通過JTAG接口發(fā)送回來。換句話說,JTAG可以向集成電路的任何可尋址部分發(fā)送信號或數(shù)據(jù),或者從集成電路的任何可尋址部分讀取數(shù)據(jù)。大多數(shù)SoCs集成了JTAG接口,因此用戶可以通過JTAG接口訪問SoCs中的任何部分。由于能夠訪問片上系統(tǒng)內(nèi)部電路,通過通用串行總線或以太網(wǎng)端口的JTAG接口被廣泛用于系統(tǒng)調(diào)試、片上系統(tǒng)編程和片上系統(tǒng)程序調(diào)試。

JTAG的主要功能有兩種:一種用于測試芯片的電氣特性,檢測芯片是否有問題;另一種用于Debug,對各類芯片及其外圍設(shè)備進行調(diào)試。一個含有JTAG Debug接口模塊的CPU,只要時鐘正常,就可以通過JTAG接口訪問CPU的內(nèi)部寄存器、掛在CPU總線上的設(shè)備以及內(nèi)置模塊的寄存器,JTAG功能簡圖如圖1所示。

圖1 JTAG功能簡圖

JTAG邊界掃描寄存器提供了一種便捷的方式用于觀測和控制所需調(diào)試的芯片。另外,芯片輸入/輸出引腳上的邊界掃描寄存器單元可以互相連接起來,在芯片的周圍形成一個邊界掃描鏈。邊界掃描鏈可以串行輸入和輸出,通過相應的時鐘信號,就可以方便的觀察和控制處在調(diào)試狀態(tài)下的芯片。

隨著現(xiàn)代集成電路(IC)橋接USB(通用串行接口)和JTAG接口(如FTDI FTx232H class[3])的引入,各大供應商已經(jīng)決定放棄昂貴的專用JTAG適配器概念,轉(zhuǎn)而開發(fā)更便宜更通用的JTAG設(shè)備,如圖2所示。

圖2 FTDI芯片電路板

3 方案設(shè)計

針對上述背景中提出的問題以及相關(guān)技術(shù)的研究,提出以下基于JTAG的外置度量環(huán)境的可信啟動流程,如圖3所示。

圖3 ZYNQ可信啟動設(shè)計流程圖

(1)JTAG控制CPU上電后啟動

選擇JTAG模式啟動方式時,ZYNQ平臺會自動確認通過JTAG直接從PC端下載啟動配置程序,此時PS端的CPU將保持在空閑狀態(tài),等待啟動鏡像的加載。在這段CPU空閑狀態(tài)期間,利用PC端的J-Flash將保存在Flash中的啟動程序通過JTAG讀取到PC端。

(2)JTAG讀取Flash程序到PC端

由于PC機對目標板的調(diào)試就是通過TAP接口完成對相關(guān)數(shù)據(jù)寄存器和指令寄存器的訪問,所以該實驗設(shè)計通過TAP訪問芯片提供的所有數(shù)據(jù)寄存器和指令寄存器,對Flash芯片進行數(shù)據(jù)讀取。該平臺片上測試原理圖如圖4所示。

圖4 JTAG邊界掃描原理

(3)搭建可信度量環(huán)境確認啟動程序安全

?●算法運用

消息驗證碼算法利用密碼雜湊算法SM3,對于給定的消息和驗證雙方共享的秘密信息產(chǎn)生長度為t個字節(jié)的消息驗證碼。

●SM3測試環(huán)境搭建

(4)平臺安全啟動

啟動程序校驗無誤后,啟動模式改為QSPI啟動,加載已經(jīng)確認安全的啟動程序,完成可信任的啟動過程。

4 實驗驗證

4.1 可信啟動結(jié)構(gòu)

實驗被度量開發(fā)板搭載的是Xilinx公司的ZYNQ-7000系列芯片,ZYNQ-7000系列的亮點之一在于它包含了完整的ARM處理子系統(tǒng),每一個ZYNQ-7000系列的處理器都包含了雙核的Cortex-A9處理器[13],整個處理器的搭建都以處理器為中心,而且處理器子系統(tǒng)中集成了內(nèi)存控制器和大量外設(shè),使Cortex-A9的核在ZYNQ-7000中完全獨立于可編程邏輯單元。其二,ZYNQ-7000 AP SoC的啟動配置是分多級進行的[14],PS-PL啟動過程如圖5所示。

圖5 ZYNQ的啟動過程

根據(jù)配置程序燒錄扇區(qū)的不同,能夠快速定位問題區(qū)域,進行配置更改。根據(jù)ZYNQ-7000系列的特點,即使ARM核掛起后,仍能通過程序下載器訪問外設(shè)Flash,并進行數(shù)據(jù)提取與度量,來保證平臺的安全啟動。本實驗所度量的啟動程序就存儲在處理器之外的QSPI FLASH中。用來給核心板發(fā)送命令的控制信號則是底板的啟動模式控制開關(guān)。實驗采用的軟件為SEGGER公司的J-Flash,該軟件不僅可以向開發(fā)板中燒寫固件程序,同時也可以從開發(fā)板中回讀運行的固件程序。整體架構(gòu)如圖6所示。

圖6 ZYNQ可信啟動的結(jié)構(gòu)框架圖

4.2 可信度量環(huán)境

可信計算PC規(guī)范指出SRTM是BIOS中的模塊,SRTM的安全性直接和BIOS相關(guān)[15],在信任鏈中起著信任錨點的作用。基于SM3雜湊算法的可信度量環(huán)境作為靜態(tài)可信度量根對數(shù)據(jù)進行可靠性度量,使其進行的計算具有真實性、機密性、可控性等特性,并利用這些特性來彌補僅依靠傳統(tǒng)安全防護方式的不足,從而更好地解決計算機安全面臨的挑戰(zhàn)和問題[16]。

4.2.1 SM3簡要介紹

SM3密碼雜湊算法的輸入長度為1(1<2^64)比特的消息m,經(jīng)過填充、迭代壓縮,生成雜湊值,雜湊值輸出長度為256比特[17]。

(1)填充

假設(shè)消息m的長度為l比特,則首先將比特“l(fā)”添加到消息的末尾,再添加個“0”,k是滿足l+1+k≡448(mod512)的最小非負整數(shù)。然后再添加一個64位比特串,該比特串是長度l的二進制表示。填充后的消息的比特長度為512的倍數(shù)。

(2)迭代壓縮

將填充后的消息按512比特進行分組:m'=B^((0))B^((1))???B^((n-1)),其中n=(l+k+65)/512。對m'按下列方式迭代:

FOR?i=0?TO?n-1

V^((i+1))=CF(V^((i)),B^((i)))

ENDFOR

其中CF是壓縮函數(shù),V(0)為256比特值IV,B(i)為填充后的消息分組,迭代壓縮結(jié)果為V(n)。

將消息分組B(i)擴展生成132個消息字W0,W1,?W67,W'0,W'1,?W'63,用于壓縮函數(shù)CF:

B(i)→W0,W1,?W15

FOR?j=16?TO?67

Wi←Pi(Wi-16⊕Wi-9⊕(Wi-3<<<15)⊕(Wi-13<<<7)⊕Wi-6

ENDFOR

FOR?j=0?TO?63

Wi'=Wi⊕Wi+4

ENDFOR

令A,B,C,D,E,F(xiàn),G,H,為字寄存器,SS1,SS2,TT1,TT2,為中間變量,壓縮函數(shù)V^(i+1)=CF(V^((i)),B^((i))),0≤i≤n-1。計算過程如下:

ABCDEFG←V^((i))

FOR?j=0?TO?63

SS1←((A<<<12)+E+(Ti<<

SS2←SS1⊕(A<<<12)

TT1←FFi(A,B,C)+D+SS2+W'i

TT2←GGi(E,F(xiàn),G)+H+SS1+Wi

D←C

C←B<<<9

B←A

A←TT1

H←G

G←F<<<19

F←E

E←P_0 (TT2)

ENDFOR

V^((i+1))←ABCDEFGH⊕V^((i))

4.2.2算法接口實現(xiàn)

ulAlgID←SGD_SM3

procedure SKF_DigestInit(hDev,ulAlgID,NULL,NULL,0,&hHash)

if

Print SKF_DigestInit Wrong

fflush(stdin)

getchar()

else

Print SKF_DigestInit OK

endif

procedure SKF_DigestUpdata(hHash,bIndata,ulIndataLen)

if

Print SKF_DigestInit Wrong

fflush(stdin)

getchar()

else

Print SKF_DigestUpdata OK

endif

procedure SKF_DigestFinal(hHash,bOutData, &ulOutdataLen)

if < SKF_DigestFinal!= SAR_OK>

Print SKF_DigestFinal Wrong

fflush(stdin)

getchar()

else< SKF_DigestFinal = SAR_OK>

PrintMsg SKF_DigestFinal OK

endif

5 實驗結(jié)果與分析

5.1 可信度量環(huán)境

選取所讀扇區(qū)的一部分數(shù)據(jù)如圖7所示。實驗驗證,當芯片ARM核被掛起時,J-Flash可以通過JTAG下載器訪問Flash,并讀取固件啟動程序,能夠預防漏洞程序由于平臺上電自啟帶來的安全風險。

圖7 提取數(shù)據(jù)部分截圖

5.2 PC端度量環(huán)境測試

經(jīng)過對所搭建環(huán)境的調(diào)試,結(jié)果如圖8所示,實驗搭建的基于SM3的度量環(huán)境能夠?qū)μ崛?shù)據(jù)進行運算,并對其進行消息鑒別。

圖8 環(huán)境測試信息

5 結(jié)束語

本文針對許多嵌入式儀表設(shè)備無法搭載用于度量驗證的TPM芯片的情況,提出一種基于JTAG傳輸協(xié)議的嵌入式設(shè)備可信啟動關(guān)鍵技術(shù)的設(shè)計方案,運用國密SM3算法搭建外置可信度量環(huán)境,對通過邊界掃描器提取的ZYNQ平臺配置信息進行度量,從而得到安全啟動可信依據(jù)。經(jīng)過實驗驗證,本文提出的實驗設(shè)計能夠有效讀取ZYNQ平臺的配置信息,并能對其進行可信度量,最后實現(xiàn)平臺的可信啟動。

該技術(shù)的創(chuàng)新之處是構(gòu)建一種連接嵌入式處理器和Flash的橋梁,通過控制傳入ZYNQ平臺的JTAG信號,掛起CPU;再通過JTAG的邊界掃描控制器,對存儲在Flash芯片上的啟動程序進行讀取,最后進行校驗。可以確保長期存儲在Flash的啟動程序與平臺配置的動態(tài)可信性。在可信環(huán)境搭建過程中,SM3算法的使用不僅有助于從根本上解決嵌入式平臺面臨的信息安全問題,還能提高校驗的真實性和自主可控性。為保證工業(yè)系統(tǒng)中設(shè)備產(chǎn)品化目的,也就是該方案的改進之處就是可以通過FPGA編程實現(xiàn)度量環(huán)境內(nèi)置化,之后再通過JTAG信號的發(fā)送控制設(shè)備的安全啟動。該技術(shù)的實現(xiàn)則為上述通過FPGA編程實現(xiàn)基于JTAG的可信啟動設(shè)備一體化打下堅實基礎(chǔ)。

[1]Facon,A.,Guilley,S.,Ngo,X.-T.,Perianin,T.Hardware-enabled AI for embedded security:A new paradigm.(2019)Proceedings - 2019 3rd International Conference on Recent Advances in Signal Processing,Telecommunications and Computing,SigTelCom 2019,art.no. 8696136,pp. 80-84.

[2]Byron Cook,Kareem Khazem,Daniel Kroening,SerdarTasiran,Michael Tautschnig,and Mark R. Tuttle. Model checking boot code from AWS data centers. In 30th International Conference on Computer Aided Verification(CAV),2018.

[3]KarimEldefrawy,Gene Tsudik,Aurélien Francillon,and DanielePerito. SMART:secure and minimal architecture for (establishing dynamic)root of trust. In 19th Network and Distributed System Security Symposium(NDSS). The Internet Society,2012.

[4]Sujit Kumar Muduli,PramodSubramanyan,and SayakRay. V erification of authenticated firmware loaders. In Formal Methods in Computer Aided Design(FMCAD).IEEE, 2019.

[5]Steffen Schulz,André Schaller,F(xiàn)lorian Kohnh?user,and Stefan Katzenbeisser. Boot attestation:Secure remote reporting with off-the-shelf IoT sensors. In European Symposium on Research in Computer Security(ESORICS).Springer,2017.

[6]Shijun Zhao,Qianying Zhang,Guangyao Hu,Yu Qin,and Dengguo Feng. Providing root of trust for ARM TrustZone using on-chip SRAM. In 4th International Workshop on Trustworthy Embedded Devices(TrustED).ACM,2014.

[7]William A. Arbaugh,David J. Farber,and Jonathan M.Smith. A secure and reliable bootstrap architecture. In IEEE Symposium on Security and Privacy(S&P). IEEE Computer Society,1997.

[8]Corey Kallenberg,Sam Cornwell,XenoKovah,and John Butterworth. Setup for failure: defeating secure boot. In The Symposium on Security for Asia Network (SyScan),2014.

[9]Microsoft. Secure the Windows 10 boot process.https://docs.microsoft.com/en-us/Windows/security/information-protection/secure-the-Windows-10-boot-process,2018.

[10]Richard Wilkins and Brian Richardson. Uefi secure boot in modern computer security solutions. In UEFI Forum,2013.

[11]Trusted Computing Group. TPM main specification level 2 version 1.2,revision 116.https://trustedcomputinggroup.org/resource/tpm-main-specification/,2011.

[12]https://en.wikipedia.org/wiki/JTAG.

[13]Zynq-7000 SoC Data Sheet: Overview DS190(v1.12.2)July 2,2018.

[14]Zynq-7000 SoC Technical Reference Manual UG585(v1.12.2)July 1,2018.

[15]徐明迪,明瑞揚,任正偉,沈楚楚. 一種靜態(tài)可信度量根安全證明方法[A]. 中國造船工程學會電子技術(shù)學術(shù)委員會.中國造船工程學會電子技術(shù)學術(shù)委員會2017年裝備技術(shù)發(fā)展論壇論文集[C].中國造船工程學會電子技術(shù)學術(shù)委員會:中國造船工程學會,2017:5.

[16]程戈,李聰.可信計算環(huán)境構(gòu)建機制研究進展[J].計算機工程與應用,2013,49(13):59-64+197.

[17]王小云,于紅波.SM3密碼雜湊算法[J].信息安全研究,2016,2(11):983-994.

國家重點研發(fā)計劃項目:功能安全與信息安全融合的儀表共性關(guān)鍵技術(shù)研究與產(chǎn)品開發(fā)(2019YFB2006300)

猜你喜歡
嵌入式程序設(shè)備
諧響應分析在設(shè)備減振中的應用
試論我國未決羈押程序的立法完善
基于MPU6050簡單控制設(shè)備
電子制作(2018年11期)2018-08-04 03:26:08
搭建基于Qt的嵌入式開發(fā)平臺
“程序猿”的生活什么樣
英國與歐盟正式啟動“離婚”程序程序
嵌入式軟PLC在電鍍生產(chǎn)流程控制系統(tǒng)中的應用
500kV輸變電設(shè)備運行維護探討
創(chuàng)衛(wèi)暗訪程序有待改進
原來他們都是可穿戴設(shè)備
消費者報道(2014年7期)2014-07-31 11:23:57
主站蜘蛛池模板: 欧美中文字幕在线视频| 青草视频免费在线观看| 亚洲三级电影在线播放| 亚洲精品在线91| 欧美伊人色综合久久天天| 亚洲无码37.| 亚洲成a人片77777在线播放| 中文字幕自拍偷拍| 亚洲AV色香蕉一区二区| 亚洲综合色婷婷| 国产亚洲日韩av在线| 97se亚洲综合在线天天| 狠狠色狠狠综合久久| 国产精品13页| 国产性爱网站| 亚洲va欧美va国产综合下载| 国产精品漂亮美女在线观看| 亚洲欧美h| 久久亚洲综合伊人| 色哟哟国产成人精品| 欧美另类视频一区二区三区| 亚洲欧美不卡| 国产福利观看| 日韩成人在线一区二区| 高清精品美女在线播放| 国产第一页亚洲| 久久无码av一区二区三区| 国产簧片免费在线播放| 国内老司机精品视频在线播出| 美女被操黄色视频网站| 国产欧美日本在线观看| 久久亚洲国产一区二区| 国产亚洲视频中文字幕视频 | 无码高清专区| 国产精品蜜芽在线观看| 人妻精品久久久无码区色视| 91www在线观看| 亚洲区第一页| 中文字幕日韩丝袜一区| 婷婷色婷婷| 国产网站一区二区三区| 激情爆乳一区二区| 精品久久香蕉国产线看观看gif | 天天干伊人| 人人爽人人爽人人片| 日韩AV无码免费一二三区| 欧美不卡二区| 国产尤物在线播放| 国产无码高清视频不卡| 国产人成网线在线播放va| 国内自拍久第一页| 国产亚洲精品97AA片在线播放| 久久www视频| 国产一区二区精品福利| 亚洲av无码成人专区| 国产视频 第一页| 国产在线自在拍91精品黑人| 日本不卡在线播放| 91精品亚洲| 99中文字幕亚洲一区二区| 亚洲天堂网在线视频| 亚洲妓女综合网995久久| 最新国语自产精品视频在| 国产乱子精品一区二区在线观看| 成人免费一级片| 亚洲天堂日韩av电影| 欧美另类视频一区二区三区| 国产自视频| 久久77777| 国产黄色免费看| 国产无码制服丝袜| 国产在线视频导航| 日韩天堂视频| 性欧美久久| 国产成人综合日韩精品无码首页| 亚洲成人手机在线| 看国产一级毛片| 中文字幕第4页| 一级成人欧美一区在线观看| 久久久久亚洲精品成人网| 国产精品护士| 国产杨幂丝袜av在线播放|