文獻標識碼: A
文章編號: 0258-7998(2014)08-0143-04
隨著世界經濟全球化的加劇和信息技術的不斷發展,移動終端逐漸成為人們日常生活中不可或缺一部分,而開放的互聯網絡環境增加了網絡對象間數據交互的復雜度和失信率,因此移動終端的相關安全問題顯得尤為重要。
目前,國內外對安全可信方面的研究已取得了一些的研究成果,但在移動終端可信方面的研究還比較滯后。在系統的可信度方面,參考文獻[1]為可用化評估準則DBench提出了一個高級體系構架,但沒有聯系具體的應用背景;參考文獻[2]從系統的可信性方面探討了軟件的體系結構;參考文獻[3]從軟件組件的角度來研究可信軟件體系結構,提出了基于組件的容錯軟件結構以滿足高可信應用的要求;參考文獻[4]則在COTS(Commercial Off-The-Shelf)軟件組件的基礎上通過一種有效的系統方法來構建可信系統。在共享數據硬件設計方面,參考文獻[5]設計了共享內存模型,實現多個處理器之間的高速數據傳輸,但該結構在處理器數目增多時會異常復雜;MPI的分布式內存結構雖然適合并行計算系統,但需專門設計數據通信層來處理數據傳輸,編程模型復雜[6]。因此,如何在高計算性能下實現對復雜網絡環境中移動終端的安全約束,是移動可信終端安全亟待解決的關鍵問題。
綜上分析,移動可信終端的研究還存在以下問題:(1)沒有一種有效的移動終端可信服務的描述規范以及可信服務驗證機制; (2)移動終端硬件層面的數據交互設計中,缺乏高速數據傳輸的數據可信框架,底層數據的可信性得不到保障。本文基于已有研究成果[7-8],提出了一種基于可信的移動終端安全數據交互方案,從底層的硬件設計和上層的接入認證方案兩個層面對移動終端進行了安全性設計。
1 移動可信終端結構
移動可信終端的設計分為兩部分:(1)著重于網絡應用服務的接入安全,使移動可信終端在復雜的網絡環境中能有效地鑒別可信域端口,實現自可信驗證與雙向可信驗證; (2)側重于底層可信度量,采用TPM為核心部件,在系統中提供完整性度量、安全存儲、可信報告以及密碼服務等功能,確保移動可信終端的自身可信。終端的結構如圖1所示。
2 移動可信終端上層設計
2.1可信框架
由于移動終端往往處于高度動態變化、不確定因素眾多的環境中,需要有效的網絡體系及其動態控制方法保證端到端的數據可信傳遞,使網絡具有較強的容錯性和穩定性。本文提出的可信框架針對性地描述了面向服務的端到端的可信服務層,保證數據服務在網絡傳輸中數據動作的規范性、安全性和穩定性,如圖2所示。
2.2 可信認證方案
可信認證方案中,假定移動終端的用戶持有終端使用權口令和移動網絡運營商頒發的全球用戶身份模塊(USIM),其支持對網絡的認證,并包含密碼運算和存儲用戶的數字證書以及敏感信息等功能。由于移動可信終端基于TPM模塊,所以在方案中還應包含有自己的私鑰、證書TPMCert、與生物采集設備BI(如指紋采集、瞳孔識別等)共享的密鑰Keyshare。MT是代表自行開發的移動平臺,NAT是網絡接入端口。可信認證方案步驟如圖3所示。
(1) USIM→MT:r1,USIMID,PR1
MT在接通電源時刻需要進行自身平臺完整性校驗。USIM模塊首先向MT發送隨機數r1、USIM的身份標識USIMID和平臺驗證請求PR1。
(2) MT→BI:r2,TPMID,PR2
MT在接收到USIM的平臺驗證請求后,通過I/O總線向BI發送隨機數,TPM的身份標識TPMID以及BI的驗證請求PR2。
(3) BI→MT:EACBI
EACBI=AC(E(Keyshare,r2),TPMID||BIHash) (1)
式中||為級聯符號。BI在收到PR2后,計算BI完整信息的Hash值BIHash,并利用Keyshare對收到的隨機數r2進行加密,最后通過式(1)計算BI認證碼EACBI,隨后BI通過總線將EACBI發還給MT進行驗證。
(4) MT→USIM:r3,TPMCert,TPMSig,ER
TPMSig=Sig(TPMSK,r1||r3||USIMID||PCR) (2)
MT收到EACBI,利用自身產生的隨機數r2結合預存的BIHash按照式(1)計算出校驗認證碼EACBI′。若EACBI≠EACBI′,則表明BI信息不完整,校驗終止;反之則繼續驗證。當BI信息驗證通過后,MT產生隨機數r3,并利用自己的私鑰TPMSK對自身的PCR值、操作事務記錄ER和r3按照式(2)進行簽名后,連同TPMCert一起發送給USIM。
(5) USIM→NAT:TS,r1,r3,TPMCertID, NAI, ER, TPMSig,
EACTPMID
EACTPMID=AC(KeyAU,TS||TPMCertID,||r1||r3||ER) (3)
USIM將證書TPMCert送入移動網絡接入端進行驗證,需要借助時間戳TS、TPMCertID和密鑰KeyAU來驗證整個移動終端平臺的合法性。若已經擁有驗證過的TPMCert,則直接校驗簽名TPMSig的合法性。如果簽名校驗失敗,則終止認證過程;反之則提示用戶輸入用戶口令,獲取權限來控制MT。
(6) NAT→TPMNAT:r1′,NATID,PR1′,EACNAT
NAT也需要進行自身平臺完整性校驗。首先計算完整信息的Hash值NATHash,將自身產生的隨機數r1′、NAT的身份標識NATID、平臺驗證請求PR1′和利用共享密鑰算出的EACNAT一同發給TPM進行平臺完整性驗證。其中EACNAT的計算方法與式(1)類似。
(7) TPMNAT→NAT:r1′,NATID,PR1′,EACNAT
TPMNAT利用式(1)算出EAC′NAT驗證是否與接收到的EACNAT相同。若不同,則表明網絡接入端平臺不可信,不允許接入;反之,則將賦予NAT權力對接入的移動終端進行證書驗證,并更新操作事務記錄ERNAT。
(8) NAT→USIM:EACNAT,AS
EACNAT=AC(KeyAU,r1||r3||AS||TPMID||TS) (4)
NAT獲得TPM驗證結果,若平臺驗證失敗,則發送結果至USIM,通知網絡接口不可接入;若驗證成功,則NAT根據收到的用戶身份網絡標識恢復出KeyAU,根據式(3)校驗EACTPMID的合法性。NAT利用TPMCertID獲取合法的TPMCert,并檢驗TPMSig,最后利用式(4)算出認證碼。其中AS包含的是NAT平臺自身、TPMSig以及TPMCert的驗證結果。
(9) USIM→MT
USIM端得到證書驗證結果,若驗證結果失敗,則同步驟(5),通過TPM校驗用戶的口令,獲取權限來控制接入網絡的MT。
3 移動可信終端底層設計
根據圖1的設計結構,底層采用可信TPM芯片,從移動終端加電到系統內核載入,可信根都會按照固定順序鏈式傳遞,過程的關鍵代碼都經過完整性驗證。同時利用DSP結合分布式內存儲存機制,提供了終端底層高性能數據訪問通道。基于TPM可信芯片的自定義內部總線的分布式存儲區結構如圖4所示。
DSP0為主控CPU,負責對移動可信平臺的可信啟動和檢測、外部設備的管理以及操作系統的加載運行。其他DSP為輔CPU,主要實現對移動通信的管理、外接SIM接口和其他功能。分布式存儲區及內部總線控制器都在FPGA中實現,各分布式存儲區之間的數據拷貝是透明的,減少了DSP用于數據傳輸的開銷。
(1)分布式存儲空間與訪問
設計中,FPGA負責各分布式存儲區存儲空間分配,劃分成16個4 KB的區間,分配給不同的DSP。DSP采用異步方式訪問其本地存儲區,可訪問不同速度的異步器件[6]。讀、寫訪問時序如圖5所示。
(2) 內部總線消息傳遞
內部總線提供16位地址總線、32位數據總線及2個控制信號,采用非復用的同步廣播方式的總線型拓撲結構,其傳輸規范如下:①總線主節點唯一對應DSP0,從節點對應輔DSP;②主節點提供總線控制信號,且基于同一內部時鐘的觸發,數據傳輸過程中不需涉及握手;③通過地址線來尋址數據發送方。地址高4位對應DSP的編號為數據發送方,其余為接收方。
(3)存儲區數據一致性
當內部總線數據傳輸執行時,為避免內部總線數據讀寫與DSP讀寫之間的沖突,采用圖6所示的存儲區一致性模型和同步策略。
4 實驗與分析
本文設計了移動可信終端的原型實驗平臺,圖7是SignalTapII在移動可信終端執行完可信啟動后捕獲到的內部總線傳輸波形部分截圖(采樣時鐘頻率為125 MHz,采樣深度是128)。圖中表明在多處理器并行的架構設計下,依然有較高的數據傳輸速率(10 M×32 b/s),在可信的基礎上保證了移動終端的數據交互,在一定程度上提高了移動終端的計算性能,可靠性高。
在可信認證方案方面,與TPM標準方案進行了對比,本方案在密碼運算量和處理效率兩個方面占有較大優勢,尤其是方案中的網絡接入端的自身可信驗證,讓移動可信終端對網絡接入端的默認可信轉向驗證可信,大大提高了移動終端的安全性。
本文提出的移動可信終端設計方案底層基于TPM芯片,建立高性能的消息傳遞機制和數據一致性模型;同時提出中間件層服務相隔離思想,設計了網絡可信認證方案,在一定程度上解決了移動終端的安全問題。同時,該方案也有不足之處,本存儲機制針對特殊應用,僅需進行靜態源和目的地址的數據傳輸, 擴展性有待提高。
參考文獻
[1] ZHU J, MAURO J, PRAMANICK I. R3-A framework foravailability benchmarking[C]. In: proc. Int. Conf. on Dep-endable Systems and Networks (DSN 2003), San Francisco,CA, USA,2003:86-87.
[2] SARIDAKIS T, ISSARNY V. Developing dependable sys-tems using software architecture[C]. Proc. 1st Working IFIPConference on Software Architecture, 1999:83-104.
[3] GUERRA P A D C, RUBIRA C, LEMOS R D. A fault-tolerant software architecture for component-based systems[C].Architecting Dependable Systems, LNCS,2003,2677:129-149.
[4] GUERRA P A D C, RUBIRA C M F,ROMANOVSKY A, etal. A dependable architecture for COTS-based software sys-tems using protective wrappers[C]. Architecting DependableSystems II, LNCS, 2004,3069:147-170,.
[5] Yan Luxin, Zhang Tianxu, Zhong Sheng. A DSP/FPGA-based parallel architecture for real-time image processing[C].Proc. of 6th World Congress on Control and Automation,Dalian, China, 2006:10022-10025.
[6] HURWITZ J G, Feng Wuchun. Analyzing MPI performanceover 10-gigabit ethernet[J]. Journal of Parallel and Distri-buted Computing, 2005,65(10):1253-1260.
[7] Gu Xin, Xu Zhengquan, Xiong Lizhi, et al. The securityanalysis of data re-encryption model in cloud services[C].Source: Proceedings-2013 International Conference on Com-putational and Information Sciences, ICCIS 2013,2013:98-101.
[8] Gu Xin, Xu Zhengquan, Wang Tao, et al.Trustedserviceapplication framework on mobile network[C]. Source: Pro-ceedings-IEEE 9th International Conference on UbiquitousIntelligence and Computing and IEEE 9th InternationalConference on Autonomic and Trusted Computing,UIC-ATC2012, 2012:979-984.