種惠芳
摘要:在分析傳統(tǒng)文件保密技術的基礎上,針對其不足之處,結合可信計算技術,分析了可信計算平臺下文件的保密方案。分析表明該方案提高了文件存儲時的安全性和機密性,并節(jié)約了系統(tǒng)開銷。
關鍵詞:可信計算;TPM;文件保密;密封技術
中圖分類號:TP311文獻標識碼:A文章編號:1009-3044(2012)22-5388-03
隨著信息技術的發(fā)展,計算機在人們生活中的應用越來越廣泛,人們依賴計算機進行各種各樣的信息存儲和信息處理。但威脅隨之而來,一些非法人員試圖通過各種途經來獲取人們存儲在計算機上的信息。為了保證存儲在計算機上的信息的安全性,人們普遍采用給操作系統(tǒng)加密、文件加密等技術。此類技術在一定程度上保護了用戶的隱私,但并沒從根本上起到預期的效果,主要原因在于:1)基于系統(tǒng)加密的方式不安全。此類方式不能抵制“脫機攻擊”威脅;2)基于軟件的文件加密機制不可靠。此類加密方式中加密文件和密鑰綁定在一起,此類文件對于蠕蟲、木馬那些隱藏性很深探究能力特別強的病毒來說,獲得密碼只是時間的問題?;谝陨显颍撐膶⒖尚庞嬎慵夹g引入到文件保密系統(tǒng)中,使用可信計算提供的密封功能和信任鏈技術,來克服傳統(tǒng)的“脫機攻擊”威脅和基于軟件加密的不可靠性。
1可信計算關鍵技術
可信計算的優(yōu)勢體現在可信計算平臺能夠提供保證系統(tǒng)運行環(huán)境可信的能力?!翱尚拧盵1,2]是指計算平臺能夠按照人們預期的方式運行??尚庞嬎慵夹g的核心思想是,如果一個平臺是可信的,那么它就可以按照人們預期的方式正常運行,如果平臺不可信,那么系統(tǒng)將根據預先定義的訪問控制機制來采取相應的措施。
1.1總體架構
典型的可信計算平臺總體架構[1]如圖1所示。由圖1可以看出,可信計算平臺主要由8大部分組成,除了TPM(Trusted Computing Model,TPM),其它都是傳統(tǒng)PC機上所具有的部件。TPM是可信計算平臺的核心,平臺的可信性及平臺上數據的機密性都必須依靠TPM及平臺的完整性度量、信任鏈、數據密封等技術來實現。系統(tǒng)中的所有的文件由TPM進行加密,存儲部件不參與任何加解密過程,從而保證系統(tǒng)的安全性。
圖1可信計算平臺總體架構
1.2工作原理
可信計算平臺的可信性是通過可信計算平臺提供的完整性度量技術和信任鏈技術來保障的[1]。其中可信度量核心根(CRTM,Core Root of Trusted Measurement)是可信平臺中的一個關鍵部件,是系統(tǒng)信任傳遞的起點,是絕對可信的部分??尚艠嫿▔K(Trusted Building Boundary,TBB)和系統(tǒng)可信根是(Roots of Trusted,RT)建立系統(tǒng)信任鏈的必備要素。TBB是系統(tǒng)信任根的一部分,通常包括實現TPM和完整性度量根初始化的指令。RT通常由可信度量根(Root of Trusted for Measurement,RTM)、可信存儲根(Root of Trust for Storage,RTS)和可信報告根(Root of Trust for Reporting,RTR)構成。RTM是系統(tǒng)信任的起點,也是系統(tǒng)信任鏈傳遞的起點,是一組絕對可信的指令代碼,通常指CRTM;RTS是用來存儲完整性度量結果及度量順序的指令代碼;RTR是用來準確報告RTS中所存儲信息的指令。RTM、RTS和RTR必須能夠保證正常運行,且不被外界損壞。
完整性度量的理論依據是:一個對象是可信任的,那么其完整性度量結果必然符合預期的要求,如果完整性度量結果與預期結果不同,那么該對象的可信性已不能保證。
完整性度量的過程是獲取影響平臺可信性系統(tǒng)特征參數的過程,度量的結果是代表這些特征參數的值和度量日志。根據度量對象的不同,完整性度量值被存儲在不同的TPM平臺配置寄存器(Platform Configuration Register,PCR)中。度量算法為:
PCR[n]new←SHA-1(PCR[n]old+度量數據)
“PCR[n]new”表示新的度量值被存儲在第n個PCR中(第n個PCR中的初始值為0);“PCR[n]old”表示本次度量之前第n個PCR中已經存儲的度量值;“度量數據”表示被度量對象的特征值;“+”表示連接,即將PCR[n]old的度量值與被度量對象的特征數據進行連接;SHA-1是SHA-1函數,使用SHA-1函數進行新的度量值的計算;“←”表示將新的度量結果作為完整性度量值存儲在PCR[n]中。
完整性度量過程不僅存儲度量值,而且按照度量順序保存度量組件及度量順序等相關信息,這些存儲的信息被稱為存儲度量日志(Stored Measurement Log,SML),使用SML可以重新計算獲得完整性度量值,此技術主要用在遠程證明過程中[5]。
信任鏈是保證系統(tǒng)可信的另一個關鍵技術,其基本思想是:系統(tǒng)將控制權轉交給下一個實體之前需要對其進行完整性度量,如果其完整性度量值滿足預期的要求,那么系統(tǒng)就將控制權轉交給該實體,否則拒絕該實體的運行。從系統(tǒng)加電啟動至系統(tǒng)正常運行,如果能夠保證所有運行的組件都是可信的,那么整個系統(tǒng)必然能夠按照預期的方式運行,從而保證了整個系統(tǒng)的可信。
要實現可信計算平臺上的文件保密,除了完整性度量技術和信任鏈技術之外,還必須依賴TPM提供的密鑰技術和密封技術。基于TPM的可信平臺在進行傳統(tǒng)的賬戶認證之前,首先需要進行TPM所有者的認證。該認證方法也是基于用戶名和密碼技術,但其屬于硬件認證,而且所采用的加密算法密鑰長度大于2048[3,4]位。一旦TPM所有者認證通過,系統(tǒng)才會進行操作系統(tǒng)賬號的認證。此外,TPM提供的密封技術使得系統(tǒng)存在任何潛在威脅的加密文件都不能解密獲得明文,進而加強了文件的機密性。
2基于可信計算平臺的文件保密系統(tǒng)
基于可信計算平臺的文件保密系統(tǒng)工作原理如圖2所示。
圖2基于可信計算平臺的文件保密系統(tǒng)原理圖
具體步驟如下所示:
1)系統(tǒng)加電,進行TPM初始化和系統(tǒng)關鍵硬件的初始化;
2) TPM進行所有者認證。如果TPM所有者認證通過,那么執(zhí)行后續(xù)操作,否則根據預先制定的訪問控制策略執(zhí)行相應的操作(如關機,等);
3)可信度量核心根對操作系統(tǒng)加載代碼進行完整性度量,如圖2步驟①所示。如果操作系統(tǒng)加載代碼的完整性度量結果滿足預期的要求,那么系統(tǒng)將控制權轉交給操作系統(tǒng)加載代碼,執(zhí)行如圖2步驟②所示的操作。否則根據預先制定的訪問控制策略執(zhí)行相應的操作;
4)操作系統(tǒng)加載代碼對操作系統(tǒng)代碼進行完整性度量,如圖2步驟③所示。如果操作系統(tǒng)的完整性度量結果滿足預期的要求,那么系統(tǒng)將控制權轉交給操作系統(tǒng),執(zhí)行如圖2步驟④所示的操作。否則根據預先制定的訪問控制策略執(zhí)行相應的操作;
5)操作系統(tǒng)對系統(tǒng)中的應用程序代碼進行完整性度量,如圖2步驟⑤所示。如果應用程序的完整性度量結果滿足預期的要求,那么應用程序獲得系統(tǒng)運行權,執(zhí)行如圖2步驟⑥所示的操作。否則根據預先制定的訪問控制策略執(zhí)行相應的操作。
由此可以得出,如果從系統(tǒng)加電啟動到整個系統(tǒng)正常運行的每個環(huán)節(jié)都可以保證是可信的,那么整個系統(tǒng)就是可信的。此時,一旦要運行某個文件,如果該文件處于明文狀態(tài),那么就可以直接運行,如果該文件是密文,那么系統(tǒng)將根據需要重新計算系統(tǒng)的完整性度量值,如果其可信狀態(tài)與此文件加密時所處的狀態(tài)一致(或可信性滿足一定的要求),那么就可以輸入解密密碼獲得該密文的明文,否則即使輸入正確的密鑰也不能獲得該密文的明文。
3基于可信計算平臺的文件保密系統(tǒng)分析
基于可信計算平臺的文件保密系統(tǒng)相對傳統(tǒng)的文件保密方法具有以下幾方面的優(yōu)勢:
1)能夠有效抵制“脫機攻擊”?;诳尚庞嬎闫脚_的文件保密系統(tǒng)不只具有傳統(tǒng)的用戶賬號密碼保護機制,而且還具有硬件密碼保護機制,使用TPM硬件提供的所有者密碼和傳統(tǒng)用戶賬號密碼相結合的保護機制,使得沒有正確硬件密碼的人根本不可能饒過用戶賬號密碼進入系統(tǒng),竊取文件機密;
2)使用可信計算平臺提供的完整性度量機制和信任鏈機制,保證從系統(tǒng)加電開機直至正常運行的每一個環(huán)節(jié)都是可信的,潛在威脅和已被破壞的對象可以很容易被檢測到并采取相應的措施,有效制止損失的擴大;
3)基于可信計算的文件加密系統(tǒng)不是單純的軟件加密,可以使用TPM中的密鑰生成器基于特定的技術(如不可遷移密鑰)來產生相應的加密文件的密鑰來對文件進行加密,所以說該密鑰是一種硬件密鑰。該技術使得加密文件和密鑰分離,進一步提高了文件的保密性;
4)使用可信計算平臺提供的密封技術可以進一步提高文件的保密性。密封技術使得不滿足解密環(huán)境要求的文件即使擁有正確的解密密碼也不能被解密。
4結束語
在對可信計算工作原理進行介紹的基礎上,給出了基于可信計算平臺的文件保密系統(tǒng)總體架構,并分析了使用可信計算平臺提高文件的機密性的原理。分析表明,基于可信計算平臺的TPM所有者認證機制可以有效抵制傳統(tǒng)的“脫機攻擊”威脅;使用可信平臺提供的完整性度量和信任鏈機制可以提高整個系統(tǒng)可靠性;使用TPM提供的硬件密鑰和密封技術可以進一步提高文件的保密性。下一步工作是對該理論性分析進行更具體的實驗驗證。
參考文獻:
[1] Trusted Computing Group-Developers[EB/OL].https://www.trustedcomputinggroup.org/groups/TCG_1_4_Architecture_Overview.pdf.
[2]張煥國,羅捷,金剛..可信計算研究進展[J].武漢大學學報:理學版,2006(5):513-518.
[3] TPM Main[DB/OL].http://www.trustedcomputinggroup.org/files/static_page_files/72C26AB5-1A4B-B294-D002BC0B8C062FF6/TPM MainPart 1 Design Principles_v1.2_rev116_01032011.pdf.
[4] David Challener, Kent Yoder, Ryan Catherman.可信計算[M].趙波,嚴飛,余發(fā)江,譯.北京:機械工業(yè)出版社,2009.
[5] TCG Trusted Network ConnectTrusted Network Connect TNC Architecture for Interoperability[DB/OL].http://www.trustedcomputinggroup. org/files/resource_files/2884F884-1A4B-B294-D001FAE2E17EA3EB/TNC_Architecture_v1_5_r3-1.pdf.