楊雪嬌,阮軍洲,崔麗珍
(1.中國(guó)電子科技集團(tuán)公司第五十四研究所,河北 石家莊 050081;
2.中國(guó)人民解放軍75660部隊(duì),廣西 桂林 541002)
?
VxWorks嵌入式系統(tǒng)可信平臺(tái)的設(shè)計(jì)與實(shí)現(xiàn)
楊雪嬌1,阮軍洲2,崔麗珍1
(1.中國(guó)電子科技集團(tuán)公司第五十四研究所,河北 石家莊 050081;
2.中國(guó)人民解放軍75660部隊(duì),廣西 桂林 541002)
摘要基于可信計(jì)算中一級(jí)校驗(yàn)一級(jí)的思想,針對(duì)VxWorks嵌入式操作系統(tǒng)的特性,介紹了一種實(shí)現(xiàn)VxWorks嵌入式操作系統(tǒng)的可信啟動(dòng)的方法。通過建立一條鏈?zhǔn)叫湃捂?,使用轉(zhuǎn)換模塊結(jié)合TCM芯片的方式設(shè)計(jì)并實(shí)現(xiàn)了一種安全增強(qiáng)的可信硬件平臺(tái),實(shí)現(xiàn)了對(duì)VxWorks嵌入式平臺(tái)的可信啟動(dòng)的控制,介紹了平臺(tái)的硬件與軟件的設(shè)計(jì)與實(shí)現(xiàn)方式。通過對(duì)本設(shè)計(jì)的功能性測(cè)試,證明設(shè)計(jì)并實(shí)現(xiàn)的可信平臺(tái)可抵御外部威脅對(duì)平臺(tái)信息的篡改,增強(qiáng)硬件平臺(tái)的安全性。
關(guān)鍵詞可信計(jì)算;信任根;信任鏈;可信平臺(tái)模塊
DesignandImplementationofTrustedComputingPlatform
BasedonVxWorksEmbeddedOperatingSystem
YANGXue-jiao1,RUANJun-zhou2,CUILi-zhen1
(1.The 54th Research Institute of CETC,Shijiazhuang Hebei 050081,China;
2.Unit 75660,PLA,Guilin Guangxi 541002,China)
AbstractInviewoftheideaoflevelcalibrationlevelintrustedcomputingandthecharacteristicsofVxWorksembeddedoperatingsystem,thispaperintroducesamethodofimplementingthetrustedbootofVxWorksembeddedoperatingsystem.Byestablishingatrustedchain,asecureenhancedtrustedhardwareplatformisdesignedandimplementedbyincorporatingconversionmoduleandTCMchips.ThetrustedbootofVxWorksembeddedplatformisimplemented.Thehardwareandsoftwaredesignandimplementmethodsofplatformareintroduced.Thefunctionaltestresultsshowthatthetrustedplatformcandefensetheviolenceforplatforminformationfromexternalthreatandenhancethesecurityofhardwareplatform.
Keywordstrustedcomputing;rootoftrust;chainoftrust;TPM
0引言
隨著信息技術(shù)的高速發(fā)展,信息安全面臨新的挑戰(zhàn),不僅要檢測(cè)和防御有害信息,更需著手基礎(chǔ)網(wǎng)絡(luò)安全建設(shè),從硬件設(shè)備到通信數(shù)據(jù)流逐步保證網(wǎng)絡(luò)信息的可信。其中基于硬件的形態(tài)、防止底層信息被篡改是保證硬件平臺(tái)可信的基礎(chǔ)[1-3]。
可信計(jì)算是一種信息系統(tǒng)安全新技術(shù),它在計(jì)算和通信系統(tǒng)中廣泛使用,以基于硬件安全模塊支持下的可信平臺(tái)為基礎(chǔ)進(jìn)而提高系統(tǒng)整體的安全性。
可信計(jì)算組織TCG提出了TPM標(biāo)準(zhǔn),目前最新版本為1.2。著眼安全戰(zhàn)略方面,為保證國(guó)家信息安全,自主研發(fā)了密碼算法和引擎,并依此構(gòu)建可信密碼模塊(TrustedCryptographyModule,TCM)安全芯片。TCM安全芯片在可信計(jì)算平臺(tái)中為系統(tǒng)平臺(tái)和軟件提供基礎(chǔ)的安全服務(wù),建立更安全可靠的系統(tǒng)平臺(tái)環(huán)境。
可信計(jì)算平臺(tái)是一種實(shí)現(xiàn)系統(tǒng)硬件安全及操作系統(tǒng)安全的方式,TPM是可信計(jì)算平臺(tái)的基礎(chǔ),是可信計(jì)算的關(guān)鍵技術(shù)之一。通過使用TPM,可在硬件平臺(tái)上增強(qiáng)嵌入式平臺(tái)的安全性[4,5]。
本文設(shè)計(jì)并實(shí)現(xiàn)了基于VxWorks嵌入式操作系統(tǒng)的可信平臺(tái),通過使用TPM完成對(duì)VxWorks嵌入式操作系統(tǒng)的可信性的完整性度量,該平臺(tái)可實(shí)現(xiàn)對(duì)VxWorks嵌入式操作系統(tǒng)的主動(dòng)度量,防止平臺(tái)程序的惡意篡改,在硬件平臺(tái)上增強(qiáng)了嵌入式平臺(tái)的安全性。
1可信計(jì)算平臺(tái)原理
1.1可信計(jì)算原理
可信計(jì)算是指計(jì)算機(jī)運(yùn)算的同時(shí)進(jìn)行安全防護(hù),使操作和過程行為在任意條件下的結(jié)果總是和預(yù)期一樣,計(jì)算全程可測(cè)可控,不被干擾,是一種運(yùn)算和防護(hù)并存,自我免疫的新計(jì)算模式。
可信計(jì)算的基本思想是:首先在計(jì)算機(jī)系統(tǒng)中建立一個(gè)信任根,信任根的可信性由物理安全、技術(shù)安全與管理安全共同確保,再建立一條信任鏈,從信任根開始到硬件平臺(tái),到操作系統(tǒng),再到應(yīng)用,一級(jí)度量認(rèn)證一級(jí),一級(jí)信任一級(jí),把這種信任擴(kuò)展到整個(gè)計(jì)算機(jī)系統(tǒng),從而確保整個(gè)計(jì)算機(jī)系統(tǒng)的可信[2]。
可信計(jì)算技術(shù)框架構(gòu)建需要以密碼學(xué)為基礎(chǔ),可信芯片為信任根,主板為平臺(tái),軟件為核心,網(wǎng)絡(luò)為紐帶,應(yīng)用成體系。
可信計(jì)算的總體目標(biāo)是提高計(jì)算機(jī)系統(tǒng)的安全性,現(xiàn)階段的主要目標(biāo)是確保系統(tǒng)數(shù)據(jù)的完整性、數(shù)據(jù)的安全存儲(chǔ)和平臺(tái)可信性的遠(yuǎn)程證明。
可信計(jì)算產(chǎn)品主要用于安全風(fēng)險(xiǎn)控制,使發(fā)生安全事件時(shí)將損失降至最小。
1.2可信平臺(tái)模塊原理
可信計(jì)算平臺(tái)是依據(jù)可信計(jì)算的基本思想,將可信芯片作為一個(gè)信任根,在此基礎(chǔ)上建立一條信任鏈,從信任根到硬件平臺(tái)到操作系統(tǒng)再到應(yīng)用,一級(jí)認(rèn)證一級(jí),一級(jí)信任一級(jí)??尚庞?jì)算平臺(tái)由可信硬件平臺(tái)和相關(guān)的可信軟件構(gòu)成。可信硬件平臺(tái)由各設(shè)備板卡與TPM組成[1,6-8]。
可信計(jì)算平臺(tái)的核心為TPM。TPM包含密碼部件、非易失性存儲(chǔ)器和平臺(tái)配置寄存器(PCR)等模塊。TPM密碼模塊符合TCG標(biāo)準(zhǔn)規(guī)范,支持對(duì)稱與非對(duì)稱密鑰及算法,支持HASH計(jì)算,具備加解密、簽名及認(rèn)證等功能,并可在相關(guān)PCR內(nèi)存儲(chǔ)相應(yīng)度量信息[6-8]。
TPM采用符合可信計(jì)算密碼支撐平臺(tái)功能與接口規(guī)范的TCM芯片,在將TCM芯片作為可信存儲(chǔ)、可信度量與可信報(bào)告的基礎(chǔ)上,建立信任鏈,實(shí)現(xiàn)嵌入式平臺(tái)的可信啟動(dòng)控制與后續(xù)應(yīng)用的可信計(jì)算。
可信平臺(tái)由可信存儲(chǔ)根(RootofTrustforReporting,RTS)、可信報(bào)告根(RootofTrustforStorage,RTR)和可信度量根(RootofTrustforMeasurement,RTM)這3大信任根組成。RTS用于簽署TPM的狀態(tài)和數(shù)據(jù)信息,RTR用于保護(hù)TPM放置外部的數(shù)據(jù)信息,RTM用于有序度量平臺(tái)的狀態(tài)[9-11]。
TPM的結(jié)構(gòu)和功能如圖1所示。TPM目標(biāo)是為了建立計(jì)算平臺(tái)安全信任根基礎(chǔ),用于度量平臺(tái)完整性,標(biāo)識(shí)平臺(tái)唯一身份,提供硬件密碼學(xué)與密鑰保護(hù)[3,12]。
圖1 TPM結(jié)構(gòu)和功能示意
TPM的信任度量采用了一種鏈?zhǔn)降男湃味攘磕P?,?jiǎn)稱信任鏈,形成一條從BIOSBootBlock->BIOS->OSLoader->OS->Application構(gòu)成一個(gè)串行鏈,BIOSBootBlock為RTM,采用HASH迭代計(jì)算,將現(xiàn)值與新值相連,將計(jì)算的HASH值作為完整性度量值存儲(chǔ)到平臺(tái)配置寄存器PCR內(nèi)。
NewPCRi=HASH(OldPCRi-1∥NewValue)。
(1)
式中,∥表示連接[2]。
在具備數(shù)據(jù)恢復(fù)的度量模型中,事先將被度量的部件進(jìn)行備份,在度量過程中,如發(fā)現(xiàn)其完整性被破壞,則讀取備份中的數(shù)據(jù),進(jìn)行數(shù)據(jù)恢復(fù)。
可信計(jì)算平臺(tái)是依據(jù)可信計(jì)算的思想,使用TPM,以實(shí)現(xiàn)平臺(tái)硬件及操作系統(tǒng)安全。
2VxWorks嵌入式操作系統(tǒng)可信平臺(tái)設(shè)計(jì)
與Linux、Windows操作系統(tǒng)不同,VxWorks操作系統(tǒng)不具備分段的特性,即VxWorks配置字文件、操作系統(tǒng)文件與應(yīng)用程序物理上存儲(chǔ)于一片存儲(chǔ)器內(nèi),且VxWorks操作系統(tǒng)文件與應(yīng)用程序?yàn)橐粋€(gè)VxWorks執(zhí)行文件,因此在設(shè)計(jì)并實(shí)現(xiàn)基于VxWorks嵌入式操作系統(tǒng)可信平臺(tái)時(shí),基于可信計(jì)算的基本思想,將配置字文件進(jìn)行HASH與ECC校驗(yàn)作為RTM存儲(chǔ)于PCR1內(nèi),將PCR1內(nèi)數(shù)據(jù)與VxWorks程序文件進(jìn)行HASH迭代計(jì)算與ECC加密計(jì)算,將得到的度量值存儲(chǔ)于PCR2內(nèi),在PCR中僅存儲(chǔ)2個(gè)可信度量值。
2.1可信平臺(tái)硬件設(shè)計(jì)
在實(shí)現(xiàn)VxWorks嵌入式操作系統(tǒng)可信平臺(tái)的過程中,由于現(xiàn)有的TCM芯片不具備外部存儲(chǔ)芯片使用的總線接口,為完成TPM對(duì)VxWorks程序文件的主動(dòng)度量,采用轉(zhuǎn)換模塊結(jié)合TCM芯片的方式設(shè)計(jì)并實(shí)現(xiàn)了VxWorks嵌入式操作系統(tǒng)可信平臺(tái)。VxWorks嵌入式操作系統(tǒng)可信平臺(tái)的框架如圖2所示,主要包括設(shè)備板卡與TPM,其中設(shè)備板卡主要包含CPU、程序存儲(chǔ)芯片(Memory)及其外圍芯片,TPM主要包含TCM芯片及轉(zhuǎn)換模塊。
圖2 VxWorks嵌入式操作系統(tǒng)可信平臺(tái)實(shí)現(xiàn)框架
各模塊的功能如下:
① 設(shè)備板卡CPU從設(shè)備板卡存儲(chǔ)器中讀取VxWorks程序文件,運(yùn)行VxWorks操作系統(tǒng)文件及相應(yīng)應(yīng)用程序,結(jié)合并操控設(shè)備板卡外圍芯片實(shí)現(xiàn)主板基本軟件功能;
② 設(shè)備板卡存儲(chǔ)器用于存儲(chǔ)設(shè)備板卡VxWorks程序文件;
③TPM轉(zhuǎn)換模塊內(nèi)總線仲裁模塊負(fù)責(zé)切換設(shè)備板卡存儲(chǔ)器總線;
④TCM芯片將數(shù)據(jù)進(jìn)行HASH迭代計(jì)算及ECC校驗(yàn),判定并執(zhí)行主板啟動(dòng)策略,存儲(chǔ)并備份設(shè)備板卡VxWorks文件。
2.2可信平臺(tái)軟件設(shè)計(jì)
VxWorks嵌入式操作系統(tǒng)可信平臺(tái)操作系統(tǒng)和應(yīng)用程序?yàn)橐粋€(gè)VxWorks程序文件,配置字文件為一獨(dú)立文件,但二者存儲(chǔ)于同一存儲(chǔ)器內(nèi)。
在設(shè)計(jì)并實(shí)現(xiàn)VxWorks嵌入式操作系統(tǒng)可信平臺(tái)時(shí),需要解決的主要問題包括:
① 設(shè)計(jì)并實(shí)現(xiàn)VxWorks嵌入式操作系統(tǒng)可信平臺(tái)信任鏈的建立與信任的傳遞方式;
②TPM制定并執(zhí)行控制主板CPU啟動(dòng)的策略;
③TPM讀取主板存儲(chǔ)器數(shù)據(jù),實(shí)現(xiàn)TPM對(duì)主板的主動(dòng)度量;
④TPM讀取主板存儲(chǔ)器數(shù)據(jù),備份數(shù)據(jù)。
傳統(tǒng)TPM難以解決如上問題,依據(jù)圖2所示的實(shí)現(xiàn)框圖所設(shè)計(jì)并實(shí)現(xiàn)的VxWorks嵌入式操作系統(tǒng)可信平臺(tái)能夠完好地解決如上問題。
VxWorks嵌入式操作系統(tǒng)可信平臺(tái)信任鏈的度量模型如圖3所示。
圖3 VxWorks嵌入式操作系統(tǒng)可信平臺(tái)信任度量模型
依據(jù)該信任度量模型建立信任鏈的過程為:從配置字程序到VxWorks操作系統(tǒng)程序及應(yīng)用程序建立一個(gè)串行鏈,TPM通過對(duì)配置字程序進(jìn)行可信計(jì)算,將獲取的值作為RTM存儲(chǔ)于PCR1內(nèi),之后,將獲取的VxWorks操作系統(tǒng)程序及應(yīng)用程序與PCR1內(nèi)數(shù)據(jù)相連進(jìn)行可信計(jì)算,得到度量值存儲(chǔ)于PCR2內(nèi)。這種鏈?zhǔn)蕉攘磕P蛯?shí)現(xiàn)了可信計(jì)算的基本思想:從信任根開始到硬件平臺(tái)、到操作系統(tǒng)及應(yīng)用,一級(jí)度量認(rèn)證一級(jí),一級(jí)信任一級(jí),把這種信任擴(kuò)展至VxWorks嵌入式操作系統(tǒng),從而確保整個(gè)VxWorks嵌入式操作系統(tǒng)可信。在此信任度量模型中,RTM被TPM保護(hù),安全性更高,具備數(shù)據(jù)恢復(fù)功能,安全性和可靠性更高。
VxWorks嵌入式操作系統(tǒng)可信平臺(tái)的啟動(dòng)過程為:平臺(tái)啟動(dòng)之前,TPM對(duì)配置字程序、VxWorks操作系統(tǒng)程序分別進(jìn)行完整性度量,并將該次完整性度量結(jié)果與PCR內(nèi)預(yù)先存儲(chǔ)的完整性可信度量值進(jìn)行比較,判斷其是否可信,如判定其可信,啟動(dòng)主板程序,反之,讀取并度量備份存儲(chǔ)內(nèi)的數(shù)據(jù),并將度量值與PCR內(nèi)預(yù)先存儲(chǔ)的完整性可信度量值進(jìn)行比較,如判定備份數(shù)據(jù)可信,啟動(dòng)主板CPU執(zhí)行備份數(shù)據(jù),反之,VxWorks嵌入式操作系統(tǒng)可信平臺(tái)不工作。在后續(xù)程序啟動(dòng)后,TPM支持應(yīng)用程序的擴(kuò)展,實(shí)現(xiàn)平臺(tái)身份的遠(yuǎn)程證明和傳輸數(shù)據(jù)的加解密操作。
從VxWorks嵌入式操作系統(tǒng)可信平臺(tái)的設(shè)計(jì)與實(shí)現(xiàn)的過程說明,VxWorks嵌入式操作系統(tǒng)可信平臺(tái)與基本VxWorks嵌入式操作系統(tǒng)平臺(tái)相比,加入了總線仲裁和數(shù)據(jù)備份功能模塊,建立并擴(kuò)展了信任鏈,對(duì)程序文件進(jìn)行了可信度量,極大地提高了嵌入式操作系統(tǒng)平臺(tái)的安全性,平臺(tái)VxWorks嵌入式操作系統(tǒng)可信平臺(tái)的實(shí)現(xiàn),有利于提高VxWorks嵌入式操作系統(tǒng)的安全性,確保了系統(tǒng)數(shù)據(jù)的完整性、數(shù)據(jù)的安全存儲(chǔ)和平臺(tái)可信性的遠(yuǎn)程證明。
2.3可信平臺(tái)測(cè)試結(jié)果分析
基于VxWorks嵌入式操作系統(tǒng)可信平臺(tái)的設(shè)計(jì)與實(shí)現(xiàn)框架,實(shí)現(xiàn)并驗(yàn)證了TPM在VxWorks嵌入式操作系統(tǒng)上的應(yīng)用,通過該實(shí)際系統(tǒng)測(cè)試,證明VxWorks嵌入式操作系統(tǒng)可信平臺(tái)可以正確完成設(shè)計(jì)的功能,如下測(cè)試均為功能測(cè)試,不涉及測(cè)試數(shù)據(jù)。
針對(duì)平臺(tái)的設(shè)計(jì),測(cè)試方法如下:
① 初次啟動(dòng),設(shè)備主板燒寫VxWorks操作系統(tǒng);測(cè)試結(jié)果:TPM存儲(chǔ)可信度量值。
② 設(shè)備主板VxWorks程序被篡改,篡改程序標(biāo)記被篡改位置,TPM存儲(chǔ)的信息無需更改;測(cè)試結(jié)果:設(shè)備主板啟動(dòng),但設(shè)備主板仍按原有記錄程序啟動(dòng),并不顯示程序被篡改位置,證明該篡改程序無效,使用可信平臺(tái)內(nèi)備份程序。
③ 設(shè)備升級(jí),燒寫新VxWorks操作系統(tǒng)文件,TPM存儲(chǔ)新的度量值,預(yù)期:設(shè)備程序升級(jí),TPM重新存儲(chǔ)可信度量值。
在本設(shè)計(jì)中,VxWorks操作系統(tǒng)文件為40Mbyte,VxWorks操作系統(tǒng)嵌入式平臺(tái)在不具備可信啟動(dòng)模塊的情況下,程序?yàn)閱?dòng)時(shí)間為3s,VxWorks嵌入式操作系統(tǒng)可信平臺(tái)啟動(dòng)時(shí)間為3.35s,這一延時(shí)時(shí)間為可忍受范圍。TPM內(nèi)使用的HASH及ECC對(duì)稱加密算法,提高了可信度量值的安全性。
3結(jié)束語
可信計(jì)算平臺(tái)的出現(xiàn)并不能解決網(wǎng)絡(luò)環(huán)境對(duì)設(shè)備的惡意影響,而是在硬件的基礎(chǔ)上增強(qiáng)設(shè)備啟動(dòng)運(yùn)行時(shí)的正確性,在硬件上避免設(shè)備程序的惡意篡改,提高設(shè)備硬件的安全性。本文提出了一種實(shí)現(xiàn)VxWorks嵌入式操作系統(tǒng)可信平臺(tái)的設(shè)計(jì),該設(shè)計(jì)已被驗(yàn)證,通過使用TPM完成對(duì)VxWorks嵌入式操作系統(tǒng)的可信性的完整性度量,該平臺(tái)可實(shí)現(xiàn)對(duì)VxWorks嵌入式操作系統(tǒng)的主動(dòng)度量,防止平臺(tái)程序的惡意篡改,在硬件平臺(tái)上增強(qiáng)了嵌入式平臺(tái)的安全性。該設(shè)計(jì)可適用于實(shí)現(xiàn)各種非明顯分段存儲(chǔ)的操作系統(tǒng)可信計(jì)算平臺(tái)。
參考文獻(xiàn)
[1]沈昌祥,陳興蜀.基于可信計(jì)算構(gòu)建縱深防御的信息安全保障體系.[J].四川大學(xué)學(xué)報(bào)(工程科學(xué)版),2014,46(1):1-5.
[2]沈昌祥,張煥國(guó),王懷民,等.可信計(jì)算的研究與發(fā)展[J].中國(guó)科學(xué):信息科學(xué),2010,40(2):139-166.
[3]張煥國(guó),李晶,潘丹玲,等.嵌入式系統(tǒng)可信平臺(tái)模塊研究[J].計(jì)算機(jī)研究與發(fā)展,2011,7(48):1 269-1 278.
[4]李冰,李釗,李建軍,等.一種可信網(wǎng)絡(luò)模型的構(gòu)建方法[J].無線電通信技術(shù),2012,38(3):20-22,42.
[5]張煥國(guó),覃中平,劉毅,等.一種新的可信平臺(tái)模塊[J].武漢大學(xué)學(xué)報(bào)(信息科學(xué)版),2008,10(33):992-994.
[6]朱海衛(wèi),施蕾.淺議可信計(jì)算的發(fā)展[J].信息安全與通信保密,2009(3):79-81.
[7]劉振鈞,董貴山,辜斌.一種基于TPM技術(shù)增強(qiáng)嵌入式平臺(tái)安全性的方法[J].信息安全與通信保密,2009(2):104-107.
[8]陳麟,林宏剛,黃元飛.基于可信計(jì)算的惡意代碼防御機(jī)制研究[J].計(jì)算機(jī)應(yīng)用研究,2008,25(12):3 713-3 715.
[9]林小茶,李光,金爽.嵌入式可信計(jì)算機(jī)研究[J].計(jì)算機(jī)工程與設(shè)計(jì),2009,30(16):3 730-3 734.
[10]王飛,劉毅.可信計(jì)算平臺(tái)安全體系及應(yīng)用研究[J].微計(jì)算機(jī)信息,2007,23(3-3):76-78.
[11]徐娜,韋衛(wèi).基于安全芯片的可信平臺(tái)設(shè)計(jì)與實(shí)現(xiàn)[J].計(jì)算機(jī)應(yīng)用研究,2007(8):117-119.
[12]于昇,祝璐,沈昌祥.基于可信計(jì)算平臺(tái)的身份管理框架[J].計(jì)算機(jī)應(yīng)用研究,2009,26(9):3 493-3 495.
楊雪嬌女,(1984—),工程師。主要研究方向:可信計(jì)算平臺(tái)、Android系統(tǒng)開發(fā)和Linux驅(qū)動(dòng)開發(fā)。
阮軍洲男,(1976—),講師。主要研究方向:可指揮自動(dòng)化。
作者簡(jiǎn)介
收稿日期:2015-09-18
中圖分類號(hào)TP391.4
文獻(xiàn)標(biāo)識(shí)碼A
文章編號(hào)1003-3106(2015)12-0006-04
doi:10.3969/j.issn.1003-3106.2015.12.02
引用格式:楊雪嬌,阮軍洲,崔麗珍.VxWorks嵌入式系統(tǒng)可信平臺(tái)的設(shè)計(jì)與實(shí)現(xiàn)[J].無線電工程,2015,45(12):6-9.