天天看點

雲計算重頭戲:可信計算技術

本文講的是<b>雲計算重頭戲:可信計算技術</b>,【IT168 資訊】可信計算技術的一個重要應用就是保護軟體的完整性,或者說是"硬化"軟體,并将這一事實向使用者作出擔保.是以可信計算技術在雲計算中也有重頭戲可唱。

  您也許不知道,中國在可信計算技術這一領域并不象其它許多高科技領域那樣比國際上落後不少.可信計算聯盟(Trusted Computing Group, TCG www.trustedcomputinggroup.org)是行業中的一個标準組織.TCG于2003年11月公開釋出可信計算子產品标準.而國内武漢大學早在2001年就開始獨立進行可信計算的研究工作了.2004年可信計算樣機都已經在武漢做出來了.是以說咱們中國在該領域的研究與開發工作起步一點都不比國外晚.

  前幾天我在"可信計算(1)"一文中聲稱:可信計算技術的一個重要應用就是保護軟體的完整性,或者說是"硬化"軟體,并将這一事實向使用者作出擔保.現對這一斷言作一番技術說明.希望它Make Sense.

  可信計算的重要部件,可信平台子產品(Trusted Platform Module, TPM),在計算機體系架構中的安裝位置.TPM是個具有計算及存儲功能的晶片.輸入/輸出控制器(I/O Controller)是連接配接外部裝置與記憶體的總線.将TPM安裝在I/O Controller中的目的是為了讓TPM截獲每一個從外存裝載入記憶體的軟體.所謂"截獲",您盡管可以把它讀作"偷聽"(或叫"垂簾聽政"也行).由 于是硬體連接配接,隻要使用者選擇了"打開TCG功能",TPM的"偷聽"行為就不可避免.當然囿于TPM的記憶體量,TPM僅存儲被它"偷聽"到的軟體的一個哈 希值.TPM内部配備有哈希函數.

  按照TCG的設計理念,TPM會按照整個系統及應用軟體棧的裝載順序來"偷聽"裝載到計算平台上的所有軟體.請不要擔心TPM有沒有這個海量, 由于采用了一個很聰明的哈希擴充算法,TPM的确會有辦法來存儲所有能夠被平台所裝載的全部軟體.舉例X86平台的軟體裝載過程:從機器加電啟動開 始,TPM将順序"偷聽"并存儲BIOS(通常是存在一個固件中,與附加ROMs一起,叫做BasicBootBlocks), MBR(Master Boot Record, 是系統硬碟上的第一個扇區内容), OS Loader(MBR所指向的一個足夠大的磁盤區域,從其能夠導入一個足夠大的程式來執行OS的裝載), OS, 使用者應用程式1, 使用者應用程式2

  如此順序裝載的程式叫做一個鍊(Chain).圖中"度量"一個軟體就是對該軟體哈希.TPM之是以要把跑在計算平台上的整個軟體鍊的哈希值記 錄下來是為了能夠把該平台上的軟體加載狀況向一個關心這一狀況的人報告.比如該平台是一台雲伺服器,而關心者是雲服務的使用者.TPM可以對一分報告進行數 字簽名,確定報告的真實性.TPM内有公鑰密碼算法使得TPM可以給出數字簽名.

  除了對TPM給出設計說明,TCG還給出了TPM裝置驅動軟體的設計說明.到此為止我對TCG技術作了一個非常簡單的叙述.

  假定在這樣一個鍊中的這些程式都是正确的,則這個從底部BIOS開始到頂部使用者應用程式的鍊就叫做信任鍊(a Chain of Trust),而BIOS又叫做信任鍊之根(the Root of a Chain of Trust).TCG當然無法控制任何這些軟體的可信性!實際上通過TCG技術,一個平台軟體狀況的詢問者僅僅是得到了平台軟體狀況而已,判斷這些軟體的 正确與否還是詢問者自己的任務.TCG技術隻是對詢問者作出了真實的報告.

  目前普遍認為TCG所設想的信任鍊如要包含商用作業系統是不切實際的.從BIOS一直到OS Loader,這些軟體都不是很複雜,做到可信不會太難.惟獨可信OS是個大難題.目前熱門的做法是用可信硬體虛拟化的技術來繞開商用作業系統不可信的問題.我會在以後的一講中嘗試介紹.

原文釋出時間為:2009-06-25

本文作者: IT168.com

本文來自雲栖社群合作夥伴IT168,了解相關資訊可以關注IT168。

原文标題:雲計算重頭戲:可信計算技術

繼續閱讀