陳春燕
摘要:計(jì)算機(jī)網(wǎng)絡(luò)遠(yuǎn)程證明是一個(gè)綜合完整性校驗(yàn)的身份識(shí)別的過(guò)程,同時(shí)向驗(yàn)證者提供了一份可信平臺(tái)狀態(tài)報(bào)告。本文設(shè)計(jì)的基于Merkle散列樹(shù)的遠(yuǎn)程證明方案可以確保計(jì)算設(shè)備主動(dòng)、周期性地向計(jì)算機(jī)網(wǎng)絡(luò)管理中心發(fā)送自己的平臺(tái)運(yùn)行狀態(tài),存儲(chǔ)容量開(kāi)銷(xiāo)和計(jì)算成本所需減少,從而減輕了計(jì)算機(jī)網(wǎng)絡(luò)管理中心的計(jì)算壓力。同時(shí),在完整性報(bào)告上綁定時(shí)間戳以確保認(rèn)證的新鮮性。
關(guān)鍵詞:計(jì)算機(jī)網(wǎng)絡(luò);遠(yuǎn)程證明;Merkle散列樹(shù);安全性
中圖分類(lèi)號(hào):TP393 文獻(xiàn)標(biāo)識(shí)碼:A 文章編號(hào):1009-3044(2016)32-0015-02
計(jì)算機(jī)網(wǎng)絡(luò)的遠(yuǎn)程證明往往依舊是通過(guò)經(jīng)典的“挑戰(zhàn)—響應(yīng)”協(xié)議模式來(lái)實(shí)現(xiàn)的[1]。對(duì)以計(jì)算機(jī)網(wǎng)絡(luò)的可信平臺(tái)進(jìn)行身份認(rèn)證,雖然需要個(gè)人隱私信息對(duì)來(lái)其身份進(jìn)行證明,但要盡量避免過(guò)多的暴露個(gè)人隱私。因此TCG(Trusted Computing Group,可信計(jì)算組織)規(guī)定不允許將EK用于身份認(rèn)證,而通過(guò)身份認(rèn)證密鑰AIK(Attestation Identity Key,證明標(biāo)識(shí)密鑰)作為EK的別名。TPM通過(guò)EK生成AIK,并利用隱私CA(Certification Authority,認(rèn)證機(jī)構(gòu))簽發(fā)的AIK證書(shū)對(duì)身份完成認(rèn)證[2]。證明者通過(guò)AIK對(duì)挑戰(zhàn)者選定的PCR寄存器值完成簽名操作后,附件中相關(guān)的度量日志表以及AIK證書(shū)同時(shí)傳輸給挑戰(zhàn)者。同時(shí),挑戰(zhàn)者對(duì)該證明值進(jìn)行分析驗(yàn)證。驗(yàn)證過(guò)程主要包含根據(jù)度量日志表對(duì)哈希值重新計(jì)算、對(duì)AIK證書(shū)進(jìn)行安全驗(yàn)證,以及對(duì)簽名值和期望值進(jìn)行相似度匹配三個(gè)子過(guò)程[3]。
從以上的描述可知,計(jì)算機(jī)網(wǎng)絡(luò)遠(yuǎn)程證明是一個(gè)綜合完整性校驗(yàn)及身份認(rèn)證過(guò)程,與此同時(shí),其向驗(yàn)證者提供了可信平臺(tái)狀態(tài)證明報(bào)告。在可信證明的過(guò)程中,證明方需要向驗(yàn)證者提供與可信性有關(guān)的可信證據(jù),可信證據(jù)主要包含證明方的操作行為以及證明方的完整性信息等內(nèi)容,而驗(yàn)證者在獲得以上可信證據(jù)后,需要將其與期望行為或者完整性信息完成對(duì)比過(guò)程,根據(jù)驗(yàn)證的結(jié)果對(duì)證明方是否具有可信性進(jìn)行判斷[4-5]。
本文針對(duì)計(jì)算機(jī)網(wǎng)絡(luò)遠(yuǎn)程證明過(guò)程的獨(dú)特性,本文以TCG計(jì)算機(jī)網(wǎng)絡(luò)系統(tǒng)為例,設(shè)計(jì)和實(shí)現(xiàn)了基于Merkle散列樹(shù)的遠(yuǎn)程證明方案,并對(duì)其安全性進(jìn)行分析驗(yàn)證。
1 TCG證明系統(tǒng)的基本框架和工作機(jī)制
為了解決TCG計(jì)算機(jī)網(wǎng)絡(luò)系統(tǒng)證明系統(tǒng)現(xiàn)存的缺陷,提高系統(tǒng)的靈活性,本文在AT和AS中間添加一個(gè)AP (Ap-Praiser,仲裁者),將原本的三元證明系統(tǒng)轉(zhuǎn)化為四元證明系統(tǒng)。轉(zhuǎn)化而成的四元證明系統(tǒng)主要有以下三種基本工作方式:
(1)“拉”式四元證明系統(tǒng)。該證明系統(tǒng)類(lèi)似與傳統(tǒng)的三元證明系統(tǒng),由于AS無(wú)法進(jìn)行安全驗(yàn)證,因此在此模型中不能完全保護(hù)AO的隱私信息。因此而產(chǎn)生的另一個(gè)弊端,即在證明系統(tǒng)的執(zhí)行過(guò)程中仲裁者變?yōu)樽C明的瓶頸,因?yàn)橹俨眠B接會(huì)干涉所有的證明過(guò)程[6]。
(2)“代理”式四元證明系統(tǒng)。該系統(tǒng)的基本流程是AS發(fā)送請(qǐng)求給AP,然后通過(guò)仲裁者與證明者進(jìn)行安全信息交互,將證明結(jié)果以證書(shū)的方式傳輸給AS。 “代理”式四元證明系統(tǒng)的優(yōu)點(diǎn)是:維護(hù)了AO的隱私性。 同時(shí),AS沒(méi)有必要具備對(duì)證據(jù)的真?zhèn)芜M(jìn)行判斷的能力以及對(duì)邏輯驗(yàn)證過(guò)程是否合理進(jìn)行判斷的能力。在此證明系統(tǒng)模型中,存在的瓶頸依然是仲裁者對(duì)證明過(guò)程的干預(yù)。
(3)“推”式四元證明系統(tǒng)。該證明系統(tǒng)的流程是AT將證明信息發(fā)送給AP時(shí)是以推的形式完成的。通過(guò)來(lái)自于AS的請(qǐng)求,AT將仲裁者生成的證書(shū)傳輸給AS?!巴啤笔剿脑C明系統(tǒng)具有如下優(yōu)勢(shì):AT不需要向AS體現(xiàn)AO的私密信息,從而對(duì)AO的私密性進(jìn)行有效保護(hù);AS沒(méi)有必要具備對(duì)證據(jù)的真?zhèn)芜M(jìn)行判斷的能力以及對(duì)邏輯驗(yàn)證過(guò)程是否合理進(jìn)行判斷的能力;同時(shí),仲裁者AP不再是遠(yuǎn)程證明的瓶頸[7]。
2 基于Merkle散列樹(shù)的遠(yuǎn)程證明方案
2.1基于Merkle散列樹(shù)的證明方案
本文設(shè)計(jì)的基于Merkle 散列樹(shù)的計(jì)算機(jī)網(wǎng)絡(luò)遠(yuǎn)程證明方案從以下三個(gè)方面出發(fā),對(duì)傳統(tǒng)的遠(yuǎn)程證明方案進(jìn)行了優(yōu)化改進(jìn)。
2.1.1新鮮度
在計(jì)算設(shè)備在需要發(fā)送的證明報(bào)告中引入時(shí)間戳,然后安全平臺(tái)完成對(duì)先后接收到的[TS1]和[TS2]值的比對(duì)分析過(guò)程,如果[TSN1=TSN2],則說(shuō)明設(shè)備未發(fā)生重啟操作;如果[t1 2.1.2完整度 Merkle散列樹(shù)的系統(tǒng)結(jié)構(gòu)本質(zhì)是滿(mǎn)二叉樹(shù),其分枝結(jié)點(diǎn)的取值依據(jù)是其左右孩子連接后的生成的哈希值。完成迭代運(yùn)算之后,其最終產(chǎn)生的根結(jié)點(diǎn)可以作為所有葉子結(jié)點(diǎn)的摘要。安全平臺(tái)期望接收到的證明結(jié)果是沒(méi)有通過(guò)其他節(jié)點(diǎn)進(jìn)行修改的,本遠(yuǎn)程證明方案主要利用散列鏈的方式保證該證明結(jié)果的完整度。 面臨具體的應(yīng)用需要,設(shè)備可能需要同時(shí)將完整性報(bào)告?zhèn)鬟f給多個(gè)設(shè)備管理平臺(tái),這時(shí)需要利用設(shè)備快速構(gòu)建Merkle散列樹(shù),然后通過(guò)對(duì)散列樹(shù)的根節(jié)點(diǎn)進(jìn)行簽名過(guò)程,同時(shí)對(duì)葉子節(jié)點(diǎn)進(jìn)行初始化,其值被設(shè)置為設(shè)備與各設(shè)備管理中心之間所構(gòu)成散列鏈的初始值。 1.3主動(dòng)性 本次計(jì)算機(jī)網(wǎng)絡(luò)遠(yuǎn)程證明所需的證明方案確定是通過(guò)在證明平臺(tái)中融入證明代理的概念來(lái)完成的。當(dāng)管理平臺(tái)第一次接收到來(lái)自設(shè)備的注冊(cè)請(qǐng)求數(shù)據(jù)時(shí),管理平臺(tái)對(duì)設(shè)備的TSN以及證書(shū)[CertCA(AIK)]進(jìn)行存儲(chǔ),同時(shí)將與證明方案有關(guān)的證明策略傳遞給AA。因此,基于Merkle散列樹(shù)的遠(yuǎn)程證明步驟如圖1所示。 Step1:Merkle散列樹(shù)的構(gòu)建,而且利用AIK執(zhí)行根節(jié)點(diǎn)[N0]的簽名操作; Step2:[CertCA(AIK),EncAIK{B0,A0,N0},SignAIK{N0,TSN,t0}]; Step3:將完整性證明報(bào)告策略傳遞給設(shè)備;
Step4:[SignAIK{PCR,H(B0||PCR),TS},SML];
Step5:首先對(duì)接收到的PCR寄存器值與第二步中接收到的[B0]值進(jìn)行散列計(jì)算,同時(shí)與證明過(guò)程中的簽名數(shù)據(jù)包含的散列值進(jìn)行對(duì)比,對(duì)PCR寄存器值的完整性進(jìn)行校驗(yàn);其次,將TSN中的滴答計(jì)數(shù)器值和第二步中的滴答計(jì)數(shù)器初始值[t0]進(jìn)行對(duì)比,以評(píng)價(jià)其新鮮性;最后利用PCR寄存器值對(duì)SML的一致性進(jìn)行檢驗(yàn)。
2.2 安全性分析
2.2.1數(shù)據(jù)完整性分析
本文設(shè)計(jì)的基于Merkle散列樹(shù)的計(jì)算機(jī)網(wǎng)絡(luò)遠(yuǎn)程證明方法利用Merkle散列樹(shù)的認(rèn)證過(guò)程對(duì)初始化隨機(jī)數(shù)值的完整性進(jìn)行保證。因?yàn)橐坏﹤鬟f的隨機(jī)數(shù)產(chǎn)生改變,那么將會(huì)影響最終的根節(jié)點(diǎn)結(jié)果值與公開(kāi)值的驗(yàn)證匹配過(guò)程,進(jìn)而影響整個(gè)證明過(guò)程和驗(yàn)證過(guò)程。于此同時(shí),散列函數(shù)的單向特性在一定程度上也可以對(duì)數(shù)據(jù)信息傳遞過(guò)程的完整性進(jìn)行維護(hù)。
2.2.2防抵賴(lài)性
Merkle散列樹(shù)的安全程度完全依賴(lài)于散列函數(shù)的安全程度。散列函數(shù)[y=F(x)]具備以下特性:通過(guò)特定的[x]值計(jì)算出結(jié)果[y]是相對(duì)比較容易的,反之,已知結(jié)果[y]值,希望計(jì)算出[x]值卻是完全無(wú)法實(shí)現(xiàn)的;而且不可能擁有兩個(gè)不同的[x]值[x1]和[x2],滿(mǎn)足條件[F(x1)=F(x2)]。即特定的[x]值與特定的[y]值必定一一對(duì)應(yīng)。綜上所述,一旦雙方通過(guò)散列函數(shù)進(jìn)行驗(yàn)證,而且成功,則可以保證數(shù)據(jù)是通過(guò)擁有正確的[x]值的請(qǐng)求者發(fā)出的。
2.2.3抗重放攻擊性
根據(jù)時(shí)間戳中包含的滴答計(jì)數(shù)器的數(shù)值、所有證明報(bào)告中的PCR寄存器值以及對(duì)上次證明報(bào)告結(jié)果的散列計(jì)算值能夠有效地避免重放攻擊的發(fā)生。由于散列函數(shù)配備的抗碰撞性等特點(diǎn)的緣故,一切對(duì)散列值執(zhí)行的插入操作或者其他相關(guān)操作,均可以導(dǎo)致檢驗(yàn)結(jié)果的改變,從而保證了計(jì)算機(jī)網(wǎng)絡(luò)遠(yuǎn)程證明過(guò)程的完整性。
3 結(jié)論
計(jì)算機(jī)網(wǎng)絡(luò)的遠(yuǎn)程證明是一個(gè)綜合完整性校驗(yàn)及身份認(rèn)證過(guò)程,與此同時(shí),其可以向驗(yàn)證者提供了可信平臺(tái)狀態(tài)證明報(bào)告。本文設(shè)計(jì)的基于Merkle散列樹(shù)的遠(yuǎn)程證明方案能夠保證運(yùn)行設(shè)備主動(dòng)地、周期性地將自身的運(yùn)行狀態(tài)發(fā)送給平臺(tái)管理中心,使得系統(tǒng)整體的存儲(chǔ)容量開(kāi)銷(xiāo)與計(jì)算成本相應(yīng)減少,進(jìn)而緩解了平臺(tái)管理中心的時(shí)間成本及計(jì)算壓力。同時(shí),將時(shí)間戳體現(xiàn)在完整性報(bào)告以確保認(rèn)證過(guò)程的數(shù)據(jù)新鮮性。
整體而言,本文設(shè)計(jì)的基于Merkle散列樹(shù)的計(jì)算機(jī)網(wǎng)絡(luò)遠(yuǎn)程證明方法可以保證計(jì)算機(jī)網(wǎng)絡(luò)的認(rèn)證和遠(yuǎn)程證明過(guò)程的安全性和完整性。
參考文獻(xiàn):
[1] W. Alasmary, W. Zhuang, Mobility impact in IEEE 802.11p infrastructureless vehicular networks[J], Ad Hoc Netw., 2012,10(2): 222-230.
[2] StumPf F,F(xiàn)uchs A,Katzenbeisser S,etal.Improving the sealability of Platform attestation.Proeeedings of the 3rd ACM workshop on Scalable Trusted Computing.Fairfax,VA,USA:ACM,2008:l-10.
[3] 徐國(guó)愚,常朝穩(wěn),黃堅(jiān),等.基于時(shí)間的平臺(tái)完整性證明[J].計(jì)算機(jī)工程,2009,35(6):153-155.
[4] 蔡永泉,劉芳.DMSS-動(dòng)態(tài)Merkle可信樹(shù)簽名方案.電子學(xué)報(bào)[J],2009,37(4A):97-101
[5] W. Shi,Y. Ma,Y.Chen,Z.Guo, Adaptive Neural Network Control for a Class of Nonlinear Discrete System[C].//International Conference on Natural Computation(ICNC 2012), Chongqing, China, IEEE,2012:302-306.
[6] Ehang C,He R,Xie H,etal. A high efficiency Protoeol for reporting integrity measurements·Proeeedings of the Eighth International Conference on Intelligent Systems Design and Applications.Kaohsiung:IEEE Press,2008:358-362.
[7] 邱罡,可信系統(tǒng)保護(hù)模型研究與設(shè)計(jì)[D],西安電子科技大學(xué),2010(9).