基于SW-TPM的便攜式身份認證
移動設(shè)備、普適計算的推廣使得用戶越來越依賴于使用移動終端與其他的應用環(huán)境中所提供的服務(wù)進行通訊,大大增加了敏感信息以及個人數(shù)據(jù)泄露的可能,同時使用網(wǎng)絡(luò)服務(wù)的用戶也希望通過使用可信賴的設(shè)備所提供的安全服務(wù)以減少隱私泄露。
用戶身份認證、授權(quán)以及審計是進行信息系統(tǒng)安全設(shè)計的關(guān)鍵因素。其中,身份認證作為授權(quán)和審計的基礎(chǔ),是保障信息系統(tǒng)能以安全有效的方式被訪問的前提,在系統(tǒng)安全中占有重要地位。
但是很多情況下終端設(shè)備的所有權(quán)和使用權(quán)分屬不同實體,這給信息安全與管理帶來了很多隱患。例如,用戶可能正在使用網(wǎng)吧里的機器將文件下載到他所持有的移動設(shè)備上,這時機器的安全維護是由網(wǎng)吧負責,但用戶并不能確定機器此時是否存在安全隱患,事實上很可能不像用戶所想象的那樣安全。特別是惡意攻擊者在一定條件下可以完全獲得用戶所使用的平臺的控制權(quán),甚至還有可能接觸到用戶實際使用的設(shè)備。因此,在大多數(shù)場合中用戶并不能夠確定所使用的設(shè)備的安全性,也不能確定某個具體時間間隔內(nèi)應用環(huán)境的安全性是否會有所改變。
針對以上問題,本文結(jié)合可信計算技術(shù)提出一種便攜式的遠程認證方案,把相關(guān)認證移植到終端設(shè)備中來解決遠程認證問題,并且引入USB Token在通用平臺環(huán)境下實現(xiàn)可信認證。這種方法不僅能夠重用現(xiàn)有的缺少認證機制的設(shè)備和應用程序,而且有效地避免了中間人的攻擊,保證了通訊安全。
1 USB Token體系架構(gòu)
傳統(tǒng)意義上的信任鏈的建立都是基于固化在主板之上的安全芯片TPM,這就使沒有該安全芯片的主機無法獲得面向終端安全的“可信計算”?,F(xiàn)有替代方案[1]大都采用智能卡配以廠商提供的接口庫替換TPM體系中的安全芯片和TSS部分,但這樣不能很好地提供對可信計算的支持,不利于將來設(shè)備的升級改造。在實踐中,智能卡及其讀寫設(shè)備、智能卡的接口庫都由廠商提供,安全性、保密性存在很大隱患,總體上很難達到可信平臺的標準。
Najwa Aaraj[2]等人通過測試基于軟件實現(xiàn)的仿真TPM運行時執(zhí)行效率與開銷,發(fā)現(xiàn)大多數(shù)TPM指令引起的開銷主要集中在RSA算法上,如果用TCG標準中規(guī)定的ECC算法代替RSA算法則可顯著降低開銷。因此,在資源受限的系統(tǒng)中可以通過使用SW-TPM來加強可信認證,所增加的系統(tǒng)開銷也是可以接受的。
1.1 方案原理
基于TPM的可信平臺主要考慮的是用戶、平臺、應用程序以及平臺之間的可信度,在可信架構(gòu)中提到的可信用戶也并不完全從用戶角度考慮,而是平臺安全中重要安全模型的一部分。便攜式認證方案與可信計算中的TPM方案最大的區(qū)別在于密鑰的綁定:TPM綁定在主機上;便攜式則綁定在USB Token 上。因為TPM芯片作為可信根比較適合與機器相關(guān)的密鑰保護,如存儲服務(wù)器端HTTPs或SSH協(xié)議中的密鑰等,在這種情況下密鑰與機器綁定,但是必須對主機平臺進行改造。而便攜式認證較適合私人密鑰保護,如客戶端HTTPs證書或客戶端SSH密鑰,這樣密鑰可以在不同機器間移動而且無需改動系統(tǒng)平臺。便攜式認證的關(guān)鍵就在于Token中隱藏的主密鑰,不允許持有者直接讀取該密鑰,但允許通過協(xié)議對Token進行挑戰(zhàn)應答。
1.2 基于SW-TPM的可信身份認證體系
SW-TPM實際上是一個含有密碼運算功能和存儲功能的軟件仿真,由于其中包含的各個部分在硬件實現(xiàn)上有其本身的復雜性,SW-TPM可以將其中的各個部分模塊化,再將各個模塊整合成整體,實現(xiàn)較為簡單,如圖1所示。本文通過把SW-TPM移植到USB Token中在沒有TPM芯片的通用平臺下實現(xiàn)了終端用戶的遠程認證,分離了平臺與用戶間的身份綁定。該USB Token以SW-TPM為軟件可信根,通過挑戰(zhàn)應答協(xié)議提供安全性更強的遠程驗證。
在新的平臺中,可信身份驗證由主機識別Token開始:主機可以檢測到當前用戶的USB Token是否存在,如果存在就會測量其中SW-TPM的Hash值并驗證它是否可信,因為SW-TPM是已知的并且可以確定它的Hash值。確認之后再由SW-TPM進行完整性測量以保證所發(fā)放的EK是否可信,只有通過以上雙向驗證后才能真正建立起Token與主機間的USB通道,隨后才能進行相關(guān)事務(wù)處理。
評論